目录

Linux-Not-enough-free-space-to-extract-.zip-or-file

目录

[Linux] Not enough free space to extract *.zip or file

原因分析:

导致该错误的主要原因是,虽然你的主分区确实有足够的可用空间,但很多图形解压工具在解压时会默认先把文件写到一个较小的临时文件系统( tmpfs ),比如这里只显示 1.6 GB。ZIP 文件在解压过程中会产生比压缩包本身更大的临时数据,一旦超出 1.6 GB 的限制,就会报“空间不足”的错误,即使主分区空间还很充裕也无济于事。

原因简要:

  1. 图形解压工具使用小容量的 tmpfs 做临时目录
    • tmpfs 一般是驻留在内存或交换空间中,容量相对较小。
  2. ZIP 解压时需要更多的临时空间
    • 解压时,文件会先解到临时目录,最后再写到目标路径。
    • 若解压后文件总大小超过临时目录容量,就会出现“空间不足”的错误。

解决方法:

  1. 使用命令行解压

    • 例如

    • unzip par.zip -d /目标目录

      这样会直接把解压后的文件放到指定目录,跳过小容量的 tmpfs

设置自定义临时目录

  • 有些图形解压软件可以在“设置”或“偏好”中指定临时目录。

  • 或者在命令行里先设置 TMPDIR 环境变量,再启动图形解压程序

  • export TMPDIR="/主分区上更大的目录"
    file-roller par.zip

    file-roller 是 GNOME 的图形解压工具,你可以根据自己的软件更换命令

3. 增大 tmpfs 容量 (一般不推荐,除非你非常确定自己的内存/交换空间够用)

sudo mount -o remount,size=8G /tmp
    • 但要谨慎使用,可能会导致系统内存占用过多。

如果只是想顺利解压,最简单的方法就是使用命令行的 unzip 命令直接解压到磁盘上的某个文件夹,不再依赖小容量的临时文件系统。