由于 /home perms,EC2 ubuntu 实例被锁定

Fix*_*xee 4 ubuntu amazon-ec2 file-permissions

我向我的孩子们展示了一些关于 EC2 ubuntu 实例上目录权限的基本知识,并且这样做了

$ sudo chmod 700 /home
Run Code Online (Sandbox Code Playgroud)

然后证明我无法再cd访问我的主目录,因为权限被拒绝。

然后我无意中断开了与 EC2 实例的连接。现在我无法重新登录,因为 ubuntu 端的 sshd 无法访问我的/home/ubuntu/.ssh/authorized_keys文件。我试图考虑解决方法,但我没有想法。

我准备删除并重新创建整个实例,但如果可能的话,我宁愿挽救这个实例。有任何想法吗?!

Fix*_*xee 5

遵循蒂姆的建议:

我单击Launch Instance以创建一个新实例。我只是使用列出的第一个 AMI(某些 Amazon 版本的 Linux)并使用默认值创建它,使用我手头已有的密钥对。

然后我点击Volumes并从我的软管机器上分离 EBS 卷。这花了大约 30 秒。然后我选择Attach Volume并将它作为/dev/sdf. 然后我ssh进入了新实例。

在我输入的新实例中

$ sudo mkdir /caribou
$ sudo mount /dev/sdf1 /caribou
$ cd /caribou
$ sudo chmod 755 home
Run Code Online (Sandbox Code Playgroud)

这修复了/home目录权限。

然后我返回到 EC2 控制台,将 EBS 卷与 Amazon 实例分离,并将其重新附加到我的原始 Ubuntu 实例中作为/dev/sda1. 然后我启动了旧实例并登录,一切都修复了。

花了 30 分钟,包括时间来弄清楚上述所有内容。感谢蒂姆。

  • 感谢您花时间发布您如何修复它,而不是继续前进。 (2认同)