在 Debian(以及大多数 Linux 系统)中,没有“回收站”级别的原生保护,rm 删除文件通常是不可逆的。但可以通过预防为主、补救为辅的方式来防止误删除。下面按实用程度给你一套完整方案。
trash-cli 代替 rm(强烈建议)把“删除”变成“放进回收站”,和 Windows / macOS 一样。
sudo apt update
sudo apt install trash-cli
trash 文件或目录
示例:
trash test.txt
trash dir/
trash-restore
trash-empty
✅ 这是防止误删除最有效的方法
rm 加“保险”:alias 防误删rm 删除前询问编辑 ~/.bashrc 或 ~/.zshrc:
alias rm='rm -i'
生效:
source ~/.bashrc
效果:
rm test.txt
rm: remove regular file 'test.txt'?
⚠️ 缺点:批量删除时很烦
rm -rf /(进阶)alias rm='rm --preserve-root'
Debian 默认已启用,但防止被覆盖。
rm 前先确认路径(习惯)pwd
ls 目标目录
rm -rf 目录/
❌ 高危操作
rm -rf *
rm -rf / home/user/test
rsync -aAXv /data/ /backup/data/
crontab -e
0 3 * * * rsync -aAXv /data/ /backup/data/
whoami
✅ 建议:
sudosudo chattr +i 重要文件
删除时会失败:
rm: cannot remove '重要文件': Operation not permitted
解除:
sudo chattr -i 重要文件
✅ 适合:配置文件、关键脚本
⚠️ 成功率不保证
sudo umount /分区
sudo apt install testdisk
sudo testdisk
或:
sudo apt install extundelete
⚠️ 仅适用于 ext3/ext4,且删除后未写入新数据
✅ 日常使用
trash-clirm 当“危险命令”看待✅ 服务器
chattr +iDebian 防止误删除 = trash-cli + 不滥用 root + 备份
如果你愿意,我可以: