GNU/Linux >> Znalost Linux >  >> Linux

Kde je nastavena proměnná prostředí $HOME?

V systému Linux HOME proměnná prostředí je nastavena přihlašovacím programem:

  • od login na konzoli, telnet a rlogin relace
  • do sshd pro připojení SSH
  • od gdm , kdm nebo xdm pro grafické relace.

Přihlašovací program to zařídí před voláním exec na vašem shellu (zahrnutím do argumentů exec) na základě hodnoty v /etc/passwd.


Upravte to spuštěním:usermod -d /home/whatever_dir whatever_user .

Upozorňujeme, že toto bude (samozřejmě) nový domovský adresář. Bash bude cd k němu při přihlášení, takže se ujistěte, že existuje a že jsou správná oprávnění. Kromě toho nezapomeňte na .bashrc , .profile , .xinitrc , atd; pokud nejsou v domovském adresáři, nebudou přečteny.

Od 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. Jak zjistit, odkud se vzala proměnná prostředí?

  2. Jak nastavit proměnnou prostředí na příkazovém řádku a nechat ji zobrazit v příkazech?

  3. Jak nastavit uživatele Php-fpm, aby byl uživatelem Php namísto Www-dat?

  1. Jak změnit proměnnou PATH v Linuxu

  2. Nastavit proměnnou prostředí s prostorem v Linuxu

  3. Proměnná prostředí TERM není nastavena

  1. Jak nastavit proměnnou uživatelského prostředí? (trvale, ne relace)?

  2. Úplný pohled na to, kde je v Bash nastavena proměnná cesty?

  3. Spouštění crontab nemá stejné proměnné prostředí jako spouštějící uživatel