web-dev-qa-db-fra.com

changer de shell de zsh à bash

Mon serveur Web a été falsifié par quelqu'un qui utilisait zsh Shell. Je me sens plus à l'aise avec bash Shell, car ce sont les paramètres par défaut fournis avec Ubuntu et OS X (les deux principaux systèmes d'exploitation que j'utilise). Mais cette question est centrée sur le serveur Ubuntu. J'ai 4 sites web qui tournent sur ce serveur web, j’utilise byobu, j’utilise tmux, j’utilise Ruby/Ruby on Rails, node.js, Apache, quelques démons. Si je change le shell racine actuel de zsh à bash, cela pourrait-il avoir des effets secondaires négatifs? Par exemple, les processus seront-ils tués parce que leur processus parent (le shell) a été basculé?

13
JohnMerlino

Changer votre shell via Sudo chsh --Shell=/bin/bash $USER changera le champ Shell dans /etc/passwd. Cette valeur n'est consultée qu'au moment de la connexion, lorsque le système n'a aucune idée du shell à utiliser pour vous.

Les processus en cours, qu'ils soient démarrés par zshname__, bashApacheou evil_overlord's_program ne seront pas affectés

9
waltinator

Réponse du débordement de pile ( passage de zsh à bash ):

Vous pouvez simplement utiliser exec pour remplacer votre Shell actuel par un nouveau:

Basculer vers bash:

exec bash

Basculer vers zsh:

exec zsh

Cela n'affectera pas les nouvelles fenêtres du terminal ou quoi que ce soit, mais c'est pratique.

24
Swap

Ouvrez votre terminal et utilisez la commande suivante:

chsh -s $(which bash)
8
rɑːdʒɑ

Sous Mac OS Catalina

  1. Changer en zsh:

    chsh -s /bin/zsh
    
  2. Changer en bash:

    chsh -s /bin/bash
    
0
Mono