Úvod
su znamená switch user je příkaz, který vám umožňuje spouštět příkazy pod jinými uživateli beze změny funkčnosti.
Použití su je nejlepší způsob, jak přepnout na uživatele root, což vám umožní provádět administrativní úkoly ve zvláštních případech, které normální uživatelé nemohou provést.
Následující článek vás podrobně provede použitím příkazu su v Linuxu.
Syntaxe příkazu su
$ su [options] [username [arguments]]
[možnosti]
-h zobrazit informace nápovědy
$ su -h
Výstup:
-c spustit příkaz se zadaným uživatelem
Například chci spustit příkaz df jako uživatel root:
$ su -c df
Výstup:
-l změnit uživatelské jméno
Například moje původní uživatelské jméno je ubuntu. Teď to změním na hosta. Pro změnu musíte zadat heslo hosta:
$ su -l guest
Výstup:
-s spusťte prostředí shellu, které chcete
Například chci spustit bash shell:
$ su -s /usr/bin/bash
Výstup:
-p nahraďte uživatelské jméno, na které chcete přepnout
Například chci přepnout na hosta:
$ su -p guest
Poté spusťte příkaz echo $HOME a zkontrolujte adresář, ve kterém se nacházíte:
$ echo $HOME
su vs. sudo
Sudo i su se používají ke spuštění jako root, ale různými způsoby. Ale jak se liší? Abychom tento rozdíl poznali, musíme nejprve porozumět právům root a uživatelům root. Stručně řečeno, root je maximální autorita, kterou můžete získat a která vám umožňuje se systémem dělat cokoli. Kromě toho, že uživatel root může instalovat/odebírat některé balíčky, také oprávnění root fungují jako další vrstva zabezpečení.
Hlavní rozdíl:
Příkaz su představuje nejvyšší oprávnění uživatele root. su spustí nový shell.
sudo používá konfigurační soubor (/etc/sudoers) k definování oprávnění různých uživatelů.
Po srovnání vidíme sudo, aby uživatelé používali svůj vlastní účet ke spouštění systémových příkazů. su nutí uživatele sdílet heslo root s ostatními uživateli. To je důvod, proč sudo nespouští žádná nová okna prostředí.
Závěr
Právě jste viděli podrobný návod, jak používat příkaz su v Linuxu a jaký je rozdíl mezi su a sudo.
Děkuji za přečtení.