Verwenden Sie `chsh` auf der GCP-VM, um von Bash zu Zshell zu wechseln, das Standardkennwort ist unbekannt

Verwenden Sie `chsh` auf der GCP-VM, um von Bash zu Zshell zu wechseln, das Standardkennwort ist unbekannt

Ich versuche, die Standard-Shell auf einer GCP-VM zu ändern, habe aber Probleme mit chsh. Es scheint, dass ich Root-Zugriff habe, da ich ausführen kann sudo apt upgrade.

Ich habe auch zshell installiert:

user_name@instance_name:~$ which zsh
/usr/bin/zsh

Aber beim Versuch, die Shell zu ändern, erhalte ich Folgendes:

user_name@instance_name:~$ chsh -s $(which zsh)
Password:

Und ich habe keine Ahnung, wie das Passwort lautet. Ich habe versucht, einfach zu drücken, RETaber es kam:

user_name@instance_name:~$ chsh -s $(which zsh)
Password:
chsh: PAM: Authentication failure

Und ich bin mir nicht sicher, was ich tun soll. Die Ausgabe $USER(falls sie von Nutzen ist) ist die folgende:

user_name@instance_name:~$ echo $USER
user_name

Die Instanz wurde mit dem folgenden Befehl erstellt:

gcloud compute instances create $INSTANCE_NAME \
        --zone=$ZONE \
        --image-family=$IMAGE_FAMILY \
        --image-project=deeplearning-platform-release \
        --maintenance-policy=TERMINATE \
        --accelerator="type=nvidia-tesla-p100,count=1" \
        --machine-type=$INSTANCE_TYPE \
        --boot-disk-size=200GB \
        --metadata="install-nvidia-driver=True" \
        --preemptible

Wenn es noch weitere Informationen gibt, die ich weitergeben sollte, lassen Sie es mich bitte wissen.

Antwort1

Die GCP-VM hat also kein Standardkennwort und Sie sollten es zuerst festlegen. Dazu können Sie Folgendes tun:

sudo passwd <user>

Nachdem Sie das Passwort festgelegt haben, können Sie nun die Standard-Shell auf zsh festlegen, indem Sie Folgendes tun:

chsh -s $(which zsh) <user>

Geben Sie das neue Passwort ein und die Standard-Shell sollte geändert werden.

verwandte Informationen