Účelem tohoto tutoriálu je ukázat, jak opravit user is not in the sudoers file
chyba ve všech hlavních distribucích Linuxu.
Při pokusu o spuštění příkazů s právy root pomocí sudo
Pokud aktuální uživatel není v souboru sudoers, zobrazí se chybová zpráva. Toto je bezpečnostní funkce v systémech Linux, která brání běžným uživatelům předat své příkazy administrátorským právům.
Řešením této chyby je přidání uživatele do sudo
skupiny na systémech založených na DEB nebo na wheel
skupina na systémech založených na RPM. V tomto tutoriálu uvidíte, jak opravit tuto chybovou zprávu a přidat uživatele do příslušné skupiny.
V tomto tutoriálu se naučíte:
- Jak povolit použití sudo v distribucích Linuxu založených na DEB a RPM
Kategorie | Požadavky, konvence nebo použitá verze softwaru |
---|---|
Systém | Jakýkoli systém Linux založený na DEB nebo RPM |
Software | Není k dispozici |
Jiné | Privilegovaný přístup k vašemu systému Linux jako root nebo prostřednictvím sudo příkaz. |
Konvence | # – vyžaduje, aby dané linuxové příkazy byly spouštěny s právy root buď přímo jako uživatel root, nebo pomocí sudo příkaz$ – vyžaduje, aby dané linuxové příkazy byly spouštěny jako běžný neprivilegovaný uživatel |
Jak to opravit:uživatel není v chybovém souboru sudoers krok za krokem
Chybová zpráva vypadá takto:
$ sudo -i [sudo] password for linuxconfig: linuxconfig is not in the sudoers file. This incident will be reported.
Abychom chybu napravili, vše, co musíme udělat, je přidat našeho uživatele do správné skupiny. Správná skupina bude záviset na tom, jaké distro používáte. Pro distribuce založené na RPM, jako je Red Hat, CentOS, Fedora, AlmaLinux, Rocky Linux atd., to bude wheel
skupina. Pro distribuce založené na DEB, jako je Debian, Ubuntu, Linux Mint atd., to bude sudo
skupina.
Postupujte podle pokynů krok za krokem níže a přidejte svého uživatele do správné skupiny a opravte user is not in the sudoers file
chyba.
- Začněte otevřením terminálu příkazového řádku a přihlášením k uživatelskému účtu root.
$ su -i
- Potom přidejte svého uživatele do
wheel
nebosudo
skupina, podle toho, jaké distro provozujete. V tomto příkladu přidáme našeho uživatelelinuxconfig
do skupin, ale do řádků níže nahraďte své vlastní uživatelské jméno.Distribuce založené na RPM:
# usermod -aG wheel linuxconfig
Distribuce založené na DEB:
# usermod -aG sudo linuxconfig
- Aby se změny projevily, budete se muset úplně odhlásit a znovu přihlásit. Případně můžete úplně restartovat systém.
# reboot
- Když se znovu přihlásíte do svého systému, budete moci spouštět příkazy s právy root tak, že jim jednoduše předpíšete
sudo
. Spusťte nějaký příkaz, abyste se ujistili, že to funguje.$ sudo -i
Úvahy na závěr
V tomto tutoriálu jsme viděli, jak opravit user is not in the sudoers file
chyba na systémech Linux založených na RPM a DEB. Povolení sudo
použití pro uživatele je doporučená metoda pro spouštění příkazů s eskalovanými oprávněními, spíše než přihlašování do účtu root. Děje se tak z důvodu bezpečnosti i pohodlí. Koneckonců, kdo se chce přihlašovat k účtu root pokaždé, když potřebuje provést nějakou administrační úlohu?