Linuxで大容量ファイルを削除する方法

Linuxで大容量ファイルを削除する方法

lsof | grep deletedコマンドの使用中に、次の結果が表示される問題に直面しました。

sendmail  11633  smmsp    3uW     REG                8,7    329818112    8119977 /var/spool/clientmqueue/dft4CCv1K5011633 (deleted)
tcpdump   11759   pcap    4w      REG                8,7 446113333248   41846283 /var/kalsym/logs/CAPTimedOUT_monitor/capAbort_2015-05-12_17-57-01.pcap (deleted)

その後、この手順に従った。

cd /proc/11759/fd
> /proc/11759/fd/4

しかし、それ以降は/varサイズへの影響は観察されなかった。私はこの問題についてオンラインでたくさん検索し、すべての可能な方法を試しましたが、成功しませんでした。この問題を解決する方法を提案してください。

答え1

ディスク容量を解放するには、プロセスを終了する必要があります。。将来的には、次のようにファイルを切り捨てることができます。

    echo "" > file_name

実行中のプロセスでファイルを使用している場合は、ファイルを削除する代わりに

答え2

cat /dev/null > /proc/PID/fd/4

答え3

これにより、ファイルの内容も消去されます。

cp /dev/null filename

関連情報