如何删除根目录中没有空闲空间的"dead.letter"文件

sam*_*rth 6 unix linux filesystems email root

  1. 今天我注意到dead.letter文件是在我的一个EC2实例的根目录中创建的.
  2. 经过一番查询,我发现这是因为一些不完整或终止的电子邮件功能而创建的.
  3. 它的大小为6 GiB,并且在根目录中没有留下任何空闲空间.
  4. 我删除了文件仍然我的根目录显示没有可用空间.

知道如何删除此文件并释放根空间吗?

fge*_*fge 7

如果您已删除它并且仍未释放空间,则表示进程已在其上打开文件句柄.

尝试使用,例如:找到进程的PID:

for process in /proc/[0-9]*; do
    for fd in $process/fd/*; do
        file=$(readlink -f $fd)
        if [ "$file" = "/root/dead.letter" ]; then
            echo $process
        fi
    done
done
Run Code Online (Sandbox Code Playgroud)

然后杀死他们/他们.


Nil*_*ann 5

你知道lsof( http://linux.die.net/man/8/lsof ) 吗?

在这种情况下:

sudo lsof /root/dead.letter
Run Code Online (Sandbox Code Playgroud)

这会打印出有关打开文件的进程的信息。您仍然必须终止该进程。