/etc/sudoers 在 linux ssh 中是全域可寫的

/etc/sudoers 在 linux ssh 中是全域可寫的

我嘗試了一切,但沒有任何效果。

sudo不起作用,因為它說:

/etc/sudoers is world writable

即使我輸入命令也無法以 root 使用者身分登入sudo -i

chmod: changing permissions of 'etc/sudoers': Operation not permitted

su: Authentication failure

在發生此錯誤之前,我嘗試更改資料夾的權限/etc以允許我在資料夾內建立新資料夾/etc,然後第二天打開ssh後,出現此錯誤。

以下命令是我記得允許我建立資料夾的唯一命令:

sudo chmod -R 777 /etc chmod a+w test mkdir /etc/backup

我是 Linux 命令新手,所以我只是搜尋它們並在 ssh 上嘗試一下,然後就發生了這個錯誤。

終端錯誤

誰能幫我?提前致謝。

答案1

在發生此錯誤之前,我嘗試更改 /etc 資料夾的權限,以允許我在 /etc 資料夾內建立新資料夾

沒有正當理由進行更改/etc/。這是由packages/he 套件管理器維護的系統目錄。如果您需要個人目錄,請將其放入/home/$USER或多用戶伺服器中/opt/etc(但即使是這些在我看來也很噁心;))。

您可以透過重新啟動進入 grub rescue 或從即時會話來修復此問題,然後執行以下操作

chmod 440 /etc/sudoers

所以它匹配

r--r----- 1 root root 1800 feb 20 18:38 /etc/sudoers

請注意,這可能是徒勞的嘗試:如果您對整個人做了一些事情,那麼您/etc/可能會改變的不僅僅是 sudoers 檔案。然後不格式化重新安裝就是答案。

答案2

您應該重新啟動系統並啟動單一用戶模式,進入 root shell,更改所有權/etc/sudoers:

重新啟動後shfit按下直到出現 GRUB 選單,然後按e進行編輯,然後轉到以 開頭的行linux /boot/vmlinuz並將行尾替換ro \ console=ttyS0 console=tty0rw init=/bin/bash

指示來自伊特嘎拉與影像。

現在,chmod 440 /etc/sudoerssudoers 文件應該如下所示

-r--r-----

我建議您使用 和 編輯 sudoers 文件,visudo以便向/etc/sudoers.d/my-sudoers.

相關內容