Správa uživatelů a skupin v Linuxu: Průvodce pro administrátory
Představte si, že jste správce systému rozsáhlého projektu a pravidelně se setkáváte s nespokojeností ze strany QA týmu, který si stěžuje, že vývojáři narušují kódovou základnu, a naopak. Při bližším zkoumání zjistíte, že oba týmy, vývojový i QA, pracují v rámci stejné skupiny a sdílejí jednu kódovou základnu. Požádáte o pomoc svého nadřízeného, který vám doporučí vytvořit dvě oddělené skupiny pro členy vývojového týmu a QA týmu. Nicméně, nejste si jisti, jak v Linuxu uživatele do těchto skupin přidat. Právě s tím vám pomůžeme. V tomto článku si vysvětlíme, jak vytvořit novou skupinu, založit nové uživatelské účty a následně uživatele do skupin přiřadit.
Jak přidávat uživatele do skupin v Linuxu (2023)
Než se pustíme do samotného vytváření skupin, uživatelských účtů a přidávání uživatelů, musíme si nejprve objasnit, co to vlastně uživatelská skupina v Linuxu je. Podívejme se tedy na definici uživatelských skupin a pak se rovnou zaměříme na přidávání uživatelů do těchto skupin.
Co je to uživatelská skupina v Linuxu?
Obecně se organizace dělí na týmy, kde každý tým má své specifické úkoly a každý zaměstnanec je členem určitého týmu. V multiuživatelském systému Linux je to podobné – každý uživatel je součástí skupiny, která definuje jeho oprávnění, jako je čtení, zápis nebo spouštění sdílených zdrojů v rámci dané skupiny. V Linuxu se setkáváme se dvěma typy skupin:
Primární skupina
Při každém přihlášení do systému je uživatel automaticky členem své primární skupiny. Obvykle má primární skupina stejný název jako uživatelské jméno. Každý soubor nebo proces, který uživatel vytvoří, je automaticky přiřazen k této skupině. Ve výchozím nastavení k nim uživatelé z jiných skupin nemají přístup. Informace o primární skupině, jako je ID uživatele a ID skupiny, jsou uloženy v souboru /etc/passwd
.
Sekundární skupina
Sekundární, neboli doplňkové skupiny, jsou klíčové, pokud potřebujete sdílet přístup k souborům nebo procesům s konkrétní skupinou uživatelů. Pouze uživatel s právy root nebo s právy sudo může udělovat nová oprávnění nebo přidávat uživatele do sekundárních skupin. Uživatel může být členem pouze jedné primární skupiny, ale může být součástí i několika sekundárních skupin. Nyní, když už máme základy uživatelských skupin, můžeme se podívat, jak vytvářet nové uživatele a přiřazovat je ke skupinám.
Jak v Linuxu vytvářet nové uživatele?
Pro vytvoření nového uživatelského účtu použijte příkaz useradd
s následující syntaxí:
sudo useradd
Mezi nejčastější možnosti, které se s příkazem používají, patří:
-d
: Vytvoří nového uživatele s novým domovským adresářem.-e
: Slouží k určení data, kdy bude uživatelský účet deaktivován.-u
: Umožňuje vytvoření uživatele se specifickým ID uživatele.
Nově vytvořený uživatel je automaticky zařazen do své primární skupiny. Po založení uživatelského účtu je třeba nastavit heslo pomocí příkazu passwd
:
sudo passwd <uživatelské_jméno>
Systém vás vyzve k zadání nového hesla a následně k jeho ověření. Od tohoto momentu se může uživatel přihlásit do systému pomocí svého nového uživatelského jména a hesla.
Jak v Linuxu vytvořit uživatelskou skupinu?
Když máte vytvořeného nového uživatele, můžete začít vytvářet skupiny, do kterých budete uživatele zařazovat. Pro vytvoření nové skupiny slouží příkaz groupadd
. Je důležité zvolit pro novou skupinu unikátní název, aby se nepletla s již existujícími skupinami. Syntax vypadá následovně:
sudo groupadd <název_skupiny>
Jak přidávat uživatele do skupin?
Jakmile je skupina vytvořena, můžete do ní začít přidávat uživatele. Pouze uživatel s právy root nebo s přístupem sudo může přidávat uživatele do různých skupin.
Přidání existujícího uživatele do existující skupiny
K přidání existujícího uživatele do již existující skupiny použijte příkaz usermod
s následující syntaxí:
sudo usermod -a <jméno_uživatele> -G <jméno_skupiny>
Volba -a
zde znamená „append“ (připojit), což zajistí, že uživatel bude přidán do skupiny, aniž by byl odebrán z jiných skupin. Parametr -G
určuje název skupiny, do které je uživatel přidáván. Tento příkaz neposkytuje podrobný výstup, pouze upozorní, pokud uživatel nebo skupina neexistuje.
Přidání uživatele do více skupin
Příkaz usermod
v Linuxu umožňuje přidat uživatele do více skupin najednou. Stačí zadat názvy skupin oddělené čárkami bez mezer:
sudo usermod -a <jméno_uživatele> -G <název_skupiny_1>,<název_skupiny_2>,<název_skupiny_3>
Vytvoření nového uživatele a přiřazení do skupiny
Nového uživatele můžete vytvořit a okamžitě ho přiřadit do skupiny jediným příkazem. Příkaz useradd
to umožňuje, syntax je následující:
sudo useradd <uživatelské_jméno> -G <název_skupiny_1>,<název_skupiny_2>,<název_skupiny_3>
Zobrazení skupin uživatele
Pro zobrazení všech skupin, ke kterým uživatel patří, můžete použít příkaz groups
nebo id
. Podívejte se na syntax níže:
groups <uživatelské_jméno>
id <uživatelské_jméno>
Pokud vynecháte <uživatelské_jméno>
, zobrazí se skupiny aktuálně přihlášeného uživatele.
Jak odebrat uživatele ze skupiny?
K odstranění uživatele ze skupiny v Linuxu můžete použít příkaz gpasswd
s následující syntaxí:
sudo gpasswd -d <uživatelské_jméno> <název_skupiny>
Příkaz gpasswd
se také používá pro jiné administrativní úlohy, jako je nastavení správců skupiny nebo hesla skupiny.
Smazání skupiny v Linuxu
Pokud chcete v systému Linux odstranit sekundární skupinu, použijte příkaz groupdel
:
sudo groupdel <název_skupiny>
Jak změnit primární skupinu uživatele?
Všechny dosud uvedené příkazy platí pro sekundární skupiny a jejich uživatele. Pro změnu primární skupiny uživatele v Linuxu použijte následující syntax:
sudo usermod -g <nová_primární_skupina> <jméno_uživatele>
Jistě vás zajímá rozdíl mezi volbami -g
a -G
. Parametr -g
slouží pro primární skupiny, zatímco -G
pro sekundární.
Jak zobrazit všechny skupiny uživatelů v Linuxu?
Uživatel, který je vytvořen během instalace systému, je známý jako systémový uživatel a je členem mnoha výchozích skupin v Linuxu. Informace o všech skupinách jsou uloženy v souboru /etc/group
. Pro zobrazení všech skupin v systému použijte následující příkaz:
sudo cat /etc/group
Správa uživatelů a skupin v Linuxu z terminálu
Správa uživatelských skupin je klíčová činnost, která je nezbytná pro různé operace, zejména pokud jste systémový administrátor. V tomto článku jsme si představili základní příkazy pro práci s uživateli a skupinami v Linuxu – od vytváření uživatelů a skupin, přes jejich přidávání a odebírání, až po zobrazení seznamů a změnu primárních skupin. Doufáme, že tento článek vám pomohl. Pokud máte jakékoli další dotazy, neváhejte se zeptat v komentářích, rádi vám pomůžeme.