su
(zkratka pro náhradního nebo přepnutí uživatele) nástroj umožňuje spouštět příkazy s právy jiného uživatele, ve výchozím nastavení uživatele root.
Pomocí su
je nejjednodušší způsob, jak přepnout na účet správce v aktuální relaci přihlášení. To je zvláště užitečné, když uživatel root nemá povoleno přihlásit se do systému přes sshor pomocí správce zobrazení GUI.
V tomto tutoriálu vysvětlíme, jak používat su
příkaz.
Jak používat su
Příkaz #
Obecná syntaxe pro su
příkaz je následující:
su [OPTIONS] [USER [ARGUMENT...]]
Při vyvolání bez jakékoli možnosti je výchozí chování su
je spustit interaktivní shell jako root:
su
Budete vyzváni k zadání hesla uživatele root a v případě ověření se uživatel spouštějící příkaz dočasně stane uživatelem root.
Shell relace (SHELL
) a domov (HOME
) proměnné prostředí se nastavují z /etc/passwd
náhradního uživatele záznam a aktuální adresář se nezmění.
Chcete-li potvrdit, že se uživatel změnil, použijte whoami
příkaz:
whoami
Příkaz vypíše jméno uživatele spouštějícího aktuální relaci shellu:
root
Nejčastěji používaná možnost při vyvolání su
je -
(-l
, --login
). To dělá z shellu přihlašovací shell s prostředím velmi podobným skutečnému přihlášení a mění aktuální adresář:
su -
Pokud chcete spustit jiný shell místo toho, který je definován v passwd
použijte -s
, --shell
volba. Například pro přepnutí na root a pro spuštění zsh
shell, zadejte:
su -s /usr/bin/zsh
Chcete-li zachovat celé prostředí (HOME
, SHELL
, USER
a LOGNAME
) volajícího uživatele, vyvolejte příkaz s -p
, --preserve-environment
možnost.
su -p
Když je -
je použita volba -p
je ignorováno.
Pokud chcete spustit příkaz jako náhradní uživatel bez spuštění interaktivního shellu, použijte -c
, --command
volba. Například pro vyvolání ps
příkaz jako root, zadejte:
su -c ps
Chcete-li přepnout na jiný uživatelský účet, předejte uživatelské jméno jako argument do su
. Například pro přepnutí na uživatele tyrion
byste napsali:
su tyrion
Sudo vs. Su #
Na některých distribucích Linuxu, jako je Ubuntu, je účet uživatele root z bezpečnostních důvodů ve výchozím nastavení zakázán. To znamená, že pro uživatele root není nastaveno žádné heslo a nemůžete použít su
přepnout na root.
Jednou z možností změny na root by bylo přidání su
příkaz pomocí sudo
a zadejte heslo aktuálně přihlášeného uživatele:
sudo su -
sudo
umožňuje spouštět programy jako jiný uživatel, ve výchozím nastavení uživatel root.
Pokud je uživateli uděleno sudo
posoudit, su
příkaz je vyvolán jako root. Spuštění sudo su -
a pak zadání uživatelského hesla má stejný účinek jako spuštění su -
a zadáním hesla uživatele root.
Při použití s -i
možnost, sudo
spusťte interaktivní přihlašovací shell s prostředím uživatele root:
sudo -i
sudo -i
je v podstatě stejné jako spuštění su -
.
Výhoda použití sudo
přes su
je, že heslo uživatele root nemusí být sdíleno mezi více administrátorskými uživatelskými účty.
Pomocí sudo
můžete také povolit uživatelům spouštět pouze konkrétní programy s právy root.
Závěr č.
su
je nástroj příkazového řádku, který vám umožňuje dočasně se stát jiným uživatelem a provádět příkazy s náhradním uživatelem.
Pokud máte nějaké dotazy nebo zpětnou vazbu, neváhejte zanechat komentář.