15 korisnih UserAdd naredbi s primjerima u Linuxu


Svi smo svjesni najpopularnijih naredbi pod nazivom „useradd“ ili „adduser“ u Linuxu. Postoje slučajevi kada se od administratora sistema Linux traži da kreira korisničke naloge na Linuxu sa određenim svojstvima, ograničenjima ili komentarima.

U Linuxu, naredba ‘useradd’ je uslužni program niskog nivoa koji se koristi za dodavanje ili kreiranje korisničkih naloga u Linuxu i drugim operativnim sistemima sličnim Unixu. Naredba 'adduser' je vrlo slična naredbi 'useradd', jer je samo simbolična veza do nje.

U nekim distribucijama Linuxa, naredba ‘useradd’ može imati malo drugačiju verziju. Predlažem da pročitate vašu dokumentaciju prije korištenja naših uputa za kreiranje novih korisničkih računa u Linuxu.

Kada pokrenemo naredbu 'useradd' u Linux terminalu, ona obavlja sljedeće glavne zadatke:

  • Uređuje /etc/passwd, /etc/shadow, /etc/group, i /etc/gshadow datoteke za novokreirane korisničke račune.
  • Kreira i popunjava početni direktorij za novog korisnika.
  • Postavlja dozvole i vlasništvo za početni direktorij.

Sintaksa komande Useradd

Osnovna sintaksa naredbe "useradd" je:

useradd [options] username

U ovom članku ćemo demonstrirati 15 najčešće korištenih naredbi „useradd“ s praktičnim primjerima u Linuxu.

1. Kako dodati novog korisnika u Linux

Da biste dodali ili kreirali novog korisnika, morate koristiti naredbu 'useradd' ili 'adduser' nakon čega slijedi 'korisničko ime'. 'korisničko ime' je ime za prijavu koje korisnik koristi za prijavu na sistem.

Može se dodati samo jedan korisnik, a korisničko ime mora biti jedinstveno i ne mora već postojati na sistemu.

Na primjer, da dodate novog korisnika pod imenom „tecmint“ koristite sljedeću naredbu:

useradd tecmint

Kada dodamo novog korisnika u Linux naredbom „useradd“, on se kreira u zaključanom stanju. Da bismo otključali taj korisnički račun, moramo postaviti lozinku za taj račun pomoću naredbe „passwd“.

passwd tecmint

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

Kada se kreira novi korisnik, njegov unos se automatski dodaje u datoteku „/etc/passwd“. Ova datoteka se koristi za pohranjivanje informacija o korisniku, a unos bi trebao biti.

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

Gornji unos sadrži set od sedam polja razdvojenih dvotočkom, od kojih svako polje ima svoje značenje.

Pogledajmo koja su ovo polja:

  • Korisničko ime – Korisničko ime za prijavu se koristi za prijavu na sistem. Trebao bi imati između 1 i 32 znaka.
  • Lozinka – Korisnička lozinka (ili znak 'x') je pohranjena u datoteci '/etc/shadow' u šifriranom formatu.
  • Korisnički ID (UID) – Svaki korisnik mora imati korisnički ID (UID), što je skraćenica za Korisnički identifikacijski broj. Prema zadanim postavkama, UID 0 je rezerviran za root korisnika, a UID-ovi u rasponu od 1 do 99 su rezervirani za druge unaprijed definirane račune. Dodatno, UID-ovi u rasponu od 100 do 999 rezervirani su za sistemske račune i grupe.
  • ID grupe (GID) – primarni ID grupe (GID), koji je skraćenica za Identifikacijski broj grupe, pohranjen je u ' /etc/group' fajl.
  • Informacije o korisniku – Ovo polje nije obavezno i omogućava vam da definirate dodatne informacije o korisniku, kao što je puno ime korisnika. Ove informacije se mogu popuniti pomoću komande prsta.
  • Početni imenik – Apsolutna lokacija korisničkog kućnog imenika.
  • Šell – Apsolutna lokacija korisničke ljuske, tj. /bin/bash.

2. Kako kreirati korisnika sa drugačijim kućnim direktorijumom

Prema zadanim postavkama, naredba 'useradd' kreira početni direktorij korisnika u direktoriju '/home' s korisničkim imenom. Na primjer, kao što se vidi gore, zadani početni direktorij za korisnika 'tecmint' je '/home/tecmint'.

