ubuntu手賤改了sudoers之後的恢複

來源:互聯網
上載者:User

標籤:blog   使用   ar   檔案   div   問題   on   log   linux   

sudo 這個命令是ubuntu系統是用的最多的(和其他福士版linux系統比起來),而一個普通使用者是否有sudo許可權來臨時切換到root使用者來執行“一行”命令取決於 /etc/sudoers的配置,而sudoers這個詭異的檔案又不能用常規的方式來修改。

所謂常規方式是什麼呢,就是用chmod讓可以操縱的使用者獲得寫入權限,修改完檔案再將許可權複原。可是sudoers這個檔案預設許可權是root的440:

-r--r----- 1 root root 4002 Mar  2  2012 /etc/sudoers

一旦把它的許可權改成非440,就會出現sudo命令無法使用的情況。其他linux還好說,可ubuntu的root使用者預設是禁用的啊,root使用者用不了,sudo命令也用不了,糾結死了。若是別的檔案還好說,偏偏這個檔案許可權一改就幾乎稍微大點的事都幹不了了。

這個時候只能進入單一使用者模式進行修複,ubuntu進入單一使用者模式的方式是重啟選擇復原模式的選項進入(如果有多個系統,grub菜單會顯示,這時選擇復原模式的選項進入即可;如果只有唯一的一個ubuntu系統,需要開機按shift讓grub菜單顯示出來),在短暫的載入之後就可以選擇修複的選項了,這時選擇root選項,這個就是以root單一使用者模式進入的方式。

用chmod將sudoers檔案的許可權改回440,之前可以sudo的使用者就可以正常使用了:

 chmod 440 /etc/sudoers

如果出現Read-only file system的提示不讓修改,可以重新掛載以解決:

mount -o remount rw / 

這時也可以用passwd給root使用者佈建密碼,以後再出現這樣的烏龍就不需要重啟進單一使用者模式了。但還是不推薦大家開啟root使用者,我覺得吧,存在的就是合理的,通過禁用root的方式來限制命令的影響範圍是有一定必要的。

進入系統,正確的修改sudoers檔案的方式其實已經卸載sudoers裡了,就是使用visudo命令來修改這個特殊的檔案。

## This file must be edited with the ‘visudo‘ command.

應該使用有sudo許可權的使用者,執行:

sudo visudo

在root ALL=(ALL) ALL這行下面在寫一行學著這行的格式,把需要使用sudo命令的使用者加在裡面,儲存時覆蓋掉源檔案就可以了。

root ALL=(ALL) ALLuser ALL=(ALL) ALL

好啦,問題解決。

希望大家引以為戒,下次遇到問題時要是找到這篇東拼西湊的文章也能快速解決問題。同時也給自己提個醒。

ubuntu手賤改了sudoers之後的恢複

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.