¿Cuáles son las diferencias entre / usr / bin / login y / usr / bin / bash?

3

Terminal.app tiene una configuración para seleccionar con el shell que usa, y la configuración predeterminada es "Shell de inicio de sesión predeterminado (/ usr / bin / login)".
¿Cuáles son las diferencias entre / usr / bin / login y / usr / bin / bash?

    
pregunta kiamlaluno 13.02.2011 - 21:36

2 respuestas

3

Griffo es correcto. Ahora en su escenario, la diferencia se reduce a lo siguiente:

  1. si selecciona /bin/login , este programa verificará en la base de datos de usuario cuál es su shell predeterminado y ejecutará ese shell como shell de inicio de sesión, invocando así los archivos rc que se ejecutan solo cuando el shell se ejecuta como inicio de sesión shell (en caso de bash son /etc/profile , ~/.bash_profile , ~/.bash_login and y ~/.profile .
  2. si selecciona /bin/bash , ese shell se ejecutará como un shell de inicio de sesión, independientemente de qué shell esté configurado en la base de datos del usuario. Esto puede ser útil cuando el shell en la base de datos del usuario no funciona correctamente, o si desea poder usar shells diferentes.

Según el comentario de Chris Page , el shell se ejecuta como shell de inicio de sesión en ambos casos .

Si no ha cambiado su shell de inicio de sesión por defecto, que es /bin/bash , y no ha cambiado los archivos rc de esta shell, la diferencia no se notará.

    
respondido por el simonair 15.02.2011 - 14:19
1

/usr/bin/login es un programa que se utiliza para iniciar sesión en el sistema y no es algo que invoque manualmente en circunstancias normales. Eche un vistazo a las páginas de información / manual emitiendo uno de los siguientes comandos:

info login o man login

/usr/bin/bash es un shell y su trabajo es interpretar las entradas del usuario e invocar programas. También puedes ver más información sobre bash usando los comandos a continuación:

info bash o man bash

    
respondido por el conorgriffin 13.02.2011 - 21:43

Lea otras preguntas en las etiquetas