lunes, 23 de noviembre de 2015

¿Cómo se establece el entorno?

Cuando nos identificamos en el sistema, el programa bash arranca, y lee una serie de scripts de configuración llamados archivos de arranque (startup files), que definen el entorno por defecto compartido para todos los usuarios. A continuación se leen más archivos de arranque en tu directorio home que definen tu entorno personal. La secuencia exacta depende del tipo de sesión de shell que se inicie. Hay dos tipos: sesión de shell con login y sesión de shell sin login.

Una sesión de shell con login es aquella en la que nos preguntan nuestro nombre de usuario y contraseña; por ejemplo, cuando arrancamos una sesión de consola virtual. Un sesión de shell sin login es la que típicamente se da cuando arrancamos una sesión de terminal en la GUI.

Los shell con login leen uno o más archivos de arranque como se muestra en la Tabla 11-2:

Tabla 11-2: Archivos de arranque para sesiones de shell con login
Archivo Contenidos
/etc/profile Un script de configuración global que se aplica a todos los usuarios.
~/.bash_profile Un archivo de arranque personal del usuario. Puede utilizarse para extender o anular configuraciones del script de configuración global.
~/.bash_login Si ~/.bash_profile no se encuentra, bash intenta leer este script.
~/.profile Si no se encuentran ni ~/.bash_profile ni ~/.bash_login, bash intenta leer este archivo. Este es el que viene por defecto en las distribuciones basadas en Debian, como Ubuntu.

Las sesiones de shell sin login leen los siguientes archivos de arranque:

Tabla 11-3: Archivos de arranque para sesiones de shell sin login
Archivo Contenidos
/etc/bash.bashrc Un script de configuración global que se aplica a todos los usuarios.
~/.bashrc Un archivo de arranque personal del usuario. Puede usarse para extender o anular las configuraciones del script de configuración global.

Además de leer los anteriores archivos de arranque, los shells sin login también heredan el entorno de sus procesos padre, normalmente un shell con login.

Echa un vistazo a tu sistema y mira cuales de estos archivos de arranque tienes. Recuerda, como la mayoría de los archivos listados anteriormente empiezan con un punto (que significa que están ocultos), necesitarás usar la opción “-a” cuando uses ls.

El archivo ~/.bashrc es probablemente el archivo de arranque más importante desde el punto de vista de un usuario normal, ya que casi siempre se lee. Los shell sin login lo leen por defecto y la mayoría de archivos de arranque para los shell con login se escriben de forma que también lean el archivo ~/.bashrc.

No hay comentarios:

Publicar un comentario