De forma predeterminada, xterm
inicia un shell interactivo. Pero también puedes configurarlo para iniciar un interactivo.shell de inicio de sesión.
Eso significa que al iniciar un xterm
obtienes el mismo tipo de shell que al iniciar sesión a través de ssh/virtual console/su.
¿Cuáles son las ventajas/desventajas de configurar unshell de inicio de sesiónen xterm?
Puedo pensar en:
uptime
,w
,last
etc. informan tantos usuarios comoxterm
están abiertos. (¿ventaja?)bash
sólo fuentes.login
,.profile
cuando/etc/profile.d
se inició comoshell de inicio de sesiónzsh
tiene archivos similares que lee cuando se inicia comoshell de inicio de sesión- pero en mi sistema están vacíos por defecto
Sección de página de manual relacionada xterm
:
-ls This option indicates that the shell that is started in the xterm window will be a login shell (i.e., the first character of argv[0] will be a dash, indicating to the shell that it should read the user's .login or .profile).
También hay un recurso:
loginShell (class LoginShell) Specifies whether or not the shell to be run in the window should be started as a login shell. The default is “false.”
Respuesta1
La ejecución de un shell de inicio de sesión en la terminal ejecutará cualquier programa que coloque en su .profile
, incluso si espera que ese programa se ejecute solo una vez por sesión (por ejemplo, ssh-agent
y otros conjuntos de claves). La ejecución de un shell de inicio de sesión sobrescribirá las variables de entorno que haya configurado en su sesión o en el proceso principal del terminal.
El mayor problema que experimentan las personas que ejecutan un shell de inicio de sesión en terminales es que generalmente no configuran sus variables de entorno cuando inician sesión en la GUI. El inconveniente de esto es que las variables de entorno sólo están disponibles en programas iniciados desde una terminal, no en programas iniciados directamente a través de la GUI. Si configura sus variables de entorno al momento de iniciar sesión, configurarlas nuevamente en cada terminal es, en el mejor de los casos, inútil y, a veces, un problema, como se vio arriba.
Ver tambiénDiferencia entre .bashrc y .bash_profile,Alternativa a .bashrcy bastantes preguntas que he visto en Stack Exchange que se habrían evitado si el autor de la pregunta hubiera establecido variables de entorno por sesión.