我删除了 /home/username/ 中的所有文件和文件夹(包括隐藏文件),现在麻烦大了

我删除了 /home/username/ 中的所有文件和文件夹(包括隐藏文件),现在麻烦大了

我登录到远程 ubuntu 服务器,不小心删除了/home/username/当前用户的整个目录。只剩下一个名为 的隐藏目录.gvfs。我不需要 Documents/Music/etc 中的任何内容。

现在它不允许我进入该/var/www/目录,该目录具有权限 666 并且由当前用户拥有。

我害怕断开 ssh 会话,因为我不知道是否能够重新连接。我是否永久地造成了问题?有没有办法将最重要的文件替换到 /home/username/ 目录中?

谢谢!

** 编辑 **

感谢大家的帮助。我认为问题cd实际上/var/www/是我在目录中的权限/var/www/。它被设置为 666,将其更改为 755,一切又恢复正常。删除用户文件夹的内容似乎没有破坏任何系统性的东西。

答案1

即使用户主目录中的文件全部被删除,系统本身仍应完全可用。您使用 cd 转到 时肯定不会遇到任何问题/var/www

但是目录需要具有执行权限,用户才能遍历它们。您说的/var/www666,其中不包含任何执行位,因此听起来您遇到了另一个问题。尝试:sudo chmod 755 /var/www设置/var/www回合理的权限。

您可能还会发现将内容复制/etc/skel到已删除所有内容的主目录中很有用。如果这样做,请确保您复制的文件最终具有该用户的所有者和组。这是在您创建新用户时完成的,并为新用户提供一组合理的默认值。

您还说您以该用户身份通过​​ ssh 登录。为了确保您可以再次这样做,您需要恢复~/.ssh具有权限的目录700,并确保其中~/.ssh/authorized_keys包含您的公钥。您可以在注销原始 ssh 会话之前使用不同的 ssh 会话进行测试。

答案2

如果您使用密码登录 ssh,则无需担心 ssh 会话。但是,如果您不使用密码(即使用 ssh 密钥)登录,那么现在要恢复的最重要的文件是允许您 ssh 访问的文件。为此,您需要找到文件的内容

〜/.ssh/id_rsa.pub

在你的当地的计算机,并将其放入文件中

〜/.ssh /授权密钥

在你的偏僻的电脑。

在另一个终端窗口中使用第二个同时的 ssh 会话来查看您是否仍然可以登录。

答案3

尝试按Ctrl+ Alt+T启动终端

接下来,输入

nautilus

运行文件管理器并尝试恢复

如果这不起作用,您可以尝试在 nautilus 中手动添加所需的文件夹(如果允许),或者在终端中使用命令mkdir创建一个主文件夹,然后创建一个与您的用户名相同的文件夹,以便您可以访问~或者/家/用户名那么您需要创建:

  • 桌面
  • 文件
  • 下载
  • 音乐
  • 图片
  • 民众
  • 视频

希望这能让你重新开始

我没有尝试过,可能没用

答案4

你可以尝试http://extundelete.sourceforge.net/看看您是否能够恢复目录和文件。如果可能,请确保在尝试恢复旧文件之前没有向磁盘写入任何内容。

相关内容