Wie kann ich das tun? Ich habe einen Benutzer ohne Home-Verzeichnis erstellt und möchte nun eines erstellen. Nicht nur einen Ordner namens new_user, ich will die Standard-Home-Verzeichnis mit allen es & #39; s Ordner und versteckte Dateien, etc.
Die Unterverzeichnisse (Dokumente, Downloads, etc...) werden automatisch erstellt, wenn sich der Benutzer zum ersten Mal über GNOME anmeldet, vorausgesetzt, das Home-Verzeichnis wird mit den richtigen Berechtigungen erstellt. Hier's eine Demonstration:
alaa@aa-lu:~$ sudo useradd testinguser alaa@aa-lu:~$ sudo passwd testinguser Geben Sie das neue UNIX-Passwort ein: Geben Sie das neue UNIX-Passwort erneut ein: passwd: Passwort erfolgreich aktualisiert alaa@aa-lu:~$ sudo ls -l /home gesamt 20 drwxr-xr-x 55 alaa alaa 4096 Aug 22 22:00 alaa drwx------ 2 root root 16384 Jun 5 09:46 lost+found alaa@aa-lu:~$ sudo mkdir /home/testinguser alaa@aa-lu:~$ sudo chown testinguser:testinguser /home/testinguser alaa@aa-lu:~$ ls -l /home gesamt 24 drwxr-xr-x 55 alaa alaa 4096 Aug 22 22:00 alaa drwx------ 2 root root 16384 Jun 5 09:46 lost+found drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:03 testinguser alaa@aa-lu:~$ ls -l /home/testinguser/ gesamt 0 alaa@aa-lu:~$
Sie können überprüfen, ob das Home-Verzeichnis des Benutzers richtig eingestellt ist, indem Sie den Eintrag in /etc/passwd
überprüfen. Standardmäßig sollte das Home-Verzeichnis auf /home/testinguser
eingestellt sein:
alaa@aa-lu:~$ grep testinguser /etc/passwd testinguser:x:1001:1001::/home/testinguser:/bin/sh
Wenn Sie das Home-Verzeichnis /home/testinguser
dort nicht sehen, müssen Sie den Befehl sudo usermod -d /home/testinguser testinguser
ausführen, um es zu aktualisieren, obwohl Sie diesen Befehl nicht verwenden müssen, da er standardmäßig gesetzt sein sollte (laut useradd
's manpages).
Ich habe mich dann von meinem Konto abgemeldet und mich wieder mit testinguser
angemeldet, und hier sind die automatisch erstellten Unterverzeichnisse:
alaa@aa-lu:~$ ls -l /home/testinguser/ gesamt 36 drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:05 Desktop drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:05 Dokumente drwxr-xr-x 2 Prüfanwender Prüfanwender 4096 Aug 23 10:05 Downloads drwxr-xr-x 2 Prüfanwender Prüfanwender 4096 Aug 23 10:05 Musik drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:07 Bilder drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:05 Öffentlich drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:05 Vorlagen drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:05 Videos
Ich brauchte den Inhalt von /etc/skel
nicht zu kopieren.
Wenn möglich, können Sie bitte versuchen, diese Schritte zu befolgen und einen weiteren neuen Benutzer anzulegen? Sobald Sie fertig sind, können Sie diesen neuen Benutzer mit sudo deluser testinguser && sudo rm -r /home/testinguser
entfernen.
Wenn das alles bei Ihnen nicht funktioniert hat, dann vermute ich, dass es sich um einen Fehler handelt.
UPDATE: Die Lösung ist kaputt und funktioniert auch bei mir nicht.
Wenn Sie das Home-Verzeichnis des Benutzers erstellen wollen, wenn es noch nicht existiert, dann führen Sie den Befehl useradd
mit der Option -m
aus. Dies wird alle Dateien aus dem Verzeichnis /etc/skel
kopieren.
useradd -m username
Möglicherweise müssen Sie die Einstellungen für Ihr System konfigurieren. Laut der Manpage :
-m, --create-home
Create the user's home directory if it does not exist. The files and directories
contained in the skeleton directory (which can be defined with the -k option)
will be copied to the home directory.
By default, if this option is not specified and CREATE_HOME is not enabled, no
home directories are created.
und zeigt weiter an:
CONFIGURATION
The following configuration variables in /etc/login.defs change the behavior
of this tool:
CREATE_HOME (boolean)
Indicate if a home directory should be created by default for new users.
Wenn Sie den neuen Benutzer mit dem Befehl adduser
angelegt haben, müssen Sie kein Home-Verzeichnis für den neuen Benutzer erstellen. Ein Home-Verzeichnis mit dem Namen des Benutzers im Verzeichnis /home
, mit den folgenden Unterverzeichnissen: Desktop, Downloads, Dokumente, Musik, Bilder, Videos (und andere), für den neuen Benutzer wird automatisch erstellt.
Wenn Sie den neuen Benutzer mit dem Befehl useradd
angelegt haben, dann führen Sie die folgenden Befehle im Terminal aus:
sudo -i #enter your user password when you are asked
gedit /etc/passwd
um die Datei /etc/passwd
als root zu bearbeiten (dies ist der wichtigste Schritt). Suchen Sie die Zeile mit dem Namen des neuen Benutzers und setzen Sie das Standard-Home-Verzeichnis für ihn etwa so:
new_username:x:1001:1001::/home/new_username:/bin/sh
In dieser Zeile können Sie auch einen echten Namen für den neuen Benutzer hinzufügen oder die Standardshell festlegen. Etwas wie dies:
new_username:x:1001:1001:Real New Username,,,:/home/new_username:/bin/bash
Seien Sie vorsichtig und nehmen Sie keine anderen Änderungen vor.
Nachdem Sie die Datei gespeichert haben, führen Sie die folgenden Befehle aus, bevor Sie das Root-Konto verlassen:
mkdir /home/new_username #to create the directory /home/new_username
cp -r /etc/skel/. /home/new_username #to copy skeleton files to /home/new_username
chown -R new_username:new_username /home/new_username #to change the owner of /home/new_username to the new user
Nach all diesen Schritten wird der Home-Ordner für den neuen Benutzer nach der ersten Anmeldung automatisch erstellt.
Siehe auch: https://askubuntu.com/questions/152707/how-to-make-user-home-folder-after-account-creation