¿Cómo se usa un shell que no sea bash en una terminal como predeterminado?

14

Cuando cae al terminal via Applications -> Terminalo Ctrl+ Alt+ F1etc., bash se usa por defecto para interpretar sus comandos. Si desea utilizar otro intérprete de comandos (como zsh o fish), ¿cómo consigue que esto comience de forma predeterminada?

Antonio
fuente

Respuestas:

18

Si desea cambiar su shell como usuario, escriba:

chsh -s /path/to/your/shell

o simplemente

chsh

Tendrá que ingresar su contraseña y su shell de inicio de sesión se configurará como el que eligió. Solo puede seleccionar un shell que aparece en la lista /etc/shells.

qbi
fuente
2
Creo que esta es la mejor manera de ir con el usuario actualmente conectado. Tampoco requiere derechos de administrador para su uso.
Antony
9

Cambia tu shell predeterminado. Hay una forma de línea de comandos para hacer esto:

$ sudo usermod -s /path/to/newshell username

pero podría ser más fácil hacerlo desde la configuración de la GUI.

Sistema -> Administración -> Usuarios y grupos -> [seleccionar usuario] -> Configuración avanzada -> Avanzado

luego elija el shell de la lista desplegable.

Si el shell que desea no está en esa lista, probablemente no esté instalado.

Tendrá que cerrar sesión y volver a iniciarla para que esto surta efecto. Puede verificar qué shell está ejecutando en una nueva terminal ejecutando "ps".

Si tiene mucha curiosidad, el shell predeterminado se almacena en / etc / passwd (que realmente no tiene contraseñas a pesar del nombre).

Dave Jennings
fuente
1
Para alguien con derechos de administrador, esto es genial. He elegido dar la respuesta a qbi por ahora, ya que no requiere derechos de administrador.
Antony