Weboldal keresés

15 hasznos Useradd parancs példákkal Linuxban


Mindannyian ismerjük a Linux legnépszerűbb „useradd” vagy „adduser” parancsait. Vannak esetek, amikor a Linux rendszergazdát arra kérik, hogy hozzon létre felhasználói fiókokat Linuxon meghatározott tulajdonságokkal, korlátozásokkal vagy megjegyzésekkel.

Linuxban a 'useradd' parancs egy alacsony szintű segédprogram, amellyel felhasználói fiókokat lehet hozzáadni vagy létrehozni Linuxon és más Unix-szerű operációs rendszereken. Az 'adduser' parancs nagyon hasonlít a 'useradd' parancsra, mivel ez csak egy szimbolikus hivatkozás hozzá.

Egyes Linux-disztribúciókban a 'useradd' parancsnak kissé eltérő verziója lehet. Azt javaslom, hogy olvassa el a dokumentációt, mielőtt új felhasználói fiókokat hoz létre Linuxban.

Amikor a „useradd” parancsot futtatjuk a Linux terminálban, az a következő főbb feladatokat hajtja végre:

  • Szerkeszti a következőt: /etc/passwd, /etc/shadow, /etc/group, és /etc/gshadow fájlokat az újonnan létrehozott felhasználói fiókokhoz.
  • Létrehoz és feltölt egy kezdőkönyvtárat az új felhasználó számára.
  • Engedélyeket és tulajdonjogokat állít be a kezdőkönyvtárhoz.

Useradd Command Syntax

A „useradd” parancs alapvető szintaxisa a következő:

useradd [options] username

Ebben a cikkben a 15 leggyakrabban használt „useradd” parancsot mutatjuk be gyakorlati példákkal Linux alatt.

1. Új felhasználó hozzáadása Linux alatt

Új felhasználó hozzáadásához vagy létrehozásához használja a „useradd” vagy az „adduser” parancsot, amelyet a „felhasználónév” követ. A „felhasználónév” az a bejelentkezési név, amellyel a felhasználó bejelentkezik a rendszerbe.

Csak egy felhasználó adható hozzá, és a felhasználónévnek egyedinek kell lennie, és nem léteznie kell a rendszerben.

Például egy „tecmint” nevű új felhasználó hozzáadásához használja a következő parancsot:

useradd tecmint

Amikor új felhasználót adunk hozzá Linuxon a „useradd” paranccsal, az zárolt állapotban jön létre. A felhasználói fiók zárolásának feloldásához be kell állítanunk egy jelszót a fiókhoz a „passwd” paranccsal.

passwd tecmint

Changing password for user tecmint.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.

Az új felhasználó létrehozása után a bejegyzés automatikusan hozzáadódik az „/etc/passwd” fájlhoz. Ez a fájl a felhasználó adatainak tárolására szolgál, és a bejegyzésnek így kell lennie.

tecmint:x:1000:1000:tecmint:/home/tecmint:/bin/bash

A fenti bejegyzés hét kettősponttal elválasztott mezőt tartalmaz, mindegyik mezőnek saját jelentése van.

Lássuk, melyek ezek a mezők:

  • Felhasználónév – A felhasználói bejelentkezési név a rendszerbe való bejelentkezéshez használható. 1 és 32 karakter közötti hosszúságúnak kell lennie.
  • Jelszó – A felhasználói jelszó (vagy 'x' karakter) az '/etc/shadow' fájlban tárolódik titkosított formátumban.
  • Felhasználói azonosító (UID) – Minden felhasználónak rendelkeznie kell felhasználói azonosítóval (UID), amely a Felhasználói azonosító szám rövidítése. Alapértelmezés szerint a UID 0 a root felhasználó számára van fenntartva, az 1 és 99 közötti UID-k pedig más előre meghatározott fiókok számára. Ezenkívül a rendszerfiókok és csoportok számára 100 és 999 közötti UID-k vannak fenntartva.
  • Csoportazonosító (GID) – Az elsődleges csoportazonosító (GID), amely a Csoportazonosító szám rövidítése, a „ /etc/group" fájlt.
  • Felhasználói adatok – Ez a mező nem kötelező, és lehetővé teszi további információk megadását a felhasználóról, például a felhasználó teljes nevét. Ezt az információt az ujjparanccsal lehet kitölteni.
  • Főcímtár – A felhasználó kezdőkönyvtárának abszolút helye.
  • Shell – A felhasználó shelljének, azaz a /bin/bash abszolút helye.

