it-swarm.dev

Jak nastavit ZSH jako výchozí shell?

Snažím se nastavit ZSH jako můj výchozí Shell, ale stále se vrací zpět na bash.

Vyzkoušel jsem tento kód:

Sudo chsh -s $(which zsh)

Zkusil jsem také:

Sudo chsh -s /bin/zsh 

Tyto příkazy také vyzkoušel bez Sudo. Nějaké nápady, co dalšího musím udělat. Při spuštění ZSH z bashu se načte a funguje dobře, ale rád bych jej nastavil jako výchozí Shell.

153
Tom

Stačí použít chsh :

chsh -s $(which zsh)

bez Sudo by mělo fungovat. Pokud použijete Sudo, nezmění Shell nikoliv pro vašeho pracovního uživatele, ale pro root

Nakonec se odhlaste z počítače a přihlaste se zpět .

Odstraňování problémů:

252
Florian Diesch

Našel jsem to na superuser fóru

Otevřít/etc/passwd:

Sudo vi /etc/passwd

Vyhledejte řádek s vaším uživatelským jménem:

username:x:1634231:100:Your Name:/home/username:/bin/bash

a nahraďte bash zsh:

username:x:1634231:100:Your Name:/home/username:/bin/zsh

Odhlaste se a přihlaste se zpět, aby se změny projevily.

46

Můžete také:

otevřete soubor bashrc ve vašem oblíbeném editoru

Sudo nano ~/.bashrc

pak přidejte řádek pod horní část souboru

exec zsh

Spustí příkaz při každém načtení terminálu a spuštění vašeho zsh Shell.

8
Saddam H

Pokud zsh není/bin/zsh, pak chsh nebude fungovat. Na Ubuntu je to/usr/bin/zsh. takže by mělo fungovat chsh -s /usr/bin/zsh nebo chsh -s `which zsh`. Také je třeba se znovu přihlásit k relaci na ploše.

3
jbp

Měl jsem problém s oprávněním ke změně prostředí pod aktuálním uživatelem, ale další mi pomáhá (měli byste nastavit správnou složku 'zsh' pro váš počítač):

Sudo chsh -s /bin/zsh <myUserName>
1
Rib47

Zadejte terminál

Sudo chsh -s $(which zsh) root
0

Podivné, „přijatá“ odpověď pro mě nefungovala, když jsem se dostal

chsh: PAM: Authentication failure

Chcete-li tento problém vyřešit, upravte svůj/etc/passwd a ujistěte se, že odkazuje na umístění zsh. (Můžete to najít spuštěním slova „zsh“) V mém případě můj uživatel s názvem „webmaster“ vypadal takto:

webmaster:x:1001:1001:webmaster,,,:/var/www/webmaster:/usr/bin/zsh
0
John Crawford

Stejně jako chsh (nebo editace/etc/passwd, který dělá totéž), možná budete muset upravit nastavení v emulátoru terminálu (terminál Gnome, Konsole, xfce4-terminál atd.). Váš profil bude pravděpodobně obsahovat přihlašovací prostředí, které se spustí, když otevřete novou kartu místo prostředí v prostředí/etc/passwd.
V Konqueroru je to Settings | Edit Current Profile | Command.

0
andrew lorien