Terminalde varolan kullanıcı için varsayılan giriş dizini oluşturun

117

Bunu nasıl yaparım? Bir ev dizini olmayan bir kullanıcı oluşturdum ve şimdi bir tane oluşturmak istiyorum. Sadece new_user adlı bir klasör değil, tüm klasörleri ve gizli dosyaları, vb. İle varsayılan giriş dizini istiyorum.

    
sordu Jo Rijo 22.08.2013 20:54

5 cevap

177

Aşağıdakileri kullanın (root olarak veya root değilse sudo ile):

mkhomedir_helper username

Bunun çalışması için /home/username klasörünün bulunmaması gerekir.

X ile ilgili klasörler için (Masaüstü, İndirme, vb.), bir grafik ortamında giriş yapmanız gerekir; İlk giriş yaptığınız zaman otomatik olarak oluşturulur.

    
verilen cevap kavadias 05.11.2014 20:48
31

Ana dizinin doğru izinlerle oluşturulması koşuluyla, kullanıcı ilk önce GNOME üzerinden oturum açtığında alt dizinler (Belgeler, Yüklemeler, vb.) otomatik olarak oluşturulur. İşte bir gösteri:

[email protected]:~$ sudo useradd testinguser
[email protected]:~$ sudo passwd testinguser
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
[email protected]:~$ 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
[email protected]:~$ sudo mkdir /home/testinguser
[email protected]:~$ sudo chown testinguser:testinguser /home/testinguser
[email protected]:~$ 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
[email protected]:~$ ls -l /home/testinguser/
total 0
[email protected]:~$

Girişin /etc/passwd girdisini kontrol ederek kullanıcının giriş dizininin doğru şekilde ayarlandığını kontrol edebilirsiniz. Varsayılan olarak, giriş dizinini /home/testinguser olarak ayarlamış olmalısınız:

[email protected]:~$ grep testinguser /etc/passwd
testinguser:x:1001:1001::/home/testinguser:/bin/sh

Ana dizini /home/testinguser burada görmüyorsanız, sudo usermod -d /home/testinguser testinguser komutunu çalıştırmak için bu komutu kullanmanız gerekmese de, bu komutu kullanmanız gerekmese de, varsayılan olarak ayarlanması gerekir ( useradd 's man sayfaları).

Sonra hesabımdan çıkış yaptım ve testinguser ile giriş yaptım ve burada otomatik olarak oluşturulan alt dizinler:

[email protected]:~$ 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

/etc/skel içeriğini kopyalamanıza gerek yoktu.

Mümkünse, başka bir yeni kullanıcı oluşturarak bu adımları izlemeyi deneyebilir misiniz? İşiniz bittiğinde, bu yeni kullanıcıyı sudo deluser testinguser && sudo rm -r /home/testinguser ile kaldırabilirsiniz.

Eğer bunların hepsi seninle çalışmadıysa, sanırım bu bir hata.

    
verilen cevap Alaa Ali 23.08.2013 08:22
12

GÜNCELLEME: Çözüm bozuk ve benim için de çalışmıyor.

Varsa, kullanıcının giriş dizinini oluşturmak isterseniz, useradd komutunu -m bayrağıyla çalıştırın. Bu, tüm dosyaları /etc/skel dizininden kopyalayacaktır.

useradd -m username

Sisteminizin ayarlarını yapılandırmanız gerekebilir. Man sayfasına göre:

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

ve ayrıca gösterir:

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.
    
verilen cevap crafter 22.08.2013 21:54
4

Yeni kullanıcıyı adduser komutuyla oluşturduysanız, yeni kullanıcı için bir giriş dizini oluşturmanız gerekmez. Aşağıdaki altdizinlerle birlikte /home dizinindeki kullanıcının adını içeren bir giriş dizini: Masaüstü, Dosyalar, Belgeler, Müzik, Resimler, Videolar (ve diğerleri), yeni kullanıcı için otomatik oluşturulacaktır.

Yeni kullanıcıyı useradd komutuyla oluşturduysanız, terminalde şu komutları çalıştırın:

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

/etc/passwd dosyasını root olarak düzenlemek için (bu en önemli adımdır). Yeni kullanıcının adı ile satırı bulun ve ona benzer bir giriş dizini ayarlayın:

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

Bu hatta yeni kullanıcı için gerçek bir isim ekleyebilir veya varsayılan kabuğu ayarlayabilirsiniz. Bunun gibi bir şey:

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

Dikkatli olun, başka değişiklikler yapmayın.

Dosyayı kaydettikten sonra, kök hesaptan çıkmadan önce aşağıdaki komutları çalıştırın:

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

Tüm bunlardan sonra, yeni kullanıcı için giriş klasörü ilk girişten sonra otomatik olarak doldurulur.

Ayrıca bkz: Hesaptan sonra kullanıcı giriş klasörü nasıl yapılır? yaratma?

    
verilen cevap Radu Rădeanu 22.08.2013 21:18
3

Gerçekten ihtiyacınız olan tek şey, çalışmasını sağlayan ana klasördür. Kök olarak

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

İlk kez giriş yapmak gerekli tüm dosyaları oluşturmalıdır, bu şu gibi görünüyor:

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
    
verilen cevap fotanus 04.06.2014 22:49

Etiketlerdeki diğer soruları oku