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
edytujPolecenie useradd
edytuj
- 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
edytuj
- Do wyświetlenia wartości domyślnych polecenia
useradd
sł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
edytujOpis opcji polecenia useradd
edytuj
Argument Znaczenie -c komentarz
dodanie komentarza do pola komentarza w pliku haseł. -d katalog domowy
ustawienie katalogu domowego dla nowego użytkownika, domyślnie odbywa się to poprzez dostawienie do domyślnego katalogu nazwy użytkownika. -e data_wygaśnięcia
data, 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ści
ustawienie 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_grupa
numer 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_profilem
ustawienie 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łoka
ustawienie powłoki systemowej użytkownika, domyślnie wybierana jest domyślna powłoka systemowa. -u id_użytkownika
podanie 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ło
tutaj należy podać hasło w formie zakodowanej, np. takie jak utworzone poleceniem crypt. nazwa_użytkownika
tutaj należy podać nazwę nowego konta dla użytkownika.
Opis opcji polecenia useradd
z opcją -D
edytuj
Argument Znaczenie -g grupa_domyślna
numer lub nazwa początkowej grupy logowania użytkownika, grupa musi istnieć. -b katalog domyślny
ustawienie ścieżki do katalogu, w który przechowywane są domyślne katalogi użytkowników. -f domyślny_czas_nieaktywności
tutaj 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ęcia
ustawienie 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
edytuj- 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
edytuj- Wywołanie
useradd
polecenia 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/false
po 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 katalogusers
oraz kataloghome
muszą 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
edytuj
- Wykonanie polecenia
useradd -D
w 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
, opcjaINACTIVE
informuje iż funkcja czasu nieaktywności jest wyłączona,EXPIRE
jest puste, więc konta nie mają daty wygaśniecia, wybraną powłoką systemową jest bash, katalog/etc/skel
zawiera 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/home
jako domyślnego miejsca dla katalogów domowych użytkowników.
- Efektem polecenia będzie ustawienie katalogu
Powiązane z tematem pliki
edytujPoniżej w tabelce wypisane są pliki, które zawierają informację o kontach użytkowników, grupach, itd...
Plik Opis /etc/passwd
plik z kontami użytkowników. /etc/shadow
zabezpieczona informacja o kontach użytkowników. /etc/group
plik z informacją o grupach. /etc/gshadow
zabezpieczona informacja o grupach. /etc/default/useradd
plik zawierający ustawienia domyślne. /etc/skel
katalog z profilem domyślnym dla użytkownika.
Inne polecenia do zarządzania kontami użytkownika
edytujusermod
- 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
edytujuseradd(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