Linux inicia un shell de inicio de sesión cuando un usuario inicia sesión en su cuenta. Entonces, ¿qué son los shells de inicio de sesión y cómo saber si está usando uno o no?
Puede usar el shell de Linux todos los días, pero la forma en que lo usa determina mucho sobre su comportamiento. Es posible que haya oído hablar de la diferencia entre un shell de inicio de sesión y un shell sin inicio de sesión. Y si bien puede no parecer obvio al principio, existen varias diferencias entre los dos tipos de shell.
Aquí encontrará todo lo que necesita saber sobre los shells de inicio de sesión en Linux.
¿Qué es un shell de inicio de sesión?
Un shell de inicio de sesión es solo eso: un shell que se inicia cuando inicia sesión directamente en la máquina Linux. Cuando inicia sesión en su sistema desde una consola virtual o a través de SSH, el shell que se inicia es un shell de inicio de sesión.
Por otro lado, si inicia una ventana de terminal, esa sesión de shell generalmente no es un shell de inicio de sesión. Lo mismo ocurre cuando inicia un subshell escribiendo el nombre del shell en la línea de comando. Este shell es solo un shell interactivo.
La principal diferencia entre los dos está en el comportamiento del caparazón. El shell a menudo solo lee ciertos archivos al inicio. Bash lee el /etc/perfilEntonces el .bash_perfil, .bash_loginy archivos .profile solo en su directorio de inicio si se llama como shell de inicio de sesión.
¿Cómo sabe si está utilizando un shell de inicio de sesión?
Es fácil ver si está utilizando un shell de inicio de sesión o no. Si inició su shell desde la aplicación de la terminal de escritorio, probablemente no lo sea, a menos que se encuentre en un entorno de terminal diferente, como WSL o la terminal macOS.
Con este comando puede verificar si está ejecutando un shell de inicio de sesión;
echo $0
Si está utilizando un shell de inicio de sesión, verá el nombre del shell precedido por un guión (–). Si no, solo verá el nombre del shell.
Configuración de su shell de inicio de sesión en Linux
Use el comando chsh para configurar su shell de inicio de sesión. Puede configurar su shell de inicio de sesión en la ruta absoluta de cualquier shell enumerado en /etc/conchas.
Para iniciar un shell como shell de inicio de sesión, generalmente puede usar una opción de línea de comando. Por ejemplo, para iniciar Bash como shell de inicio de sesión:
bash
Si está utilizando un escritorio Linux, a menudo puede especificar qué comando se ejecuta cuando abre una ventana de terminal. Si desea que su shell funcione como un shell de inicio de sesión, puede poner esa opción allí.
Ahora ya sabe acerca de los shells de inicio de sesión
Ahora debería comprender qué son los shells de inicio de sesión. Lanzar su shell, directamente desde la consola o desde una ventana de terminal, determinará cómo se comportará.
Si es nuevo en Linux, es posible que se pregunte qué shell es mejor. Puede seguir con el Bash predeterminado, o puede explorar las características especiales que ofrecen los shells alternativos como Fish o Zsh.