我已经安装了适用于Google Cloud的Cloud SDK . 我使用auth登录,将我重定向到gmail-login . 创建了SSH密钥,甚至使用Filezilla由SFTP登录 .
问题是,当我使用gmail身份验证登录时,SDK shell(或putty?)会将我登录到非管理员帐户 . 它创建了另一个SSH用户帐户(在我的电脑之后命名为'Acer')并将其登录到其中 . 因此,FTP从 /home/Acer
文件夹开始 . 我想访问 /home/admin/web
文件夹,但我现在没有 .
如何为管理员帐户创建SSH密钥,以便我可以访问上述文件夹?否则,是否可以授予'Acer'访问所有文件夹的权限?
1 回答
我有一些建议 .
先是一点背景知识 . 如果在家庭工作站上运行此命令:
您将在家庭工作站上为每个用户发现一个gcloud配置文件夹 . 你可能会看到这样的事情:
如果您将目录更改为
/home/Acer/.config/gcloud/configurations
,则'll see a file named ' config_default '. This file will contain the default account to use for that user (' Acer') .因为您已经作为该用户执行了
gcloud auth login
,并且在该过程中选择了您的gmail帐户,它将在该用户的配置文件中包含该gmail ID /帐户 . 如果您希望名为'admin'的用户登录您的项目,您可以尝试将名为'admin'的用户添加到您的家庭工作站,然后在尝试使用gcloud auth login
之前,确保您将家庭工作站上的用户切换为用户'admin' . 这将在您的家庭工作站上为用户admin生成gcloud配置,并传播SSH密钥等 .如果你想手动创建ssh密钥,那么有一些有用的信息here .
(对于它的 Value ,如果您决定使用
gcloud compute ssh
登录到实例主工作站,则可以在要登录的命令中指定用户 . 例如gcloud compute ssh admin@INSTANCE_NAME
) .即使您以不同的用户身份登录计算机(在本例中为'Acer'),如果先前存在该文件夹
/home/admin/web
,该文件夹仍应存在 . 如果您登陆文件夹/home/Acer
,您是否尝试将目录更改为上面的文件夹,然后列出文件夹以查看/home/admin/
是否存在?例如,从
/home/Acer
运行:然后
你应该能够看到
/home/admin/
.是的,这也是可能的 . 如果您以项目所有者的身份访问实例(最简单的方法是以项目所有者身份登录控制台并使用控制台中的SSH功能访问实例) . 现在您可以运行此命令:
这将使目录
/home/admin/web
的用户'Acer'所有者及其下的所有文件/目录(由于-R开关) .现在,当您下次以用户'Acer'访问实例时,您将能够通过运行以下命令来访问
/home/admin/web
,并且您还具有读/写功能: