在 Linux 中“安全删除大文件”通常指 既能释放磁盘空间,又不会误删、不会损坏系统、必要时可恢复或避免数据泄露。下面按场景给你一套实用做法。
du -h /path/to/bigfile
ls -lh /path/to/bigfile
大文件常被进程占用,直接删可能:
查看谁在用:
lsof | grep bigfile
# 或
fuser -v /path/to/bigfile
rm -i /path/to/bigfile
-i:交互确认⚠️ 不要:
rm -rf /
rm -rf *
df -h # 空间没释放
lsof | grep deleted
systemctl restart service_name
kill -HUP pid
✅ 不要强行删 deleted 文件
: > /path/to/bigfile
# 或
truncate -s 0 /path/to/bigfile
适合:
alias rm='rm -i'
mkdir -p /tmp/trash
mv bigfile /tmp/trash/
观察几天再清:
rm -rf /tmp/trash
如果文件含敏感数据:
shred -u -z /path/to/bigfile
-u:删除-z:最后填零⚠️ SSD / 某些文件系统效果有限
rsync -a --delete empty_dir/ big_dir/
比 rm -rf 更可控,不易卡死
-i 或先 mv如果你愿意,可以告诉我:
我可以给你更精确的命令。