GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo cambiar (permanentemente) el Shell predeterminado después de iniciar sesión en Ttyn específico en Linux?

Sé que el chsh El comando se usa para cambiar el shell de inicio de sesión de un usuario entre los shells instalados, pero funciona independientemente de dónde proviene el inicio de sesión (tty1, tty2, ssh, …). Lo que me gustaría lograr es tener, p. csh en inicios de sesión desde tty7 y, p. bash en todas las demás fuentes de inicio de sesión.

¿Es esto factible en absoluto?

Respuesta aceptada:

No y sí.

No, el shell de inicio de sesión está vinculado al usuario, no al TTY donde el usuario inicia sesión. Un usuario solo puede tener un shell de inicio de sesión específico.

Sí, el usuario puede, en los archivos de inicialización del shell de inicio de sesión, iniciar cualquier otro programa o utilidad dependiendo de cualquier condición.

Por ejemplo, un usuario con bash ya que su shell de inicio de sesión actual podría agregar algo como lo siguiente a su .bash_profile archivo para ejecutar csh al iniciar sesión en la terminal virtual 7:

case $(tty) in
    */tty7) exec csh -l ;;
esac

exec csh -l reemplazaría el shell actual con csh , comenzó como un shell de inicio de sesión.


Linux
  1. Cómo cambiar el directorio predeterminado de Apache 'DocumentRoot' en Linux

  2. Cómo cambiar Shell en Linux

  3. CentOS / RHEL:cómo cambiar el shell de inicio de sesión del usuario

  4. UNIX/Linux:cómo obligar al usuario a cambiar su contraseña en el próximo inicio de sesión después de restablecer la contraseña

  5. ¿Cómo configurar permanentemente $PATH en Linux/Unix?

Cómo deshabilitar el inicio de sesión SSH para un usuario específico en Linux

Cómo cambiar el shell predeterminado en el sistema Linux

Cómo cambiar un Shell de usuario en Linux

Cómo cambiar de usuario en Linux

Cómo cambiar la dirección IP en Linux

¿Qué es Login Shell en Linux?