¿Es posible redefinir el directorio de inicio? por ejemplo a /ext1/username
en lugar de /home/username
, es decir, expandir el ~
a otro directorio (en lugar de cambiar el directorio de inicio real donde se encuentran los archivos de inicio de los usuarios).
(Esta pregunta es principalmente académica, ya que parece una mala práctica hacerlo. Tampoco tengo otra opción en el asunto de usar csh
, a pesar de haber leído el Top 10.)
Respuesta aceptada:
La tilde ~
es interpretado por su caparazón. Su shell interpretará ~
como una forma abreviada de $HOME
.
Prueba (echo ~; HOME=foo; echo ~)
. Esto debería imprimir primero su directorio de inicio real y luego "foo", mientras configura $HOME
a eso.
El valor predeterminado de $HOME
proviene de la configuración de su sistema. Utilice getent passwd
para enumerar todos los usuarios conocidos y sus directorios de inicio. Dependiendo de la configuración de su sistema, esas entradas pueden provenir de /etc/passwd
o cualquier servicio de directorio remoto.
Si solo desea redefinir temporalmente su directorio de inicio, configure otro $HOME
.
Si desea cambiarlo permanentemente, debe cambiar la entrada de contraseña, p. editando manualmente /etc/passwd
.