GNU/Linux >> Znalost Linux >  >> Debian

Oprava `Uživatelské jméno není v souboru sudoers. Tento incident je hlášen na Debianu

Tento článek vysvětluje, jak „opravit“ sudo, které nefunguje na Linuxu, což vede k této zprávě při pokusu o jeho použití:„Vaše uživatelské jméno není v souboru sudoers. Tento incident je hlášen." na Debianu (a distribucích Linuxu založených na Debianu, jako je Ubuntu). sudo umožňuje správcům systému spouštět příkazy jako root (administrátor) nebo jiný uživatel.

Příklad z čerstvé instalace Debian 10 (10.1) Buster s nefunkčním sudo:

$ sudo apt update
[sudo] password for logix:
logix is not in the sudoers file.  This incident will be reported.

sudo nefunguje ve výchozím nastavení na čerstvé instalaci Debianu, protože vaše uživatelské jméno není automaticky přidáno do skupiny sudo (v Ubuntu funguje ve výchozím nastavení). Můžete to však také vidět, pokud jste vytvořili nového uživatele, ale zapomněli jste ho přidat do skupiny sudo, nebo pokud jiný uživatel ve vašem systému odstranil uživatelské jméno ze skupiny sudo.

Zda aktuálně přihlášený uživatel patří do skupiny sudo, můžete zkontrolovat pomocí groups Příkaz. Pokud groups Příkaz nevrací sudo V distribucích Linuxu založených na Debianu nemůže toto uživatelské jméno spouštět příkazy sudo . Příklad s výstupem od uživatele Debianu, který není ve skupině sudo:

$ groups
logix cdrom floppy audio dip video pugdev netdev scanner lpadmin

Mohlo by se vám líbit toto:Jak nainstalovat nejnovější Firefox (bez ESR) na Debian 10 Buster (stabilní) nebo Bullseye (testování)

Řešením je přidat tohoto uživatele do skupiny sudo. Ale jak v tomto případě získáte root, protože jako normální uživatel nemůžete měnit ani přidávat uživatele? Použijte su - (nebo sudo su - ) a poté přidejte uživatele do skupiny sudo.

Takže abyste získali root, přidejte svého uživatele do sudo Skupina, použijte:

su -
usermod -aG sudo YOUR_USERNAME
exit


Kde:

  • su změní na uživatele root při - spustí přihlašovací shell, takže věci jako /etc/profile , .bashrc , a tak dále (takto se provádějí příkazy jako usermod bude ve vašem $PATH takže nemusíte zadávat úplnou cestu ke spustitelnému souboru). Můžete také použít sudo su - Místo su -
  • Musíte nahradit YOUR_USERNAME s uživatelským jménem, ​​které chcete přidat do skupiny sudo.
  • Použil jsem usermode přidat skupinu ke stávajícímu uživateli, protože by to mělo fungovat v jakékoli distribuci Linuxu. adduser nebo useradd lze také použít pro (adduser USERNAME -G sudo ), ale nemusí fungovat ve všech distribucích Linuxu. Ačkoli je tento článek pro Debian, chtěl jsem to umožnit i v jiných distribucích Linuxu (všiml jsem si, že adduser nefunguje například na OS Solus).
  • exit existuje root shell, takže můžete znovu spouštět příkazy jako normální uživatel.


Poté sudo stále nefunguje! Musíte se odhlásit od tohoto uživatele a poté se znovu přihlásit a sudo bude fungovat.

To opravuje „Uživatelské jméno není v souboru sudoers. Tento incident je hlášen“ na vašem počítači Debian, ale v některých případech můžete narazit na jiný problém – sudo není ve výchozím nastavení vůbec nainstalováno. To je případ například minimální instalace Debianu. V tomto případě se při pokusu o spuštění příkazu pomocí sudo zobrazí podobná chyba:

$ sudo apt update
bash: sudo: command not found

V tomto případě nainstalujte sudo na Debianu takto:

su - #or 'sudo su -'
apt install sudo
exit

Některé další články o Debianu, které by se vám mohly líbit:

  • Jak downgradovat balíčky na konkrétní verzi pomocí apt v Debianu, Ubuntu nebo Linux Mintu
  • Jak zobrazit historii nainstalovaných, aktualizovaných nebo odebraných balíčků v Debianu, Ubuntu nebo Linux Mintu [dpkg]
  • Jak vypsat všechny balíčky v úložišti na Ubuntu, Debian nebo Linux Mint [APT]
  • Jak najít balíček, který poskytuje soubor (nainstalovaný nebo ne) na Ubuntu, Debian nebo Linux Mint


Debian
  1. [Opraveno] uživatelské jméno není v souboru sudoers

  2. Opravit poškozený soubor sudoers – sudo:chyba analýzy v /etc/sudoers poblíž řádku 21 [Ubuntu]

  3. Debian – nejste si jisti, co spouští tento soubor Systemd Unit?

  1. Debian – Kam mám vložit Sudo do tohoto příkazu?

  2. Jak opravit příkaz Sudo, který nebyl nalezen v Debianu 10

  3. Jak zakázat „sudo su“ pro uživatele v konfiguračním souboru sudoers

  1. Chyba v souboru Sudoers? Zde je návod, jak to můžete opravit.

  2. Oprava sudo:add-apt-repository:command not found error

  3. Linux:'Uživatelské jméno' není v souboru sudoers. Tento incident bude nahlášen