Některé aplikace Linux vyžadují ke spuštění zvýšená oprávnění. Použijte su příkaz pro přepnutí na superuživatele (root), nebo můžete použít sudo místo toho povel.
Jak to funguje
I když fungují odlišně, příkaz sudo je analogický s výzvou k potvrzení, kterou někdy vidíte ve Windows nebo macOS. Když se vás uživatel v těchto operačních systémech zeptá, zda chcete pokračovat v provádění této konkrétní akce, narazíte na tlačítko, které vám potvrdí, že chcete akci spustit se zvýšenými oprávněními, a někdy budete možná muset zadat heslo správce. Linux používá příkaz sudo jako zeď mezi běžnými úkoly a úkoly pro správu, takže musíte potvrdit, že chcete dělat cokoli, co příkaz provede, a že máte oprávnění k provedení úkolu. Ještě podobnější je běž jako příkaz ve Windows; jako v Linuxu běž jako příkaz funguje z příkazového řádku ke spuštění souboru s pověřeními od určitého uživatele, často administrátora.
Pokud si nejste jisti, zda používáte sudo nebo su, podívejte se na koncový znak na příkazovém řádku. Pokud je to znak libry (#), jste přihlášeni jako root.
O velení Sudo
Když vložíte sudo před jakýkoli příkaz v terminálu, tento příkaz běží se zvýšenými oprávněními, a proto je řešením chyb souvisejících s oprávněními. Sudo pracuje na základě velení. Mezi funkce patří schopnost omezit příkazy, které může uživatel spouštět na základě jednotlivých hostitelů, rozsáhlé protokolování každého příkazu, aby byla zajištěna jasná auditní stopa o tom, kdo co udělal, konfigurovatelný časový limit příkazu sudo a možnost používat stejné konfigurační soubor na mnoha různých počítačích.
Příklad příkazu Sudo
Standardní uživatel bez oprávnění správce může v systému Linux zadat příkaz k instalaci softwaru:
dpkg -i software.deb
Příkaz vrátí chybu, protože osoba bez oprávnění správce nemá povoleno instalovat software. Příkaz sudo však přijde na záchranu. Místo toho je správný příkaz pro tohoto uživatele:
sudo dpkg -i software.deb
Tentokrát se software nainstaluje. Můžete také nakonfigurovat Linux, aby zabránil některým uživatelům v používání příkazu sudo.