我有一些建议。
首先介绍一下背景。如果您在家庭工作站上运行此命令:
sudo find / -iname gcloud
您会在家庭工作站上为每个用户找到一个 gcloud 配置文件夹。您可能会看到如下内容:
/root/.config/gcloud
/home/Acer/.config/gcloud
如果您将目录更改为/home/Acer/.config/gcloud/configurations,您将看到一个名为“config_default”的文件。该文件将包含该用户使用的默认帐户(“Acer”)。
因为您以该用户的身份执行了gcloud auth login,并且在该过程中选择了您的 gmail 帐户,所以它将在该用户的配置文件中包含该 gmail ID/帐户。如果您希望名为“admin”的用户登录到您的项目,您可以尝试将名为“admin”的用户添加到您的家庭工作站,然后在尝试使用 gcloud auth login 之前,确保您将家庭工作站上的用户切换到用户“管理员”。这将在您的家庭工作站上为用户管理员生成 gcloud 配置,并传播 SSH 密钥等。
如果您想手动创建 ssh 密钥,这里有一些有用的信息 here。
(不管怎样,如果您决定使用gcloud compute ssh 登录您的实例主工作站,您可以在命令中指定您要登录的用户。例如gcloud compute ssh admin@INSTANCE_NAME)。
我想要访问 /home/admin/web 文件夹,但我现在没有。
即使您以其他用户身份(在本例中为“Acer”)登录计算机,如果之前存在文件夹/home/admin/web,它仍应存在于实例上。如果您登陆文件夹/home/Acer,您是否尝试将目录更改为上面的文件夹,然后列出文件夹以查看/home/admin/ 是否存在?
例如,从/home/Acer运行:
$ cd ..
然后
$ ls
你应该可以看到/home/admin/。
否则,是否可以授予“Acer”访问权限
所有文件夹?
是的,这也是可能的。如果您以项目所有者身份访问实例(最简单的方法是以项目所有者身份登录控制台并使用控制台中的 SSH 功能访问实例)。现在你可以运行这个命令了:
$ sudo chown Acer.Acer -R /home/admin/web
这将使用户 'Acer' 成为目录 /home/admin/web 及其下所有文件/目录的所有者(感谢 -R 开关)。
现在,当您下次以用户“Acer”访问实例时,您将能够通过运行以下命令访问 /home/admin/web,并且您还将拥有读/写功能:
$ cd /home/admin/web