web-dev-qa-db-ja.com

GCE-SSHを使用するか、ターミナルからログインする場合、異なるユーザー名ですか?

何も入っていない新しいプロジェクトを作成しました。

最初のマイクロインスタンスを作成したとき、次のことを行いました

  1. ブラウザウィンドウのSSHを使用して接続します。そうですか:

    ser_name @ instance-1:〜$

  2. Gcloudコマンドを使用して接続した場合:

    gcloud compute --project "projectname-165421" ssh --zone "us-east1-b" "instance-1"

    私はに連れて行かれます:

    sername @ instance-1:〜$

なぜこれが起こっているのですか、そしてどうすればそれを解決できますか?

これは2人の別々のユーザーを作成していて、私にとって大きな混乱を引き起こしています!

ありがとうございました

12
jason m

デフォルトでは、cloudSDKはコマンドを実行しているユーザーを使用して接続を試みます。

docs を見ると、デフォルトのsshクライアントでユーザー名を指定できると書かれています。

コンピュータでの意味:

gcloud compute --project "projectname-165421" ssh --zone "us-east1-b" "user_name@instance-1"

または、ブラウザウィンドウSSHでユーザーを切り替えます。

Sudo su username
13
Amir Rahwane

このコマンドを使用して、MacOSで修正します。

LOGNAME=ubuntu gcloud compute ssh app1
0
cao7113

いくつかのコメントへの回答:yes、デフォルトのユーザー名を変更できます。これは、環境変数$ USERの下に保存されます。ローカルターミナルで実行すると、この変数の現在の値を表示できます。

echo $USER

以下を実行することにより、この変数の値を希望のデフォルトユーザーに設定できます(bash/zshのいずれかを使用していると仮定)。

export USER=the_new_default_user

たとえば、新しく必要なデフォルトユーザーが「pablo」の場合、次のようになります。

export USER=pablo

これで、インスタンスでsshを実行するために次のコマンドを実行するたびに、pabloにsshを実行します。

gcloud compute ssh MY_INSTANCE

これがお役に立てば幸いです。

0