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é?
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 zsh
name__, bash
Apache
ou evil_overlord's_program
ne seront pas affectés
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.
Ouvrez votre terminal et utilisez la commande suivante:
chsh -s $(which bash)
Sous Mac OS Catalina
Changer en zsh:
chsh -s /bin/zsh
Changer en bash:
chsh -s /bin/bash