Kromě rozšířenějšího useradd
Systémy založené na Debianu také obsahují další adduser
příkaz, který poskytuje rozhraní vyšší úrovně pro přidávání uživatelů a některé související úkoly. Na jiných stránkách SE jsou různé otázky/odpovědi, které podrobně popisují základní rozdíly mezi těmito příkazy, například:
- ServerFault – Jaký je rozdíl mezi „useradd“ a „adduser“?
- Superuser – Jaký je rozdíl mezi „adduser“ a „useradd“?
- Zeptejte se Ubuntu – Jaký je rozdíl mezi adduser a useradd?
Většina odpovědí v podstatě říká, že adduser
poskytuje hezčí rozhraní pro interaktivní přidávání uživatelů, ale neuvádí mnoho podrobností o tom, co se stane, když adduser
je spuštěn, který se nesrovnává s useradd
. Takže:
- Co znamená
adduser
udělejte touseradd
ne? - Jaké příkazy musím použít, abych dosáhl ekvivalentních výsledků?
Přijatá odpověď:
Za prvé, příslušné úryvky manuálové stránky zdůrazňují rozdíly mezi těmito dvěma příkazy a poskytují určité informace o tom, co se děje. Pro adduser
:
adduser a addgroup přidávají uživatele a skupiny do systému podle možností příkazového řádku a konfiguračních informací v /etc/adduser.conf. Jsou přátelštější k
nástrojům nízké úrovně, jako jsou programy useradd, groupadd a usermod, ve výchozím nastavení volí hodnoty UID a GID v souladu se zásadami Debianu, vytvářejí domovský adresář se základní konfigurací, spouštějí vlastní skripty a další funkce.
Potom pro useradd
:
useradd je nízkoúrovňový nástroj pro přidávání uživatelů. V Debianu by administrátoři měli místo toho obvykle používat adduser(8).
Další vyšetřování adduser
odhaluje, že se jedná o skript v jazyce perl, který poskytuje rozhraní na vysoké úrovni pro následující příkazy a nabízí tak některé funkce následujících příkazů:
useradd
groupadd
passwd
– používá se k přidání/změně uživatelských hesel.gpasswd
– používá se k přidání/změně hesel skupiny.usermod
– používá se ke změně různých parametrů souvisejících s uživatelem.chfn
– používá se k přidání/změně dalších informací uchovávaných o uživateli.chage
– používá se ke změně informací o vypršení platnosti hesla.edquota
– používá se ke změně kvót využití disku.
Základní běh adduser
příkaz je následující:
adduser username
Tento jednoduchý příkaz provede řadu věcí:
- Vytvořte uživatele s názvem
username
. - Vytvořte domovský adresář uživatele (výchozí je
/home/username
a zkopírujte soubory z/etc/skel
do toho. - Vytvořte skupinu se stejným jménem jako uživatel a umístěte uživatele do ní.
- Vyzvat uživatele k zadání hesla.
- Dotázat se na další informace o uživateli.
useradd
program většinu z toho zvládne, ale ve výchozím nastavení to nedělá a potřebuje další možnosti. Některé informace vyžadují více příkazů:
useradd -m -U username
passwd username
chfn username
Všimněte si, že adduser
zajišťuje, že vytvořená UID a GID odpovídají zásadám Debianu. Vytváření normálních uživatelů pomocí useradd
zdá se být v pořádku, za předpokladu UID_MIN
/UID_MAX
v /etc/login.defs
odpovídá zásadám Debianu. Problém je však v tom, že Debian specifikuje konkrétní rozsah pro UID systémových uživatelů, který se zdá být podporován pouze v /etc/adduser.conf
, takže naivně přidáváte systémového uživatele pomocí useradd
a neuvedení UID/GUID ve správném rozsahu ponechává potenciál pro vážné problémy.
Další běžné použití pro adduser
je zjednodušit proces přidávání uživatele do skupiny. Zde následující příkaz:
adduser username newgroup
je ekvivalentní následujícímu usermod
příkaz:
usermod -a -G newgroup username
Hlavní nevýhoda usermod
v tomto případě je to, že zapomenete předat možnost připojení
(tj.:-a
) by skončilo odebráním uživatele ze všech skupin
před jeho přidáním do „nové skupiny“ (tj.:-G
sám znamená „nahradit za“).
Jedna nevýhoda použití adduser
zde však platí, že můžete zadat pouze jednu skupinu najednou.