forrtl:设备上没有剩余空间

时间:2017-11-19 06:20:23

标签: linux shell

我的模拟因forrtl: No space left on device错误而停止。

当我使用ls --sort=size -alh时,它会报告总计96M和最多60M的使用情况。
当我使用du -h时,它将报告总计159G和最大158G(对于同一文件夹)
当我使用df -h时,它会报告:

Filesystem                     Size  Used Avail Use% Mounted on

/dev/nvme0n1p4 930G 883G 0 100% /

最初,我认为有大量隐藏文件占用空间。我试图删除隐藏文件,如here所述。 但是,我得到了相同的结果。我想知道如何找到耗费空间的物品来删除/删除它们。

1 个答案:

答案 0 :(得分:1)

您可以使用ncdu查找更容易使用大部分空间的目录,例如,试试这个:

ncdu -x /

选项-x将保留在同一文件系统中(不要遍历其他文件系统挂载)

还可能发生的事情是,某些应用程序/流程仍在运行但是没有“免费”#34;文件,这是因为文件系统中的文件描述符保持打开状态,在这种情况下,您可以使用:

lsof  | grep deleted

有时,如果文件在进程打开时被删除,则在进程结束之前,它实际上不会释放磁盘空间。

在此答案中有关此内容的更多信息:https://unix.stackexchange.com/a/68532/53084

如果您不能使用ncdu,可以使用find命令查找当前目录中大于4096字节的文件:

find . -type f -size +4096c

有关其他选项的更多信息,请访问:https://superuser.com/a/204571/284722