Ubuntu Recycle怎样防止文件被误删
导读:Ubuntu 回收站防误删的实用方案 一 命令行安全删除与回收站机制 安装并使用 trash-cli,让删除默认进入回收站而非直接删除: 安装:sudo apt-get install trash-cli 常用命令: 删除到回收站:t...
Ubuntu 回收站防误删的实用方案
一 命令行安全删除与回收站机制
- 安装并使用 trash-cli,让删除默认进入回收站而非直接删除:
- 安装:
sudo apt-get install trash-cli - 常用命令:
- 删除到回收站:
trash < file> - 列出回收站:
trash-list - 恢复文件:
trash-restore - 清空回收站:
trash-empty - 直接删除回收站内某文件:
trash-rm < file>
- 删除到回收站:
- 回收站位置:已删除文件通常位于 ~/.local/share/Trash/files(可用
ls ~/.local/share/Trash/files查看)。
- 安装:
- 将
rm替换为回收站操作(谨慎在生产环境使用别名覆盖):- 在
~/.bashrc中添加:alias rm='trash-put',然后执行source ~/.bashrc生效。 - 如需对
sudo rm也生效,可额外定义:alias sudorm='sudo trash-put'(注意sudo下别名不一定继承,需确保 PATH 与别名可用)。
- 在
二 加固删除操作与权限控制
- 删除前二次确认:使用
rm -i < file>或trash-put -i < file>(若 trash-cli 版本支持交互确认),降低误删概率。 - 限制危险删除:安装 safe-rm,配置黑名单(如
/,/usr,/boot,/etc等),即便使用rm -rf也无法删除受保护路径:- 安装:
sudo apt-get install safe-rm - 配置示例:编辑
/etc/safe-rm.conf,加入需要保护的目录,每行一个路径。
- 安装:
- 权限最小化:对关键目录设置只读或受限权限(如
chmod 755 < dir>、chown < user> :< group> < dir>),减少非授权删除的可能性。
三 主动监控与告警
- 监控已删除但被进程占用的文件:使用 lsof 检查“deleted”状态的文件,及时定位异常删除或句柄泄漏:
- 命令:
lsof | grep deleted
- 命令:
- 对关键目录设置删除事件告警:使用 inotifywait 实时监听
DELETE事件并触发通知或阻断脚本:- 示例:
inotifywait -m /path/to/dir -e delete | while read path action file; do echo "Deleted: $file"; done - 可扩展为写入日志、发送企业微信/钉钉告警、甚至执行自动阻断策略。
- 示例:
四 备份与应急恢复
- 定期备份关键数据:使用 rsync 做增量或周期备份,确保误删后可快速回滚:
- 示例:
rsync -av --delete /data /backup/data
- 示例:
- 文件系统级恢复:若已发生误删且分区仍可访问,尽快卸载或挂载为只读,使用 extundelete 尝试恢复:
- 步骤:
- 确认分区:
df -h < deleted-file-dir> - 只读挂载:
sudo mount -o remount,ro /dev/sdXN - 恢复:
sudo extundelete /dev/sdXN --restore-directory < path>
- 确认分区:
- 注意:恢复前避免在该分区写入新数据,成功率与覆盖情况密切相关。
- 步骤:
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu Recycle怎样防止文件被误删
本文地址: https://pptw.com/jishu/765879.html
