GNU/Linux >> Znalost Linux >  >> Ubuntu

Oprava „Nelze získat zámek frontendu dpkg. Jste root?" Chyba v Ubuntu a dalších distribucích Linuxu

Předpokládám, že jste v Linuxu docela nováčkem.

Postupujete podle nějakého návodu na internetu, který vám říká, že máte nainstalovat určitý program nebo spustit nějaký příkaz. Pravděpodobně to má něco společného se serverem.

Ale když spustíte příkaz, narazíte na tuto chybu:

E:Nelze otevřít soubor zámku /var/lib/dpkg/lock-frontend – otevřít (13:Oprávnění odepřeno)
E:Nelze získat zámek frontendu dpkg (/var/lib/dpkg/lock-frontend), jste root?

Podobná chyba je tato:

dpkg:chyba:vyžadován přístup pro čtení/zápis do adresáře databáze dpkg /var/lib/dpkg
E:Dílčí proces dpkg –set-selections vrátil kód chyby (2)
E:Spuštění dpkg se nezdařilo. Jste root?

Obě chyby se vás ptají na stejnou otázku:jste root? A to je odpověď na tento problém. Staňte se rootem.

Staňte se rootem, abyste se této chybě vyhnuli

Jak se stanete rootem v Ubuntu nebo Debianu? Používáte příkaz sudo.

Ano, to je ono. Ať už jste spouštěli jakýkoli příkaz, přidejte před něj sudo.

sudo your_command

Požádá vás o zadání hesla vašeho uživatelského účtu. Mějte prosím na paměti, že při zadávání hesla se na obrazovce nic nezobrazí, a to je v pořádku.

S vaším systémem není nic špatného. Ve většině systémů Linux se při zadávání hesla nezobrazují obvyklé hvězdičky ani nic podobného jako „bezpečnostní funkce“.

Stačí zadat heslo a poté stisknout enter. Pokud bylo heslo zadáno správně, měli byste být schopni spustit příkaz nyní.

Můžete dokonce použít tento praktický trik příkazového řádku Linuxu ke spuštění předchozího příkazu pomocí sudo:

sudo !!

To bylo jednoduché a funguje okamžitě, pokud nemáte přístup sudo. Poté se zobrazí jiná chyba.

Zobrazuje se chyba „Uživatel není v souboru sudoer“?

Při instalaci Ubuntu si musíte vytvořit uživatelský účet. Tomuto uživateli je v případě potřeby automaticky uděleno oprávnění sudo ke spouštění příkazů jako root.

To se děje na ploše Ubuntu, ne na serverech. Většina serverových distribucí bude mít samostatný účet root. Pokud si vytvoříte běžný účet samostatně, budete muset uživatele přidat do sudoeru, aby tento normální uživatel mohl sudo používat.

Na výše uvedeném snímku obrazovky jsem vytvořil tohoto dalšího uživatele, ale nepřidal jsem ho do skupiny sudo. To znamená, že uživatel „prakash“ zde nemá práva k použití příkazu sudo, a proto si systém stěžuje, že „prakash není v souboru sudoers“.

Kde je incident hlášen?

Do systémových protokolů je přidán nesprávný pokus sudo. Zaznamenává uživatelské jméno, číslo virtuálního terminálu, umístění, odkud byl příkaz spuštěn a který příkaz byl spuštěn.

Umístění těchto protokolů se liší distribuci od distribuce.

Normálně jej můžete najít v logech journalctl nebo souboru /var/log/auth.log v Ubuntu, souboru /var/log/audit/audit.log ve Fedoře.

Co můžete dělat, když uživatel není v seznamu sudoerů?

Co můžete dělat, když nemůžete použít sudo s aktuálním uživatelským účtem? Nejprve ověřte, zda má uživatel práva sudo nebo ne. Pokud ne, máme pro vás několik možností:

  • Přihlaste se jako root nebo se přepněte na root (pokud máte heslo root).
  • Přidejte uživatele do seznamu sudoer (pokud máte práva správce/sudo z nějakého jiného uživatelského účtu).
  • Pokud používáte systém Linux pro více uživatelů a sami nemáte přístup root nebo sudo, požádejte správce systému, aby vašemu uživateli udělil přístup sudo nebo nainstaloval aplikaci, kterou chcete nainstalovat.

Pomohlo to?

Sudo je velmi komplexní bezpečnostní mechanismus a je mnohem víc než jen umožnit normálnímu uživateli stát se rootem. Pomáhá při auditu systému vědět, který uživatel spustil který příkaz pomocí sudo. Lze jej také nakonfigurovat tak, aby určitému uživateli umožnil spouštět pouze určité příkazy pomocí sudo.

Takovou granulární konfiguraci sudo neuvidíte na stolním Linuxu, kde je předkonfigurována tak, aby umožňovala libovolnému uživateli ve skupině sudo spouštět jakýkoli příkaz jako root pomocí sudo. Více o sudu v některém jiném článku.

Doufám, že při řešení tohoto klasického začátečnického problému získáte nějaké počáteční vhledy do příkazu sudo. Pokud máte další otázky k tomuto tématu, dejte mi vědět v sekci komentářů.



Ubuntu
  1. Jak nainstalovat Rust and Cargo na Ubuntu a další distribuce Linuxu

  2. Jak nainstalovat prohlížeč Vivaldi na Ubuntu a další distribuce Linuxu

  3. Jak sledovat Hulu na Ubuntu a dalších distribucích Linuxu

  1. Jak nainstalovat Discord na Ubuntu a další distribuce Linuxu

  2. Nainstalujte editor závorek v Ubuntu, Mintu a dalších distribucích Linuxu

  3. Jak pořídit snímek obrazovky přihlášení a uzamčení v Ubuntu a dalších distribucích Linuxu

  1. Jak nainstalovat nová písma v Ubuntu a dalších distribucích Linuxu

  2. Jak používat obrázky WebP v Ubuntu a dalších distribucích Linuxu

  3. Jak nainstalovat IntelliJ IDEA na Ubuntu a další distribuce Linuxu