Ubuntu無法sudo提權,報當前用戶不在sudoers文件中錯誤


Ubuntu安裝后默認root不能登陸系統,密碼也是隨機生成,其他用戶使用root權限,可以使用sudo提權,前提是該用戶在/etc/sudoers配置列表中。

但是有時用戶名從/etc/sudoers被意外刪除了,sudo不能用了,root又不知道root密碼(之前沒有改過或者忘記了),如果想修改/etc/sudoers也不可能了,進入了一個死循環。

但可以如下面的方法解決:

1.重啟按shift鍵,進入Ubuntu高級模式,選擇一個recovery mode進入,出現一個9個選項的菜單,如果是安裝時語言是中文可能出現亂碼,不過不影響操作。

2.菜單分別是:resume恢復正常啟動;clean清理磁盤釋放空間;dpkg修復損壞軟件包;fsck磁盤修復;grub更新引導程序;network開啟網絡;root進入root的shell。

這里先選擇fsck選擇左邊按鈕yes進入讀寫模式,接着回車后返回選擇root進入才可以修改文件,在root的shell中可以修改root密碼,將需要sudo提權的用戶名加入sudo組中

$passwd root
$usermod -G sudo qingspace

其實打開/etc/sudoers文件,也可以看到sudo用戶組允許sudo提權,把用戶加入sudo組就可以執行sudo命令了,這里需要注意修改用戶組后需要重啟才能生效。

# User privilege specification
root    ALL=(ALL:ALL) ALL

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

3. 如果對recovery mode模式下中文亂碼反感的話,可以嘗試將以下目錄中的文件重命名,讓界面重回英文(Ubuntu16.10下測試)

$cd  /usr/share/locale-langpack/zh_CN/LC_MESSAGES/
$sudo mv friendly-recovery.mo friendly-recovery.mo.bak
$sudo mv newt.mo  mvnewt.mo.bak

image


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM