我不小心执行了 rm -rf /* (不是 root)。我可以/应该解决什么问题?

我不小心执行了 rm -rf /* (不是 root)。我可以/应该解决什么问题?

我在 makefile 中拼错了一个变量名并rm -rf srcs/*变成了rm -rf /*.繁荣。我的主目录已被清除,但这不是数据恢复问题。我实际上丢失的唯一个人文件是我正在处理的 makefile;我所有的文档、图片等都备份在别处。

但是,我没有任何完整的系统备份,因此虽然我不担心丢失个人数据,但我担心我的系统可能受到损坏。因此有两个问题:

  1. 如果我rm -rf /*在没有 root 权限的情况下执行,系统上的任何目录是否可能会被损坏/home/me/

  2. 在我可以再次正常使用我的主目录之前,我需要对它做些什么吗?例如,我应该手动添加 a.bash_history或其他内容/home/me吗?

顺便说一句,我正在使用 Arch Linux 和 LXDE 桌面。

答案1

您实际上不需要做任何事情,事情将为运行该rm -rf.用户无法删除自己的目录/home(除非您有一些非常奇怪的权限/home)。

你家里的一切都是选修的。是的,您的编辑器需要重新配置。是的,LXDE 需要重新配置。是的,还需要再次配置其他一些东西,但它们都会起作用。

您可能删除的唯一额外内容(如果您使用它的话)是您的电子邮件/var/spool/mail/


额外说明

默认情况下,Arch 仅有的内容/etc/skel是:

$ find /etc/skel/
/etc/skel/
/etc/skel/.bash_profile
/etc/skel/.bashrc
/etc/skel/.bash_logout
/etc/skel/.screenrc

如果您自己没有,明智的做法是将它们复制到您的家中。

重新启动以重新创建会话权限、DBUS 和pulseaudio cookie(大多数 LXDE 安装将使用这些)也是明智之举。理论上,注销显示管理器然后重新登录应该足够了,但我看到显示管理器在注销时不会破坏所有用户进程(XDM),因此重新启动会更安全。

答案2

可能不会。我在 Arch 上不确定,但对于 Fedora/RHEL,我会重新运行useradd并强制 UID/GID 匹配。或者只是复制/etc/skel/home/me修复权限。

相关内容