2. Hogyan hozzunk létre egy felhasználót egy másik kezdőkönyvtárral

Alapértelmezés szerint a „useradd” parancs létrehozza a felhasználó kezdőkönyvtárát a „/home” könyvtár alatt a felhasználónévvel. Például a fent látható módon a „tecmint” felhasználó alapértelmezett kezdőkönyvtára a „/home/tecmint”.

Ez a viselkedés azonban megváltoztatható a '-d' kapcsolóval, valamint az új kezdőkönyvtár helyével (pl. '/data/projects'). A következő parancs például létrehoz egy „anusha” felhasználót, amelynek kezdőkönyvtára „/data/projects” lesz.

useradd -d /data/projects anusha
passwd anusha

A következő cat paranccsal megtekintheti a felhasználó kezdőkönyvtárát és a felhasználókkal kapcsolatos egyéb információkat, például felhasználói azonosítót, csoportazonosítót, parancsértelmezőt és megjegyzéseket.

cat /etc/passwd | grep anusha

anusha:x:1001:1001::/data/projects:/bin/bash

3. Hogyan hozzunk létre egy felhasználót egy adott felhasználói azonosítóval

Linuxban minden felhasználónak saját UID-je (egyedi azonosítószáma) van. Alapértelmezés szerint, amikor új felhasználói fiókot hozunk létre Linuxban, az 500, 501, 502 stb. felhasználói azonosítókat rendel hozzá.

A '-u' opció használatával azonban létrehozhatunk egyéni felhasználói azonosítókkal rendelkező felhasználókat. Például a következő parancs egy „navin” felhasználót hoz létre „1002” egyéni felhasználói azonosítóval.

useradd -u 1002 navin

Most ellenőrizze, hogy a felhasználó egy meghatározott felhasználói azonosítóval (1002) hozott létre a következő paranccsal.

cat /etc/passwd | grep navin

navin:x:1002:1002::/home/navin:/bin/bash

MEGJEGYZÉS: Győződjön meg arról, hogy a felhasználói azonosító értékének egyedinek kell lennie a rendszerben már létrehozott többi felhasználótól.

4. Hogyan hozzunk létre egy felhasználót meghatározott csoportazonosítóval

Hasonlóképpen, minden felhasználónak megvan a saját GID-je (Csoportazonosító). A '-g' kapcsolóval meghatározott csoportazonosítókkal is létrehozhatunk felhasználókat.

Ebben a példában egy 'tarunika' felhasználót fogunk hozzáadni egy adott UID és GID azonosítóval egyidejűleg a '- u' és '-g' opciókat.

useradd -u 1005 -g tecmint tarunika

Most ellenőrizze a hozzárendelt felhasználói azonosítót és csoportazonosítót az „/etc/passwd” fájlban.

cat /etc/passwd | grep tarunika

tarunika:x:1005:1000::/home/tarunika:/bin/bash

A felhasználó GID-jének ellenőrzéséhez használja az id parancsot:

id -gn tarunika

5. Felhasználó hozzáadása több csoporthoz

A '-G' opcióval egy felhasználót további csoportokhoz adhat hozzá. Minden csoport neve vesszővel van elválasztva, szóközök nélkül.

Ebben a példában egy „tecmint” felhasználót adunk hozzá több csoporthoz, például adminokhoz, webadminhez és fejlesztőhöz..

groupadd admins
groupadd webadmin
groupadd developers
usermod -a -G admins,webadmin,developers tecmint
useradd -G admins,webadmin,developers paddy

Ezután ellenőrizze, hogy a több csoport hozzá van-e rendelve a felhasználóhoz az id paranccsal.

id tecmint

uid=1000(tecmint) gid=1000(tecmint)
groups=1000(tecmint),1007(admins),1008(webadmin),1009(developers)
context=root:system_r:unconfined_t:SystemLow-SystemHigh

