我登录到远程 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/www
是666
,其中不包含任何执行位,因此听起来您遇到了另一个问题。尝试: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/看看您是否能够恢复目录和文件。如果可能,请确保在尝试恢复旧文件之前没有向磁盘写入任何内容。