Međutim, ovo ponašanje se može promijeniti korištenjem opcije '-d' zajedno s lokacijom novog matičnog direktorija (npr. '/data/projects'). Na primjer, sljedeća komanda će kreirati korisnika „anusha“ s početnim direktorijumom postavljenim na „/data/projects“.

useradd -d /data/projects anusha
passwd anusha

Pomoću sljedeće cat komande možete vidjeti korisnički imenik i druge informacije vezane za korisnika, kao što su korisnički ID, ID grupe, ljuska i komentari.

cat /etc/passwd | grep anusha

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

3. Kako kreirati korisnika sa određenim korisničkim ID-om

U Linuxu svaki korisnik ima svoj UID (jedinstveni identifikacioni broj). Prema zadanim postavkama, kada kreiramo novi korisnički račun u Linuxu, on dodjeljuje korisničke ID-ove 500, 501, 502, itd.

Međutim, možemo kreirati korisnike sa prilagođenim korisničkim ID-ovima koristeći opciju '-u'. Na primjer, sljedeća naredba će kreirati korisnika „navin“ s prilagođenim korisničkim ID-om „1002“.

useradd -u 1002 navin

Sada provjerimo da li je korisnik kreirao definirani korisnički ID (1002) koristeći sljedeću naredbu.

cat /etc/passwd | grep navin

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

NAPOMENA: Uvjerite se da vrijednost korisničkog ID-a mora biti jedinstvena od svih drugih već kreiranih korisnika na sistemu.

4. Kako kreirati korisnika sa određenim ID-om grupe

Slično tome, svaki korisnik ima svoj GID (Grupni identifikator). Takođe možemo kreirati korisnike sa određenim ID-ovima grupe koristeći opciju '-g'.

U ovom primjeru ćemo dodati korisnika 'tarunika' sa određenim UID i GID istovremeno uz pomoć '- u' i '-g' opcije.

useradd -u 1005 -g tecmint tarunika

Sada provjerite dodijeljeni korisnički ID i ID grupe u datoteci „/etc/passwd“.

cat /etc/passwd | grep tarunika

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

Za provjeru korisničkog GID-a koristite naredbu id:

id -gn tarunika

5. Kako dodati korisnika u više grupa

Opcija '-G' se koristi za dodavanje korisnika u dodatne grupe. Svako ime grupe je odvojeno zarezom, bez razmaka.

U ovom primjeru dodajemo korisnika 'tecmint' u više grupa, kao što su administratori, webadmin i programeri jako>.

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

Zatim provjerite da li je više grupa dodijeljeno korisniku naredbom id.

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. Kako dodati korisnika bez matičnog imenika

U određenim situacijama, u kojima ne želimo dodijeliti kućne direktorije korisniku iz sigurnosnih razloga, korisnikov kućni direktorij će biti root kada se prijavi na sistem koji je upravo ponovo pokrenut. Kada takav korisnik koristi naredbu „su“, njegov direktorij za prijavu bit će početni direktorij prethodnog korisnika.

Za kreiranje korisnika bez njihovih matičnih direktorija, koristi se opcija '-M'. Na primjer, sljedeća naredba će kreirati korisnika „shilpi“ bez kućnog direktorija.

useradd -M shilpi

Sada provjerimo da li je korisnik kreiran bez kućnog direktorija pomoću naredbe ls.

ls -l /home/shilpi

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

7. Kako kreirati korisnika s datumom isteka u Linuxu

Prema zadanim postavkama, kada dodamo korisnike s naredbom ‘useradd’, korisnički račun nikada ne ističe, što znači da je njihov datum isteka postavljen na 0 (što znači da nikada nije istekao).

Međutim, možemo postaviti datum isteka koristeći opciju '-e', koja bi trebala biti u formatu GGGG-MM-DD. Ovo je korisno za kreiranje privremenih naloga za određeni vremenski period.

U ovom primjeru kreiramo korisnika 'aparna' s datumom isteka računa, a to je 27. avgust 2021., u GGGG-MM-DD > format.

useradd -e 2021-08-27 aparna

Zatim provjerite podatke o starosti računa i lozinke pomoću naredbe „promijeni“ za korisnika „aparna“ nakon postavljanja datuma isteka računa.

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. Kako kreirati korisnika sa datumom isteka lozinke

Argument '-f' se koristi za definiranje broja dana nakon isteka lozinke. Vrijednost 0 deaktivira korisnički račun čim lozinka istekne. Podrazumevano, vrijednost isteka lozinke je postavljena na -1, što znači da nikada ne ističe.

