Google compute engine GCE-如果使用SSH或从终端登录,则使用不同的用户名?
我创建了一个没有任何内容的新项目 当我创建我的第一个微实例时,我做了以下工作Google compute engine GCE-如果使用SSH或从终端登录,则使用不同的用户名?,google-compute-engine,Google Compute Engine,我创建了一个没有任何内容的新项目 当我创建我的第一个微实例时,我做了以下工作 使用浏览器窗口SSH连接到它。 我明白了: 用户_name@instance-1:~$ 如果我使用gcloud命令连接: gcloud compute--项目“projectname-165421”ssh--区域“us-east1-b”“实例-1” 我被带到: username@instance-1:~$ 为什么会发生这种情况,我该如何解决 这是在创建两个独立的用户,这给我带来了很大的困惑 谢谢默认情况下,cloudS
谢谢默认情况下,cloudSDK将尝试使用运行该命令的用户进行连接 如果你看看, 它说,您可以使用默认的ssh客户端像指定用户名一样指定用户名 在您的计算机上的含义:
gcloud compute --project "projectname-165421" ssh --zone "us-east1-b" "user_name@instance-1"
或者,在浏览器窗口SSH中切换用户:
sudo su username
在回答一些评论时:是,您可以更改默认用户名。这存储在环境变量$USER下。通过在本地终端中运行,可以查看此变量的当前值:
echo $USER
通过运行以下命令(假设您使用的是任何bash/zsh),可以将此变量的值设置为所需的默认用户:
例如,如果新的所需默认用户是“pablo”,则:
现在,每次在实例中对ssh运行以下命令时,都将ssh到pablo中:
gcloud compute ssh MY_INSTANCE
我希望这有帮助 我使用此命令在MacOS上修复它:
LOGNAME=ubuntu gcloud compute ssh app1
有没有办法设置默认用户
gcloud
connects with?@AntonTarasenko我正在寻找这个问题的答案。我认为在我的gcloud配置中设置我的帐户可以帮我做到这一点。不幸的是,我仍然需要设置我的用户_name@instance连接时。
gcloud compute ssh MY_INSTANCE
LOGNAME=ubuntu gcloud compute ssh app1