Linux

現在 visudo 根本不起作用

  • May 9, 2016

RHEL 5.10

當我這樣做時,visudo我收到此錯誤:

chuck 75->visudo
visudo: /etc/sudoers: Permission denied
visudo: /etc/sudoers: Permission denied

sudo exe 文件和 /etc/sudoers 列表:

chuck 76->ls -l /etc/sudo*
-r--r----- 1 root root 3540 May  9 11:44 /etc/sudoers
-r--r----- 1 root root 3401 Aug 12  2014 /etc/sudoers.20140812

chuck 273->ls -l `which sudo`
-rwsr-xr-x 2 root root 182040 Mar  4  2014 /usr/bin/sudo

chuck 275->ls -l `which visudo`
-rwxr-xr-x 1 root root 98576 Mar  4  2014 /usr/sbin/visudo

如您所見,我的 /etc/sudoers.20140812 備份文件與實際的 /etc/sudoers 文件具有相同的權限。所以我不知道怎麼回事。

  • 就在這發生之前,我將 .cshrc VISUAL 中的環境變數更改為:setenv VISUAL /usr/bin/nano
  • 我已經在 shell 中嘗試過,unset VISUAL但我仍然收到“權限被拒絕”錯誤。
  • 我在shell中嘗試過,setenv VISUAL但沒有奏效。當我這樣做時,visudo我仍然得到“/etc/sudoers 上的權限被拒絕”。
  • 我還關閉了那個 shell 視窗並登錄到一個新的視窗,但當我這樣做時仍然得到“權限被拒絕” visudo
  • 我嘗試用​​Google搜尋答案並嘗試了一些事情,但沒有奏效。
  • 搜尋 stackexchange 也沒有顯示任何過去的問題。

嘗試:我嘗試的另一件事和錯誤消息。

chuck 59->sudo chmod 0440 /etc/sudoers
sudo: /etc/sudoers is mode 0640, should be 0440
sudo: no valid sudoers sources found, quitting

嘗試:製作一個我稱之為的別名editsudoalias editsudo 'sudo chmod 770 /etc/sudoers; sudo nedit /etc/sudoers; sudo chmod 0440 /etc/sudoers'

chuck 62->editsudo
sudo: /etc/sudoers is mode 0640, should be 0440
sudo: no valid sudoers sources found, quitting
sudo: /etc/sudoers is mode 0640, should be 0440
sudo: no valid sudoers sources found, quitting
sudo: /etc/sudoers is mode 0640, should be 0440
sudo: no valid sudoers sources found, quitting

man visudo,“診斷”部分:

 /etc/sudoers.tmp: Permission denied
       You didn’t run visudo as root.

我在您的文章中看不到任何內容表明您確實以 root 身份執行它。

試試sudo visudo

此外,看起來您可能會遇到與其sudo自身相關的錯誤。你能sudo ls ~root成功嗎?


您可能還想查看手冊頁,如下所示:

 There is a hard-coded list of one or more editors that visudo will use
 set at compile-time that may be overridden via the editor sudoers Default
 variable.  This list defaults to /usr/local/bin/vi.  Normally, visudo
 does not honor the VISUAL or EDITOR environment variables unless they
 contain an editor in the aforementioned editors list.

手冊頁繼續描述解決此問題的方法,但您應該了解這樣做的安全隱患。我建議你去學習vi,因為它無處不在,而且非常強大。(從跑步開始vimtutor;為此留出半小時。)

引用自:https://unix.stackexchange.com/questions/282077