U ovom primjeru ćemo postaviti datum isteka lozinke računa, a to je 45 dana, za korisnika 'mansi' koristeći '-e' i '-f' opcije.

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

9. Kako dodati korisnika sa komentarima u Linuxu

Opcija '-c' vam omogućava da dodate prilagođene komentare, kao što su puno ime korisnika, broj telefona, itd., u datoteku '/etc/passwd'. Komentar se može dodati kao jedan red bez razmaka.

Na primjer, sljedeća naredba će dodati korisnika „mansi“ i umetnuti puno ime tog korisnika, Manis Khurana, u polje za komentar.

useradd -c "Manis Khurana" mansi

Možete pogledati umetnuti komentar u datoteci „/etc/passwd“ u odjeljku za komentare koristeći komandu tail.

tail -1 /etc/passwd

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

10. Kako kreirati ljusku za prijavu korisnika u Linuxu

Ponekad dodajemo korisnike koji nemaju nikakve veze sa ljuskom za prijavu ili ponekad od nas se traži da dodijelimo različite ljuske našim korisnicima. Svakom korisniku možemo dodijeliti različite ljuske za prijavu pomoću opcije „-s“.

Ovdje u ovom primjeru će se dodati korisnik „tecmint“ bez ljuske za prijavu, tj. „/sbin/nologin“ ljuske.

useradd -s /sbin/nologin tecmint

Možete provjeriti dodijeljenu ljusku korisniku u datoteci „/etc/passwd“.

tail -1 /etc/passwd

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

11. Kako kreirati korisnika sa navedenim domom, školjkom i komentarom

Sljedeća komanda će kreirati korisnika 'ravi' sa početnim direktorijumom '/var/www/tecmint', zadanom ljuskom od /bin/bash, te dodatne informacije o korisniku.

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

U gornjoj naredbi, opcije '-m' i '-d' kreiraju korisnika sa specificiranim početnim direktorijem, a '-s' opcija postavlja zadanu ljusku korisnika na /bin/bash. Opcija '-c' dodaje dodatne informacije o korisniku, a argument '-U' kreira/dodaje grupu sa istim imenom kao korisnik.

12. Kako kreirati korisnika sa definiranim domom, školjkom, komentarom, UID-om/GID-om

Naredba je vrlo slična onoj iznad, ali ovdje definiramo ljusku kao '/bin/zsh' i postavljamo prilagođeni UID i GID za korisnika 'tarunika'. Opcija '-u' definira UID novog korisnika (tj. 100), a opcija '-g' definira GID (tj. , 1000).

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

13. Kako kreirati korisnika sa početnom, bez ljuske, komentarom i UID-om

Sljedeća naredba je vrlo slična gornje dvije naredbe. Jedina razlika je u tome što smo ovdje onemogućili ljusku za prijavu za korisnika pod nazivom „avishek“ s prilagođenim korisničkim ID-om (tj. 1019).

Opcija '-s' postavlja zadanu ljusku na /bin/bash, ali u ovom slučaju postavljamo ljusku za prijavu na '/usr/sbin/ nologin'. To znači da se korisnik „avishek“ neće moći prijaviti na sistem.

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

14. Kako kreirati korisnika sa specificiranim domom, školjkom, skeletom i UID-om

Jedina promjena u ovoj naredbi je ta što smo koristili opciju '-k' da postavimo prilagođeni skeleton direktorij na /etc/custom.skell umjesto zadanog, /etc/skel. Također smo koristili opciju '-s' da definiramo drugu ljusku, /bin/tcsh, za korisnika 'navin'.

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

15. Kako kreirati korisnika bez doma, ljuske ili grupe, sa komentarom

Sljedeća naredba se veoma razlikuje od ostalih naredbi objašnjenih gore. Ovdje smo koristili opciju '-M' da kreiramo korisnika bez korisničkog početnog direktorija, a '-N' opcija se koristi da naloži sistemu da samo kreira korisničko ime (bez grupe). Opcija '-r' služi za kreiranje korisnika sistema.

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

Za više informacija i opcija o 'useradd', pokrenite naredbu 'useradd' u terminalu da vidite dostupne opcije

useradd

Ako želite da izmenite atribute korisničkog naloga kao što je modifikacija korisničkog imena, korisničkog ID-a (UID), kućnog direktorijuma, ljuske i još mnogo toga, koristite naredbu usermod.