![用户目录所有权在 Google Cloud (gcp) 上具有 UID,从而可能导致 ssh 问题](https://linux22.com/image/731667/%E7%94%A8%E6%88%B7%E7%9B%AE%E5%BD%95%E6%89%80%E6%9C%89%E6%9D%83%E5%9C%A8%20Google%20Cloud%20(gcp)%20%E4%B8%8A%E5%85%B7%E6%9C%89%20UID%EF%BC%8C%E4%BB%8E%E8%80%8C%E5%8F%AF%E8%83%BD%E5%AF%BC%E8%87%B4%20ssh%20%E9%97%AE%E9%A2%98.png)
有些用户登录我的 GCP 计算实例(使用贫民窟部署设置)时遇到了问题。当我尝试以用户“pi”身份登录时,出现以下错误:
Permission denied (publicly.gssapi-keyex,gssapi-with-mic).
Error: (cloud.compute.ssh) [usr/bin/ssh] exited with return code [255].
当我以另一个用户身份登录时,我转到 /home 目录并执行ls -lh
并看到类似以下操作:
drwx------. 4 10005 10005 126 Dec 27 16:16 pi
drwx------. 4 ter ter 4.0k Jan 7 12:34 ter
ter 帐户登录没有问题。pi 帐户出现权限被拒绝的问题。pi 的 UID 是 10005。我上周能够毫无问题地登录,但我不知道文件夹所有权是否也出现了同样的问题。其他用户也遇到了同样的 ssh 问题,他们的主文件夹中显示的也是他们的 UID 而不是用户名。如果我su pi
可以成为 pi,但我无法访问 pi 主目录。如果我更改 pi 文件夹的所有权/组,我可以访问 pi 主文件夹,但我仍然无法 ssh 进入。
我该如何解决这个问题?
答案1
问题是由于该用户的 UIDpi
实际上不是 10005(正如您所认为的那样)造成的。
您可以在 中找到它的实际 UID,/etc/passwd
并在 中找到它的实际 GID /etc/group
。
但你可以通过以下方式解决问题递归地修复其主目录及其所包含的所有文件的用户和组所有权,例如使用chown
。例如:
chown -R pi.$(id -gn pi) /home/pi