Vytvořte výchozí domovský adresář pro stávající uživatele v terminálu

120

Jak to mohu udělat? Vytvořil jsem uživatele bez domovského adresáře a teď chci vytvořit jeden. Nejen složka s názvem new_user, chci výchozí domovský adresář se všemi složkami a skrytými soubory atd.

    
dané Jo Rijo 22.08.2013 20:54

5 odpovědí

178

Použijte následující (jako root nebo sudo, pokud není root):

mkhomedir_helper username

Aby to fungovalo, složka/home/username nesmí existovat.

Pro složky týkající se X (Desktop, Downloads atd.) se budete muset přihlásit do grafického prostředí; budou automaticky generovány při prvním přihlášení.

    
odpověděl kavadias 05.11.2014 20:48
31

Podadresáře (dokumenty, soubory ke stažení atd.) se automaticky vytvoří při prvním přihlášení uživatele GNOME za předpokladu, že je vytvořen domovský adresář se správnými oprávněními. Zde je ukázka:

alaa@aa-lu:~$ sudo useradd testinguser
alaa@aa-lu:~$ sudo passwd testinguser
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
alaa@aa-lu:~$ sudo ls -l /home
total 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
total 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/
total 0
alaa@aa-lu:~$

Můžete zkontrolovat, zda je domovský adresář uživatele správně nastaven, a to zaškrtnutím položky v/etc/passwd. Ve výchozím nastavení byste měli vidět domovský adresář nastavený na/home/testinguser:

alaa@aa-lu:~$ grep testinguser /etc/passwd
testinguser:x:1001:1001::/home/testinguser:/bin/sh

Pokud se nezobrazí domovský adresář/home/testinguser, budete muset spustit příkazsudo usermod -d /home/testinguser testinguser a aktualizovat jej, ačkoli byste neměli používat tento příkaz, protože by měl být nastaven ve výchozím nastavení (podle nauseradd 's manpages).

Potom jsem se odhlásil z mého účtu a přihlásil se zpět natestinguser a zde jsou automaticky vytvořeny podadresáře:

alaa@aa-lu:~$ ls -l /home/testinguser/
total 36
drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:05 Desktop
drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:05 Documents
drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:05 Downloads
drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:05 Music
drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:07 Pictures
drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:05 Public
drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:05 Templates
drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:05 Videos

Nepotřeboval jsem kopírovat obsah/etc/skel.

Pokud je to možné, můžete zkusit následující kroky a vytvořit dalšího nového uživatele? Po dokončení můžete tento nový uživatel odstranitsudo deluser testinguser && sudo rm -r /home/testinguser.

Pokud to všechno s vámi nefunguje, pak hádám, že je to chyba.

    
odpověděl Alaa Ali 23.08.2013 08:22
12

UPDATE: Řešení je přerušeno a nepracuje pro mě.

Chcete-li vytvořit domovský adresář uživatele, pokud neexistuje, spusťte příkazuseradd s příznakem-m. Tím se zkopírují všechny soubory z adresáře/etc/skel.

useradd -m username

Možná budete muset nakonfigurovat nastavení systému. Podle man page:

  -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.

a dále označuje:

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.
    
odpověděl crafter 22.08.2013 21:54
4

Pokud jste vytvořili nového uživatele s příkazemadduser, nemusíte vytvářet domovský adresář pro nového uživatele. V automatickém režimu bude automaticky vytvořen domovský adresář pojmenovaný se jménem uživatele v adresáři/home s následujícími podadresáři: Desktop, Stažení, Dokumenty, Hudba, Obrázky, Videa (a další).

Pokud jste vytvořili nového uživatele s příkazemuseradd, spusťte následující příkazy v terminálu:

sudo -i     #enter your user password when you are asked
gedit /etc/passwd

upravit soubor/etc/passwd jako kořen (to je nejdůležitější krok). Najděte řádek s názvem nového uživatele a pro něj nastavte výchozí domovský adresář takto:

new_username:x:1001:1001::/home/new_username:/bin/sh

Na tomto řádku můžete také přidat nové jméno pro nového uživatele nebo nastavit výchozí shell. Něco takového:

new_username:x:1001:1001:Real New Username,,,:/home/new_username:/bin/bash

Buďte opatrní, neprovádějte žádné další změny.

Po uložení souboru předtím, než vyšlete z kořenového účtu, spusťte následující příkazy:

mkdir /home/new_username                                      #to create the directory /home/new_username
cp /etc/skel/* /home/new_username                             #to copy copy files from the /home/new_username
chown -R new_username:new_username /home/new_username   #to change the owner of /home/new_username to the new user

Po všech těchto krocích bude domovský adresář pro nového uživatele automaticky načten automaticky po prvním přihlášení.

Podívejte se také na: Jak vytvořit domovskou složku uživatele po účtu vytvoření?

    
odpověděl Radu Rădeanu 22.08.2013 21:18
3

Vše, co opravdu potřebujete, je domovská složka, která vám pomůže. Jako root,

cd /home
cd mkdir username
chown username username
chgrp username username

Při prvním přihlášení byste měli vytvořit všechny potřebné soubory, které se zdají být tyto:

drwxr-xr-x 16 fotanus fotanus 4096 Jun  4 17:46 .
drwxr-xr-x  9 root    root    4096 Jun  4 17:43 ..
drwx------ 11 fotanus fotanus 4096 Jun  4 17:46 .cache
drwx------ 13 fotanus fotanus 4096 Jun  4 17:46 .config
drwxr-xr-x  2 fotanus fotanus 4096 Jun  4 17:45 Desktop
drwxr-xr-x  2 fotanus fotanus 4096 Jun  4 17:45 Documents
drwxr-xr-x  2 fotanus fotanus 4096 Jun  4 17:45 Downloads
drwx------  3 fotanus fotanus 4096 Jun  4 17:46 .gconf
drwxrwxr-x  2 fotanus fotanus 4096 Jun  4 17:46 .gstreamer-0.10
-rw-------  1 fotanus fotanus  334 Jun  4 17:45 .ICEauthority
drwxr-xr-x  3 fotanus fotanus 4096 Jun  4 17:45 .local
drwx------  4 fotanus fotanus 4096 Jun  4 17:45 .mozilla
drwxr-xr-x  2 fotanus fotanus 4096 Jun  4 17:45 Music
drwxr-xr-x  2 fotanus fotanus 4096 Jun  4 17:45 Pictures
drwxr-xr-x  2 fotanus fotanus 4096 Jun  4 17:45 Public
drwxr-xr-x  2 fotanus fotanus 4096 Jun  4 17:45 Templates
drwxr-xr-x  2 fotanus fotanus 4096 Jun  4 17:45 Videos
-rw-------  1 fotanus fotanus   55 Jun  4 17:45 .Xauthority
-rw-------  1 fotanus fotanus  711 Jun  4 17:45 .xsession-errors
    
odpověděl fotanus 04.06.2014 22:49