Unter Linux der HOME
Umgebungsvariable wird vom Anmeldeprogramm gesetzt:
- bis
login
auf der Konsole telnet und rlogin Sitzungen - durch
sshd
für SSH-Verbindungen - durch
gdm
,kdm
oderxdm
für grafische Sitzungen.
Das Anmeldeprogramm arrangiert es, bevor es exec auf Ihrer Shell aufruft (indem es es in die Argumente von exec aufnimmt), basierend auf dem Wert in /etc/passwd.
Bearbeiten Sie dies, indem Sie Folgendes ausführen:usermod -d /home/whatever_dir whatever_user
.
Bitte beachten Sie, dass dies (offensichtlich) das neue Home-Verzeichnis sein wird. Bash wird cd
bei der Anmeldung darauf zugreifen, also stellen Sie sicher, dass es existiert und die Berechtigungen korrekt sind. Vergessen Sie außerdem nicht .bashrc
, .profile
, .xinitrc
, etc; wenn sie nicht im Home-Verzeichnis sind, werden sie nicht gelesen.
Von 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