6. Felhasználó hozzáadása saját címtár nélkül

Bizonyos helyzetekben, amikor biztonsági okokból nem akarunk saját könyvtárakat rendelni egy felhasználóhoz, a felhasználó saját könyvtára root lesz, amikor bejelentkezik egy éppen újraindított rendszerbe. Ha egy ilyen felhasználó a ’su’ parancsot használja, a bejelentkezési könyvtára az előző felhasználó saját könyvtára lesz.

A saját könyvtáraik nélküli felhasználók létrehozásához a '-M' opciót kell használni. Például a következő parancs egy „shilpi” felhasználót hoz létre kezdőkönyvtár nélkül.

useradd -M shilpi

Most ellenőrizzük, hogy a felhasználó saját könyvtár nélkül jött-e létre az ls paranccsal.

ls -l /home/shilpi

ls: cannot access /home/shilpi: No such file or directory

7. Lejárati dátumú felhasználó létrehozása Linuxban

Alapértelmezés szerint, amikor felhasználókat adunk hozzá a „useradd” paranccsal, a felhasználói fiók soha nem jár le, vagyis a lejárati dátumuk 0 (ami azt jelenti, hogy soha nem járt le).

A lejárati dátumot azonban beállíthatjuk a '-e' opció használatával, amelynek az ÉÉÉÉ-HH-NN formátumban kell lennie. Ez akkor hasznos, ha egy adott időszakra ideiglenes fiókokat hozhat létre.

Ebben a példában létrehozunk egy „aparna” felhasználót a fiók lejárati dátumával, amely 2021. augusztus 27., az ÉÉÉÉ-HH-NN > formátum.

useradd -e 2021-08-27 aparna

Ezután ellenőrizze a fiók és a jelszó öregedési adatait a „chage” paranccsal az „aparna” felhasználóhoz a fiók lejárati dátumának beállítása után.

chage -l aparna

Last password change					: Jun 25, 2021
Password expires					: never
Password inactive					: never
Account expires						: Aug 27, 2021
Minimum number of days between password change		: 0
Maximum number of days between password change		: 99999
Number of days of warning before password expires	: 7

8. Felhasználó létrehozása a jelszó lejárati dátumával

A '-f' argumentum a jelszó lejárta utáni napok számának meghatározására szolgál. A 0 érték inaktiválja a felhasználói fiókot, amint a jelszó lejárt. Alapértelmezés szerint a jelszó lejárati értéke -1, ami azt jelenti, hogy soha nem jár le.

Ebben a példában a fiók jelszavának lejárati dátumát állítjuk be, amely 45 nap, a „mansi” felhasználó számára a „-e” használatával. és '-f' opciókat.

useradd -e 2014-04-27 -f 45 mansi

9. Felhasználó hozzáadása megjegyzésekkel Linux alatt

A '-c' opció lehetővé teszi, hogy egyéni megjegyzéseket – például a felhasználó teljes nevét, telefonszámát stb. – adjon hozzá az „/etc/passwd” fájlhoz. A megjegyzés egyetlen sorként is hozzáadható szóközök nélkül.

Például a következő parancs hozzáad egy „mansi” felhasználót, és beszúrja a felhasználó teljes nevét (Manis Khurana) a megjegyzés mezőbe.

useradd -c "Manis Khurana" mansi

A beszúrt megjegyzést megtekintheti a megjegyzések szakaszban található „/etc/passwd” fájlban a tail paranccsal.

tail -1 /etc/passwd

mansi:x:1010:1013:Manis Khurana:/home/mansi:/bin/sh

10. Felhasználói bejelentkezési shell létrehozása Linuxban

Néha olyan felhasználókat adunk hozzá, akiknek semmi közük a bejelentkezési shell-hez, vagy néha különböző shell-eket kell hozzárendelnünk a felhasználókhoz. A ’-s’ opcióval minden felhasználóhoz különböző bejelentkezési parancsértelmezőket rendelhetünk.

Ebben a példában egy „tecmint” felhasználót ad hozzá bejelentkezési shell nélkül, azaz a „/sbin/nologin” parancsértelmezőt.

