GNU/Linux >> Tutoriales Linux >  >> Linux

¿Dónde está configurada la variable de entorno $HOME?

En Linux, el HOME la variable de entorno la establece el programa de inicio de sesión:

  • por login en la consola, telnet y login sesiones
  • por sshd para conexiones SSH
  • por gdm , kdm o xdm para sesiones gráficas.

El programa de inicio de sesión lo organiza antes de llamar a exec en su shell (incluyéndolo en los argumentos de exec), según el valor en /etc/passwd.


Edite esto ejecutando:usermod -d /home/whatever_dir whatever_user .

Tenga en cuenta que este será (obviamente) el nuevo directorio de inicio. Bash cd a él al iniciar sesión, así que asegúrese de que exista y que los permisos sean correctos. Además, no te olvides de .bashrc , .profile , .xinitrc , etc; si no están en el directorio de inicio, no se leerán.

Desde usermod :

Usage: usermod [options] LOGIN

Options:
  -c, --comment COMMENT         new value of the GECOS field
  -d, --home HOME_DIR           new home directory for the user account
  -e, --expiredate EXPIRE_DATE  set account expiration date to EXPIRE_DATE
  -f, --inactive INACTIVE       set password inactive after expiration
                                to INACTIVE
  -g, --gid GROUP               force use GROUP as new primary group
  -G, --groups GROUPS           new list of supplementary GROUPS
  -a, --append                  append the user to the supplemental GROUPS
                                mentioned by the -G option without removing
                                him/her from other groups
  -h, --help                    display this help message and exit
  -l, --login NEW_LOGIN         new value of the login name
  -L, --lock                    lock the user account
  -m, --move-home               move contents of the home directory to the
                                new location (use only with -d)
  -o, --non-unique              allow using duplicate (non-unique) UID
  -p, --password PASSWORD       use encrypted password for the new password
  -R, --root CHROOT_DIR         directory to chroot into
  -s, --shell SHELL             new login shell for the user account
  -u, --uid UID                 new UID for the user account
  -U, --unlock                  unlock the user account

Linux
  1. ¿Cómo establecer una variable de entorno de usuario? (permanentemente, no sesión)?

  2. ¿Cómo establecer una variable de entorno en la línea de comandos y hacer que aparezca en los comandos?

  3. ¿Cómo configurar el usuario de Php-fpm para que sea Php-user en lugar de Www-data?

  4. Establecer variable de entorno con espacio en Linux

  5. Variable de entorno TERM no establecida

Cómo establecer la variable de entorno en Windows

Cómo establecer variables de entorno en MacOS

Cómo establecer la variable de entorno en Bash

Linux:¿dónde se almacena la cadena de entorno real?

¿Dónde se deben establecer las variables de entorno para Jenkins?

¿Cuál es la mejor manera de establecer una variable de entorno en .bashrc?