Felhasználók létrehozása Linux/Unix rendszereken mindennapos rutinfeladat rendszergazdáknak. Létrehozhatunk egy felhasználót alapbeállításokkal, egy felhasználót egyedi beállításokkal, és több felhasználót is egyszerre.
A következő pár sorban megnézzük 4 lehetőséget, amely szemlélteti a useradd, adduser és a newusers parancsok használatát példákon keresztül.
1. lehetőség: Linux useradd parancs – felhasználó létrehozása alapbeállításokkal
Legegyszerűbb módja a felhasználó létrehozásának a useradd parancs.
# useradd FELHASZNÁLÓINÉV
Hogy miket állít be alapból ez a parancs a -D kapcsolóval listázhatjuk:
$ useradd -D GROUP=1001 HOME=/home INACTIVE=-1 EXPIRE= SHELL=/bin/sh SKEL=/etc/skel CREATE_MAIL_SPOOL=no
1. példa: Felhasználó létrehozása alapbeállításokkal
Következő példában létrehozunk egy nemetkr felhasználót, aki a nemetkr csoport tagja lesz. Majd a passwd paranccsal megváltoztatjuk a jelszavát.
# useradd nemetkr # passwd nemetkr Changing password for user nemetkr. New UNIX password: Retype new UNIX password: passwd: all authentication tokens updated successfully. # grep nemetkr /etc/passwd nemetkr:x:500:500::/home/nemetkr:/bin/bash # grep nemetkr /etc/group nemetkr:x:500: [Note: default useradd command created nemetkr as username and group]
2.példa: Felhasználó beállítása alapbeállításokkal, nem létező csoporttal.
# useradd -n nkrisztian # grep nkrisztian /etc/passwd nkrisztian:x:511:100::/home/nkrisztian:/bin/bash # grep nkrisztian /etc/group [Note: No rows returned, as group nkrisztian was not created] # grep 100 /etc/group users:x:100: [Note: useradd -n command created user nkrisztian with default group id 100] # passwd nkrisztian Changing password for user nkrisztian. New UNIX password: Retype new UNIX password: passwd: all authentication tokens updated successfully. [Note: Always set the password immediately after user creation]
3.példa felhasználó létrehozása, alapértelmezett shell megváltoztatása
Ebben a példában létrehozzuk és kiíratjuk az alapértelmezett beállításokat, majd a shellt megváltoztatjuk /bin/ksh-ra.
# useradd -D GROUP=100 HOME=/home INACTIVE=-1 EXPIRE= SHELL=/bin/bash SKEL=/etc/skel [Note: The default shell is /bin/bash] # useradd -D -s /bin/ksh # useradd -D GROUP=100 HOME=/home INACTIVE=-1 EXPIRE= SHELL=/bin/ksh SKEL=/etc/skel [Note: Now the default shell changed to /bin/ksh] # adduser nkrisz # grep nkrisz /etc/passwd nkrisz:x:512:512::/home/nkrisz:/bin/ksh [Note: New users are getting created with /bin/ksh] # useradd -D -s /bin/bash [Note: Set it back to /bin/bash, as the above is only for testing purpose]
2. lehetőség: Linux useradd parancs – egyedi beállítási lehetőséggel
A felhasználók létrehozása a useradd parancs kapcsolóival is lehetséges ekkor. Alapvetően az alapértelmezett értékeken tudunk ilyenkor változtatni (csoport, skel, homekönyvtár stb.).
# useradd -s <SHELL> -m -d <HomeDir> -g <Group> UserName
- -s SHELL: shell típusának beállíása
- -m: a felhasználó homekönyvtárának a létrehozása
- -d: a felhasználó homekönyvtárának a nevét adhatjuk meg
- -g: a felhasználó csoportja, amelynek léteznie kell, ha nem adunk meg akkor a users (100) csoportba kerül
- UserName: a felhasználó neve
4. példa: felhasználó létrehozása egyedi beállításokkal
Létrehozunk egy mathias felhasználót, akinek a homekönyvtára /home/rex és az shellje /bin/csh és a megjegyzés “Mathias Rex” lesz.
# useradd -s /bin/csh -m -d /home/rex -c "Mathias Rex" -g root mathias # grep mathias /etc/passwd mathias:x:513:0:Mathias Rex:/home/rex:/bin/csh
3. lehetőség: Linux adduser parancs – Felhasználó létrehozása interaktívan
# adduser grahamgreen Adding user grahamgreen ... Adding new group grahamgreen (1007) ... Adding new user `grahamgreen' (1007) with group `grahamgreen' ... Creating home directory `/home/grahamgreen' ... Copying files from `/etc/skel ' ... Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully Changing the user information for spidey Enter the new value, or press ENTER for the default Full Name []: Krisztian Nemet Room Number []: Work Phone []: Home Phone []: Other []: Is the information correct? [y/N] y
4. lehetőség: Linux newusers parancs – egyszerre több felhasználó létrehozása
Ha léteznek már az egyik gépen a felhasználók és ugyanazokat a másik gépre is szeretnénk felvinni megspórolhatjuk a rengeteg gépelést. Ez 100 felhasználónál már elég jelentős lenne. A állítsuk elő a következő módon egy szöveges fájlt:
loginname:password:uid:gid:comment:home_dir:shell
Ezután a newusers paranccsal tudjuk beolvastatni a fájl tartalmát.
# newusers felhasznalok.txt
A felhasznalok.txt tartalmanak egy része így nézhet ki:
# cat felhasznalok.txt speter:HcZ600a9:1008:1000:Simon Peter:/home/speter:/bin/bash mpeter:1enz733N:1009:1000:Marton Peter:/home/mpeter:/bin/csh bpeter:1y5eJr8K:1010:1000:Balazs Peter:/home/bpeter:/bin/ksh lpeter:VGz638i9:1011:1000:Laszlo Peter:/home/lpeter:/bin/sh
Természetesen az itt tárgyalt parancsok és kapcsolóik shell szkriptekkel automatizálhatóak.