rm -rf /*这个是灾难性的命令:
1、如果是容器的话,记得备份创建镜像或磁盘快照,然后还原
2、如果没有备份的话,做了了RAID5的话也可以恢复
3、如果删除了其他的文件,可通过以下文件修复工具来找回被删的文件
ext4magic:ext3 和 ext4 文件系统设计的数据恢复工具,
TestDisk:强大的开源数据恢复软件。
PhotoRec:同样由TestDisk的开发者开发,适用于恢复特定类型的文件。
Extundelete:专门用于ext3/ext4文件系统的恢复工具。
那么怎么预防呢
以下是一些方法可以帮助防止误用 rm -rf /* 这个命令:
别名(Alias)设置:在 ~/.bashrc 或 /etc/bash.bashrc 中添加以下行:
alias rm='rm -i'
这会使 rm 命令默认进入交互模式,要求用户确认每次删除操作。
使用 safe-rm:安装 safe-rm 工具,它会阻止删除关键系统目录:
sudo apt install safe-rm # 在 Debian/Ubuntu 系统上 alias rm='safe-rm'
创建自定义 rm 函数:在 ~/.bashrc 中添加:
rm() {
if [ "$1" = "-rf" ] && [ "$2" = "/" ]; then
echo "Error: Attempt to remove root directory prevented."
return 1
fi
command rm "$@"
} 使用 chattr 命令:为关键系统文件添加不可变属性:
sudo chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow
限制 root 权限:尽量使用普通用户账户,必要时才使用 sudo。
使用 SELinux 或 AppArmor:这些安全模块可以限制特定程序的操作权限。
使用 trash-cli:安装 trash-cli 并创建别名,使删除的文件进入回收站而不是直接删除:
alias rm='trash-put'
定期备份:保持良好的备份习惯,以防意外发生。
教育和培训:确保所有系统用户都了解 rm -rf /* 的危险性。
使用文件系统快照:如 LVM 快照或 ZFS 快照,可以快速恢复误删的文件。
脚本安全检查:在重要的系统脚本中添加安全检查,防止意外的全局删除操作。
这些方法可以大大降低误用 rm -rf /* 的风险,但仍然需要谨慎操作,特别是在使用 root 权限时。最重要的是培养良好的操作习惯和保持定期备份。
网友回复
webgl与webgpu有啥不同?
Zero Trust的Tunnels怎么设置泛域名解析及http服务获取当前访问域名?
Spec Coding(规范驱动编码)和 Vibe Coding(氛围编程)有啥区别?
如何在国内服务器上正常运行未备案的域名网站?
Cloudflared 和WARP Connector有啥不同?
有没有让本地开源大模型越狱的方法或插件啥的?
如何使用Zero Trust的Tunnels技术将局域网电脑web服务可以公网访问呢?
编程领域ai大模型的排名是怎么样的?
如何修改别人发给我的微信笔记内容?
fbx、obj、glb三维格式模型如何在浏览器中通过three相互转换格式?


