linux - 如何在 Linux 中显示哪个进程拥有磁盘空间

标签 linux file handle space disk

我运行了这些命令来确定我的 Linux 系统上的磁盘空间使用情况。

已用文件系统大小 Avail Use% Mounted on/dev/mapper/foovg-foo 326G 202G 108G 66%/export/data/foo

du -sk * | awk '{sum += $1}END{print sum}' 132161064 ~ 126GB

所以,202G - 126G = 76G 的差异。

76G磁盘空间在哪里? 如何找出哪个进程持有文件句柄?
删除的文件名是什么?

在Linux中,/proc/pid/fd/下的文件描述符是指向实际文件的软链接(soft link)。

最佳答案

无论是否是原因,您都可以使用 lsof 查看哪些进程正在保留已删除的文件。这样的事情可能会有所帮助:

lsof | grep '(deleted)$' | sort -rnk 7

换句话说,抓取所有已删除的文件并按大小降序排列。

关于linux - 如何在 Linux 中显示哪个进程拥有磁盘空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10655164/

相关文章:

linux - 使用 sed 用 0's (zero' s 填充空白)

linux - 在 bash 中使用 awk 变量

file - Applescript 将文件复制到新文件夹

c - fscanf 从文本文件读取二维 double 组时出现问题

haskell - Haskell中的句柄是半封闭错误?

multithreading - 处理 std::thread c++ 中的泄漏

c - 注释/标识符是否会影响代码性能/可操作性?

linux - Bash:将多个并发命令的标准输出拆分为列

python - 使用 django 表单处理图像

perl - perl read() 函数和不是 ref 的缓冲区背后的魔法是什么?