GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Erstellen Sie Home-Verzeichnisse, nachdem Sie Benutzer erstellt haben

Lösung 1:

Sie können auch mkhomedir_helper verwenden

Usage: /sbin/mkhomedir_helper <username> [<umask> [<skeldir>]]

Lösung 2:

Sie müssen das Benutzerverzeichnis manuell erstellen. Dies erfordert drei Schritte:

  1. Verzeichnis in Übereinstimmung mit /etc/passwd erstellen , normalerweise gibt es bereits einen /home/login-Eintrag.
  2. Anfangsdateien aus /etc/skel kopieren
  3. Und schließlich die richtigen Berechtigungen festlegen:

    • mkdir /home/YOU
    • cd /home/YOU
    • cp -r /etc/skel/. .
    • chown -R YOU.YOURGROUP .
    • chmod -R go=u,go-w .
    • chmod go= .

BTW:Ich vermisse immer die -m Option für useradd auch. Zumindest Debian-basierte Systeme sollten einen adduser haben Befehl, den ich über useradd empfehle. Wenn Sie -m verpasst haben Option könnte auch eine Überlegung wert sein bis deluser und dann den Benutzer mit den richtigen Optionen neu erstellen.

Bearbeiten:-r hinzugefügt zum Kopieren auch Verzeichnisse.

Lösung 3:

Das mag wie eine dumme Idee klingen, aber wenn die Benutzer nichts tun, könnten Sie Folgendes tun:

cat /etc/passwd | cut -f 1 -d : >/tmp/users.list

Bearbeiten Sie dann /tmp/users.list so, dass sie nur die gewünschten Benutzer enthält. Dann machen Sie:


for i in `cat /tmp/users.list`
do
    userdel $i
    useradd -m $i
done

Viele Redhat-basierte Distributionen erstellen Ihnen jedoch ein neues Home-Verzeichnis, wenn Sie sich zum ersten Mal anmelden, vorausgesetzt, es wird in /etc/passwd angegeben, wo sich das Verzeichnis befinden soll.

Um das zu testen, machen Sie ein "su - " und sehen Sie, ob es "das Richtige" tut. Wenn dies nicht der Fall ist, wird das obige Skript ganz gut funktionieren, denke ich.

Lösung 4:

mkdir -p /home/john
chown john:john /home/john
usermod -d /home/john john

Das sollte den Zweck erfüllen, glaube ich

Lösung 5:

Sie können so etwas wie pam_mkhomedir verwenden, um zu verhindern, dass dies in Zukunft jemals ein Problem für Benutzer darstellt. pam_mkhomedir ist ein PAM-Modul, das automatisch das Home-Verzeichnis eines Benutzers bei der Anmeldung erstellt, wenn es nicht existiert, und es mit Dateien aus /etc/skel (oder einem anderen von Ihnen angegebenen Skel-Verzeichnis) füllt.

Dies ist auch ein schön skalierbarer Ansatz, da es dieses Problem weiterhin lösen wird, wenn Sie Ihr Benutzer-Repository jemals in Zukunft auf einen Verzeichnisdienst wie LDAP umstellen.


Linux
  1. Verwalten Sie die Home-Verzeichnisse von Linux-Benutzern mit systemd-homed

  2. So erstellen Sie ein freigegebenes Verzeichnis für alle Benutzer in Linux

  3. 5 Beispiele zum Erstellen mehrerer Verzeichnisse in Linux

  4. Hardlink(s) für Verzeichnisse erzwingen?

  5. Mysteriöse .directories im Home-Verzeichnis?

So erstellen Sie Verzeichnisse unter Linux (mkdir-Befehl)

Erstellen Sie Verknüpfungen zu den häufig verwendeten Verzeichnissen in Linux

Erstellen Sie ein Home-Verzeichnis für einen bestehenden Benutzer in Linux

Erstellen, verwalten und löschen Sie Benutzer und Gruppen in Active Directory

So erstellen/fügen Sie Benutzer in Linux hinzu

Erstellen Sie einen neuen vsftpd-Benutzer und sperren Sie ihn auf das Home-/Login-Verzeichnis (geben Sie es an).