我们很高兴使用safe-rm
它来替代rm
,但为其添加别名是否安全?
例如
alias rm='safe-rm'
答案1
是的,别名只是 shell 独有的重命名。别名的作用域仅限于您当前所在的 shell。safe-rm
只是一个包装器,它会进行一些黑名单检查以修剪参数列表,它仍然rm
在后台调用(它还会rm
显式调用/bin/rm
,因此别名不会影响脚本)
但是,它并不安全,因为它无法rm
通过取消设置别名或显式调用来阻止用户显式使用/bin/rm
。 safe-rm 仅用于防止意外,而不是安全功能,这是权限的用途。如果您确实想这样做,您仍然可以轻松删除列入黑名单的文件。
答案2
这是额外的提示
为了避免错误rm -rf
,请不要输入rm -rf
。
- 如果有必要,请更改为要删除的目录的父目录。
mv directory-to-delete DELETE
- 探索
DELETE
并检查这确实是你想要删除的内容 rm -rf DELETE
永远不要rm -rf
使用 以外的参数来调用DELETE
。分几个阶段进行删除可以让您有机会验证您是否删除了错误的内容,无论是由于拼写错误(例如,rm -rf /foo /bar
而不是rm -rf /foo/bar
)还是由于一个想法(哎呀,不,我的意思是删除foo.old
并保留foo.new
)。
如果您的问题在于您无法信任其他人不输入rm -rf
,请考虑删除他们的管理员权限。 可能出错的情况比 还多rm
。
让我来谈谈你问的问题
此工具安全保证,附带一个默认的系统范围配置文件(/etc/safe-rm.conf),但每个用户都可以通过在 ~/.safe-rm 中添加行来补充“受保护”目录和文件的列表。
当您确定要删除的内容时使用\rm
,但大多数时候,我更喜欢确认。太多文件因仓促删除而消失。