useradd -s /sbin/nologin tecmint

A felhasználóhoz rendelt parancsértelmezőt az „/etc/passwd” fájlban ellenőrizheti.

tail -1 /etc/passwd

tecmint:x:1011:1014::/home/tecmint:/sbin/nologin

11. Hogyan hozzunk létre egy felhasználót megadott kezdőlappal, héjjal és megjegyzéssel

A következő parancs létrehoz egy 'ravi' felhasználót '/var/www/tecmint' kezdőkönyvtárral, amely alapértelmezett shell a /bin/bash . , és további információk a felhasználóról.

useradd -m -d /var/www/ravi -s /bin/bash -c "TecMint Owner" -U ravi

A fenti parancsban a '-m' és '-d' opciók egy felhasználót hoznak létre egy megadott kezdőkönyvtárral, és a '-s' opció a felhasználó alapértelmezett shelljét a /bin/bash értékre állítja. A '-c' opció további információkat ad hozzá a felhasználóról, a '-U' argumentum pedig a felhasználóval azonos nevű csoportot hoz létre/ad hozzá.

12. Hogyan hozzunk létre egy felhasználót meghatározott kezdőlappal, héjjal, megjegyzéssel, UID-vel/GID-vel

A parancs nagyon hasonló a fentihez, de itt '/bin/zshként definiáljuk a shellt, és beállítjuk az egyéni UID és GID értékeket. a „tarunika” felhasználó számára. A '-u' opció határozza meg az új felhasználó UID-jét (azaz 100), a '-g' opció pedig a GID-t (pl. , 1000).

useradd -m -d /var/www/tarunika -s /bin/zsh -c "TecMint Technical Writer" -u 1000 -g 100 tarunika

13. Hogyan hozzunk létre egy felhasználót Home, Shell nélkül, megjegyzésekkel és UID-vel

A következő parancs nagyon hasonló a fenti két parancshoz. Az egyetlen különbség az, hogy itt letiltottuk a bejelentkezési shellt az „avishek” nevű, egyéni felhasználói azonosítóval (azaz 1019) rendelkező felhasználónál.

A '-s' opció az alapértelmezett shellt a /bin/bash értékre állítja, de ebben az esetben a bejelentkezési shellt a következőre állítjuk: '/usr/sbin/ nologin'. Ez azt jelenti, hogy az „avishek” felhasználó nem tud majd bejelentkezni a rendszerbe.

useradd -m -d /var/www/avishek -s /usr/sbin/nologin -c "TecMint Sr. Technical Writer" -u 1019 avishek

14. Hogyan hozzunk létre egy felhasználót egy megadott kezdőlappal, héjjal, csontvázzal és felhasználói azonosítóval

Az egyetlen változás ebben a parancsban, hogy a '-k' opciót használva az egyéni vázkönyvtárat a /etc/custom.skell értékre állítottuk az alapértelmezett, < helyett./etc/skel. A '-s' opciót is használtuk egy másik shell, /bin/tcsh meghatározásához a 'navin' felhasználó számára.

useradd -m -d /var/www/navin -k /etc/custom.skell -s /bin/tcsh -c "No Active Member of TecMint" -u 1027 navin

15. Felhasználó létrehozása Home, Shell vagy Group nélkül, megjegyzéssel

A következő parancs nagyon különbözik a fent ismertetett többi parancstól. Itt a '-M' opciót használva létrehoztunk egy felhasználót a felhasználó saját könyvtára nélkül, a '-N' opciót pedig arra utasítjuk, hogy a rendszer csak hozzon létre egy felhasználónév (csoport nélkül). A '-r' opció egy rendszerfelhasználó létrehozására szolgál.

useradd -M -N -r -s /bin/false -c "Disabled TecMint Member" clayton

A „useradd” funkcióval kapcsolatos további információkért és opciókért futtassa a „useradd” parancsot a terminálban az elérhető opciók megtekintéséhez

useradd

Ha módosítani szeretné a felhasználói fiók attribútumait, például módosítani szeretné a felhasználónevet, a felhasználói azonosítót (UID), a saját könyvtárat, a shellt és egyebeket, használja a usermod parancsot.