Automatisch users een home directory geven

  Diversen

Als je LDAP of NIS gebruikt en je maakt geen gebruik van een home dir op een NFS/NAS server zul je op iedere nieuwe machine een home directory moeten aanmaken voor de users. Dit kost natuurlijk veel tijd en je gaat het in grote omgevingen vergeten. De oplossing is om linux (PAM) de home dir te laten aanmaken op bij de eerste login.

PAM (The Pluggable Authentication Modules library) kan dit voor je bewerk stellige. Om dit actief te maken moet je de volgende regel toevoegen aan /etc/pam.d/common-account:

 session    required   pam_mkhomedir.so skel=/etc/skel/ umask=0022

De common-account file word uitgevoerd bij verschillende autorisaties het zal dus uitgevoerd bij remote SSH logins, locale GDM logins, en console logins.

de parameters spreken voor zich. skel is de directory die word gebruikt waar de files staan welke in de nieuwe home dir gecopieerd worden. umask geeft het umask aan waar de home dir mee aangemaakt word.

Voorbeeld

Als voorbeeld een lokale user aanmaken:

root@ds9:~# useradd sisko 
root@ds9:~# ls -al /home/sisko
ls: cannot access /home/sisko: No such file or directory

De Home directory voor de user sisko bestaat niet.

root@ds9:~# su - sisko 
Creating directory '/home/sisko'.
$ pwd
/home/sisko
$

Nu we weten dat dit werkt kunnen we de tijdelijke account en home dir weer verwijderen

$ exit 
root@ds9:~# userdel sisko 
root@ds9:~# rm -rf /home/sisko 

Zoals al eerder gezegd, je kan er ook voor kiezen om je home directory te mounten vanaf een NFS share, voordeel daarvan is dat je op alle systemen de zelfde home dir hebt.