如何在Ubuntu中修復“使用者名稱不在sudoers檔案中。此事件將被報告”錯誤?


介紹

如果您是Ubuntu使用者,則在嘗試以超級使用者或管理員身份執行命令時,可能會遇到一條錯誤訊息:“使用者名稱不在sudoers檔案中。此事件將被報告”。

此訊息通常在您嘗試使用“sudo”命令執行管理員命令並且系統不識別您的使用者名稱具有執行此類操作的足夠許可權時出現。

此錯誤是由於您的使用者名稱未出現在sudoers檔案中造成的——這是一個系統配置檔案,它指定哪些使用者和組被允許使用“sudo”命令執行管理任務。發生這種情況時,任何管理任務都將無法執行,因為您缺乏執行此類命令所需的足夠許可權。

瞭解Sudo和Sudoers檔案

定義Sudo及其功能

Sudo是一個強大的實用程式命令,它允許具有非管理員帳戶的使用者在Linux或Unix系統上執行管理任務。它代表“SuperUser DO”,允許授權使用者以提升的許可權執行命令。執行sudo命令時,使用者必須輸入自己的密碼進行身份驗證,然後才能獲得臨時的root訪問許可權。

Sudo對於管理系統安全性至關重要,因為它限制了可以執行特權命令的使用者。限制sudo使用的能力透過確保只有受信任的使用者才能執行敏感操作,從而提供了針對安全威脅的額外保護層。

Sudoers檔案在授予管理許可權中的作用

sudoers檔案負責指定哪些使用者可以使用sudo執行特定命令。該檔案包含定義特定使用者在執行sudo命令後擁有的訪問級別規則。它確定使用者是否有權成為root使用者或具有特定許可權的其他使用者,以及他們被允許執行哪些命令。

此檔案還允許管理員根據使用者的職責(例如資料庫管理員或網路工程師)為不同的使用者組設定自定義角色。檔案中的每個條目都包含有關每個使用者可以執行哪種型別的命令、他們擁有什麼許可權以及他們可以從哪些主機操作的資訊。

Ubuntu如何使用Sudo命令管理管理任務

在Ubuntu中,您必須具有sudo許可權才能執行管理任務,例如安裝軟體包或修改系統設定。預設情況下,Ubuntu帶有一個名為“root”的管理員帳戶,但出於安全原因,該帳戶預設情況下處於停用狀態。

相反,Ubuntu透過GNOME終端或Bash終端等終端應用程式使用sudo命令。這種方法確保所有使用者執行的管理操作都得到適當記錄,並且系統保持安全。

Sudo和sudoers檔案協同工作,使授權的非管理員使用者能夠執行必要的系統任務,同時保持安全性。sudo命令允許使用者透過控制誰有訪問許可權以及他們可以做什麼來安全地執行管理任務,而sudoers檔案提供了一種易於管理的配置這些許可權的方法。

診斷問題

確定“使用者名稱不在sudoers檔案中”錯誤訊息的常見原因

如果您在嘗試使用提升的許可權在Ubuntu中執行命令時遇到錯誤訊息“使用者名稱不在sudoers檔案中。此事件將被報告”,則表示您沒有足夠的許可權來執行該命令。這可能由於多種原因造成,其中一些原因是:

  • 使用者帳戶沒有sudo許可權。

  • 您使用的當前使用者帳戶密碼不正確。

  • sudoers檔案已被意外或故意修改,並且不再識別您的使用者帳戶具有sudo許可權。

  • 系統遇到錯誤或故障,阻止您訪問sudo許可權。

說明如何使用終端命令檢查使用者是否具有Sudo許可權

要檢查使用者是否具有sudo許可權,請執行以下步驟:

  • 透過按鍵盤上的Ctrl + Alt + T開啟終端視窗。

  • 輸入以下命令並按Enter鍵:

sudo -l 

這將提示您輸入密碼。

輸入密碼並按Enter鍵。

  • 如果您具有管理員許可權,則應該看到您可以使用提升的許可權執行的命令列表。

  • 如果您沒有管理員許可權,則錯誤訊息將通知您“使用者名稱不在sudoers檔案中”。另一種檢查使用者是否具有root訪問許可權的方法是檢查其組成員身份狀態。

預設情況下,只有屬於“sudo”組的使用者才能使用“sudo”以root許可權執行命令。您可以透過執行以下命令來確認這一點:

groups username 

將“username”替換為您要檢查其許可權狀態的使用者的實際使用者名稱。

瞭解如何診斷“使用者名稱不在sudoers檔案中”錯誤訊息的問題將幫助您理解為什麼您沒有足夠的許可權來使用提升的許可權執行命令。透過檢查您的使用者帳戶是否具有sudo許可權,您可以確定是否需要將自己新增到sudoers組或修改sudoers檔案以授予自己管理員許可權。

修復使用者名稱不在Sudoers檔案中的錯誤

方法1:將使用者新增到Sudo組

將使用者新增到sudo組是授予他們管理員許可權最簡單也是最常見的方法。屬於此組的使用者可以使用sudo命令以提升的許可權執行命令。這意味著他們可以執行管理任務,例如安裝軟體、更新軟體包和修改系統設定,而無需以root使用者身份登入。

要在Ubuntu中將使用者新增到sudo組,請執行以下步驟:

  • 透過按Ctrl+Alt+T或在應用程式選單中搜索來開啟終端。

  • 輸入以下命令:sudo adduser username sudo,將“username”替換為您的實際使用者名稱。

  • 出現提示時輸入您的密碼並按Enter鍵。

  • 等待命令完成,然後退出終端。

現在您已新增到sudo組,您應該能夠在系統上使用sudo命令,而不會遇到任何“使用者名稱不在sudoers檔案中”錯誤訊息。

方法2:編輯Sudoers檔案

授予或撤銷使用者管理員許可權的另一種方法是編輯/etc/sudoers檔案。這涉及修改訪問控制列表(ACL),這些列表確定哪些使用者被允許使用提升的許可權使用某些命令。

但是,編輯此檔案應謹慎進行,因為編輯時出現的任何錯誤都可能導致嚴重問題,例如完全失去對系統的訪問許可權。要在Ubuntu中編輯此檔案:

  • 開啟終端

  • 輸入:sudo visudo

  • 查詢以%sudo%admin開頭的行。

  • %admin ALL=(ALL) ALL之後新增此行:your-username-here ALL=(ALL) ALL

    將“your-username-here”替換為您的實際使用者名稱。

  • 儲存檔案並退出文字編輯器。

現在,登出您的系統並重新登入以使更改生效。使用sudo命令時,您現在應該具有管理員許可權。

結論

遇到“使用者名稱不在sudoers檔案中”錯誤訊息可能會令人沮喪,尤其是在您需要定期在系統上執行管理任務時。但是,透過遵循本文中提到的兩種方法之一,您可以輕鬆地恢復管理員許可權,並繼續執行您的任務,而不會出現任何問題。

需要注意的是,這兩種方法都需要在執行時具有正確的理解和謹慎。因此,如果您對編輯檔案或透過終端命令進行更改不太自信,建議您堅持使用方法1,即向sudo組新增使用者。

更新於:2023年6月12日

37K+ 瀏覽量

啟動您的職業生涯

完成課程獲得認證

開始
廣告