Useradd
useradd (od ang. add user) – polecenie służące do tworzenia nowych kont użytkowników w systemach uniksowych oraz linuksowych. Polecenie useradd w wielu systemach jest zastępowane poleceniem adduser, które po wywołaniu z nową nazwą użytkownika przepytuje o potrzebne do utworzenia konta informacje.
Składnia polecenia
Polecenie useradd
- Dodanie nowego użytkownika odbywa się poprzez wpisanie polecenia:
useradd [-c komentarz] [-d katalog_domowy] [-e data_wygaśnięcia] [-f czas_nieaktywności] \
[-g początkowa_grupa] [-G grupa[,...]] [-m [-k katalog_z_profilem]] [-s powłoka] \
[-u id_użytkownika [ -o]] [-p zakodowane_hasło] nazwa_użytkownika
Polecenie useradd z opcją -D
- Do wyświetlenia wartości domyślnych polecenia
useraddsłuży składnia:
useradd -D
- Aby ustawić wartości domyślne należy użyć składni:
useradd -D [-g grupa_domyślna] [-b katalog_domyślny] [-f domyślny_czas_nieaktywności] \
[-e domyślna_data_wygaśnięcia] [-s domyślna powłoka]
Opis opcji
Opis opcji polecenia useradd
Argument Znaczenie -c komentarzdodanie komentarza do pola komentarza w pliku haseł. -d katalog domowyustawienie katalogu domowego dla nowego użytkownika, domyślnie odbywa się to poprzez dostawienie do domyślnego katalogu nazwy użytkownika. -e data_wygaśnięciadata, od której konto użytkownika zostanie zablokowane(wyłączone), datę należy podać w formacie YYYY-MM-DD, gdzie YYYY to rok, MM miesiąc w postaci dwucyfrowej tzn. np. maj to 05, dzień tak jak miesiąc również w postaci dwucyfrowej. -f czas_nieaktywnościustawienie liczby dni, po której konto ma być definitywnie wyłączone, podanie wartości 0 wyłączy konto zaraz po wygaśnięciu hasła, a wartość -1 wyłącza tę funkcję, wartość -1 jest wartością domyślną. -g początkowa_grupanumer lub nazwa początkowej grupy logowania użytkownika, grupa musi istnieć, domyślnym numerem grupy jest 1. -G grupa[,...]grupa lub lista grup, do których również ma należeć tworzony użytkownik, każda następna grupa powinna być oddzielona od poprzedniej przecinkiem, bez spacji pomiędzy. Użytkownik domyślnie należy tylko do grupy początkowej. -m, -k katalog_z_profilemustawienie tej opcji spowoduje, że jeżeli katalog domowy użytkownika nie istnieje, to zostanie on utworzony. Jeśli ustawiona jest opcja -k, to z katalogu wpisanego jako wartość zostaną przekopiowane wzorcowe pliki startowe, w przeciwnym wypadku jako wzorzec posłuży katalog /etc/skel.-s powłokaustawienie powłoki systemowej użytkownika, domyślnie wybierana jest domyślna powłoka systemowa. -u id_użytkownikapodanie numerycznej wartości identyfikatora użytkownika (uid). Numer ten musi być dodatni, unikatowy ( zostanie użyta opcja -o). Domyślnie ustawiana jest wartość najmniejsza począwszy od wartości 100, wartości od 0 do 99 przeznaczone są dla kont systemowych.-p zakodowane_hasłotutaj należy podać hasło w formie zakodowanej, np. takie jak utworzone poleceniem crypt. nazwa_użytkownikatutaj należy podać nazwę nowego konta dla użytkownika.
Opis opcji polecenia useradd z opcją -D
Argument Znaczenie -g grupa_domyślnanumer lub nazwa początkowej grupy logowania użytkownika, grupa musi istnieć. -b katalog domyślnyustawienie ścieżki do katalogu, w który przechowywane są domyślne katalogi użytkowników. -f domyślny_czas_nieaktywnościtutaj można zmienić domyślny czas nieaktywności dla wygaśnięcia hasła dla konta użytkowników. -e domyślna_data_wygaśnięciaustawienie domyślnej daty wygaśnięcia, od której konto użytkownika jest wyłączane. -s domyślna_powłokaścieżka z nazwą domyślnej powłoki systemowej dla użytkowników.
Przykłady
- Uwaga. Aby wykonać poniższe polecenia należy mieć prawa użytkownika zaawansowanego lub być zalogowanym jako root
Przykłady dodania nowych użytkowników
- Wywołanie
useraddpolecenia bez opcji ani nazwy użytkownika ukaże opcje dostępne dla polecenia:
- Wywołanie
# usage: useradd [-u uid [-o]] [-g group] [-G group,...]
[-d home] [-s shell] [-c comment] [-m [-k template]]
[-f inactive] [-e expire ] [-p passwd] name
useradd -D [-g group] [-b base] [-s shell]
[-f inactive] [-e expire ]
- Aby dodać nowego użytkownika wystarczy podać jego nazwę jako opcję
# useradd jimbo
- Efektem wykonania powyższego polecenia będzie dodanie użytkownika z domyślnymi opcjami, bez utworzenia katalogu domowego i z pustym hasłem. Użytkownik ten przy próbie wejścia do katalogu domowego otrzyma komunikat, że katalogu nie znaleziono, ponieważ katalog nie został utworzony.
- Dodanie użytkownika o nazwie jimbo wraz z utworzeniem katalogu domowego na bazie domyślnych ustawień:
# useradd -m jimbo
- W wyniku wykonania polecenia do systemu zostanie dodany nowy użytkownik jimbo oraz w katalogu użytkowników zostanie utworzony katalog jimbo.
- Czasami wymagane jest utworzenie użytkownika o ograniczonej funkcjonalności np. dla aplikacji MySQL:
# useradd -s /bin/false dummy
- Powyższe polecenie umożliwia utworzenie użytkownika, który nie zaloguje się do systemu, ponieważ nie będzie miał dostępu do żadnej powłoki systemowej, gdyż powłoka
/bin/falsepo prostu nie istnieje.
- Powyższe polecenie umożliwia utworzenie użytkownika, który nie zaloguje się do systemu, ponieważ nie będzie miał dostępu do żadnej powłoki systemowej, gdyż powłoka
- Przekazanie poleceniu większej liczby opcji:
# useradd -g users -G floppy,bin,rash,lock -m -d /users/home/jimbo -e 2007/12/05 \
-s /bin/bash -c "Użytkownik jimbo" jimbo
- Wynikiem wykonania polecenia będzie utworzenie użytkownika jimbo, dodanie go do grup users oraz floppy, bin, rash i lock, utworzenie katalogu domowego
/users/home/jimbo(należy pamiętać, że katalogusersoraz kataloghomemuszą istnieć), przypisanie użytkownikowi powłoki bash, nadanie komentarza "Użytkownik jimbo". Utworzony użytkownik nadal nie ma ustawionego hasła, do nadania użytkownikowi hasła służy polecenie passwd. W poleceniu została również ustawiona data wygaśnięcia konta na dzień 5 grudnia 2007 roku.
- Wynikiem wykonania polecenia będzie utworzenie użytkownika jimbo, dodanie go do grup users oraz floppy, bin, rash i lock, utworzenie katalogu domowego
Przykłady użycia polecenia useradd z opcją -D
- Wykonanie polecenia
useradd -Dw systemie zwróci informacje o ustawieniach domyślnych tego polecenia:
- Wykonanie polecenia
# useradd -D
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
GROUPS=video,dialout
CREATE_MAIL_SPOOL=no
- Jak widać z wyniku polecenia, grupą początkową jest grupa o numerze 100, katalogiem w którym zostanie utworzony katalog domowy użytkownika jest
/home, opcjaINACTIVEinformuje iż funkcja czasu nieaktywności jest wyłączona,EXPIREjest puste, więc konta nie mają daty wygaśniecia, wybraną powłoką systemową jest bash, katalog/etc/skelzawiera pliki wzorcowe, ustawionymi grupami są video oraz dialout.
- Jak widać z wyniku polecenia, grupą początkową jest grupa o numerze 100, katalogiem w którym zostanie utworzony katalog domowy użytkownika jest
- Ustawienie nowej ścieżki do domyślnego katalogu domowego dla nowych użytkowników:
# useradd -D -b /users/home
- Efektem polecenia będzie ustawienie katalogu
/users/homejako domyślnego miejsca dla katalogów domowych użytkowników.
- Efektem polecenia będzie ustawienie katalogu
Powiązane z tematem pliki
Poniżej w tabelce wypisane są pliki, które zawierają informację o kontach użytkowników, grupach, itd...
Plik Opis /etc/passwdplik z kontami użytkowników. /etc/shadowzabezpieczona informacja o kontach użytkowników. /etc/groupplik z informacją o grupach. /etc/gshadowzabezpieczona informacja o grupach. /etc/default/useraddplik zawierający ustawienia domyślne. /etc/skelkatalog z profilem domyślnym dla użytkownika.
Inne polecenia do zarządzania kontami użytkownika
usermod- polecenie służące do modyfikacji kont użytkowników.userdel- polecenie służące do usuwania kont użytkowników.passwd- polecenie służące do zmiany hasła do kont użytkowników.users- wyświetlenie nazw zalogowanych użytkowników.groups- polecenie wyświetlające do jakich grup należy konto użytkownika.groupadd- polecenie służące do dodawania grup.groupmod- polecenie służące do modyfikacji grup.groupdel- polecenie służące do usuwania grup.chfn- polecenie służące do zmiany informacji fingerowej.chsh- polecenie do zmiany zgłoszeniowej powłoki systemowej.adduser- konkurencyjne polecenie służące do tworzenia kont użytkowników.addgroup- konkurencyjne polecenie służące do tworzenia grup.
Linki zewnętrzne
useradd(8)– strona podręcznika systemu Linux- Podręczniki konkretnych systemów i dystrybucji Linuksa:
- Debian
- NetBSD. netbsd.org. [zarchiwizowane z tego adresu (2015-12-22)].
- FreeBSD