Hvordan gjør jeg dette? Jeg opprettet en bruker uten hjemmekatalog, og nå vil jeg opprette en. Ikke bare en mappe som heter new_user, jeg vil ha standard hjemmekatalog med alle dens mapper og skjulte filer osv.
Underkatalogene (dokumenter, nedlastinger osv.) opprettes automatisk når brukeren logger seg på via GNOME for første gang, forutsatt at hjemmekatalogen er opprettet med riktige tillatelser. Her er en demonstrasjon:
alaa@aa-lu:~$ sudo useradd testinguser alaa@aa-lu:~$ sudo passwd testinguser Skriv inn nytt UNIX-passord: Skriv inn nytt UNIX-passord på nytt: passwd: passord oppdatert med hell alaa@aa-lu:~$ sudo ls -l /home totalt 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 totalt 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:~$
Du kan kontrollere at brukerens hjemmekatalog er riktig angitt ved å sjekke oppføringen i /etc/passwd
. Som standard skal hjemmekatalogen være satt til /home/testinguser
:
alaa@aa-lu:~$ grep testinguser /etc/passwd testinguser:x:1001:1001::/home/testinguser:/bin/sh
Hvis du ikke ser hjemmekatalogen /home/testinguser
der, må du kjøre kommandoen sudo usermod -d /home/testinguser testinguser
for å oppdatere den, selv om du ikke skal trenge å bruke denne kommandoen fordi den skal være angitt som standard (i henhold til useradd
's manpagesider).
Jeg logget deretter ut av kontoen min, og logget inn igjen med testinguser
, og her er underkatalogene automatisk opprettet:
alaa@aa-lu:~$ ls -l /home/testinguser/ totalt 36 drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:05 Desktop drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:05 Dokumenter drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:05 Nedlastinger drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:05 Musikk drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:07 Bilder drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:05 Public drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:05 Maler drwxr-xr-x 2 testinguser testinguser 4096 Aug 23 10:05 Videoer
Jeg trengte ikke å kopiere innholdet i /etc/skel
.
Hvis det er mulig, kan du prøve å følge disse trinnene og opprette en ny bruker? Når du er ferdig, kan du fjerne denne nye brukeren ved å sudo deluser testinguser & & sudo rm -r /home/testinguser
.
Hvis alt dette ikke fungerte med deg, antar jeg at det er en feil.
OPPDATERING: Løsningen er ødelagt og fungerer ikke for meg også.
Hvis du vil opprette brukerens hjemmekatalog hvis den ikke finnes, kjører du kommandoen useradd
med -m
-flagget. Dette vil kopiere alle filer fra katalogen /etc/skel
.
useradd -m username
Du må kanskje konfigurere innstillinger for systemet ditt. I henhold til man-siden:
-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.
og angir videre:
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.
Hvis du opprettet den nye brukeren med kommandoen adduser
, trenger du ikke å opprette en hjemmekatalog for den nye brukeren. En hjemmekatalog navngitt med navnet på brukeren i /home
-katalogen, med følgende underkataloger: Skrivebord, Nedlastinger, Dokumenter, Musikk, Bilder, Videoer (og andre), for den nye brukeren opprettes automatisk.
Hvis du opprettet den nye brukeren med kommandoen useradd
, kjører du følgende kommandoer i terminalen:
sudo -i #enter your user password when you are asked
gedit /etc/passwd
for å redigere /etc/passwd
-filen som root (dette er det viktigste trinnet). Finn linjen med navnet på den nye brukeren og angi standard hjemmekatalog for ham noe som dette:
new_username:x:1001:1001::/home/new_username:/bin/sh
På denne linjen kan du også legge til et ekte navn for den nye brukeren, eller angi standardskallet. Noe som dette:
new_username:x:1001:1001:Real New Username,,,:/home/new_username:/bin/bash
Vær forsiktig, ikke gjør noen andre endringer.
Etter at du har lagret filen, før du går ut fra rotkontoen, kjører du følgende kommandoer:
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
Etter alle disse vil hjemmemappen for den nye brukeren automatisk fylles ut etter første pålogging.
Se også: https://askubuntu.com/questions/152707/how-to-make-user-home-folder-after-account-creation