1. 程式人生 > >使用者不在sudoers檔案中解決方法以及sudoer檔案修改錯誤後的恢復方法

使用者不在sudoers檔案中解決方法以及sudoer檔案修改錯誤後的恢復方法

在使用Linux系統過程中,通常情況下,我們都會使用普通使用者進行日常操作,而root使用者只有在許可權分配及系統設定時才會使用,而root使用者的密碼也不可能公開。普通使用者執行到系統程式時,需要臨時提升許可權,sudo就是我們常用的命令,僅需要輸入當前使用者密碼,便可以完成許可權的臨時提升。在使用sudo命令的過程中,我們經常會遇到當前使用者不在sudoers檔案中的提示資訊,如果解決該問題呢?通過下面幾個步驟,可以很簡單的解決此問題。

    1、切換到root使用者許可權

Last login: Tue Sep 24 20:50:51 2013 from 192.168.30.171
[

[email protected] ~]$ su root
密碼:
[[email protected] user]#

(如果用的是Ubuntu,則為 "sudo su")

    2、檢視/etc/sudoers檔案許可權,,如果只讀許可權,修改為可寫許可權

[[email protected] user]# ls -l /etc/sudoers
-r--r-----. 1 root root 4030 9月  25 00:57 /etc/sudoers
[[email protected] user]# chmod 777 /etc/sudoers
[[email protected]

user]# ls -l /etc/sudoers
-rwxrwxrwx. 1 root root 4030 9月  25 00:57 /etc/sudoers
[[email protected] user]#

    3、執行vi命令,編輯/etc/sudoers檔案,新增要提升許可權的使用者;在檔案中找到root  ALL=(ALL) ALL,在該行下新增提升許可權的使用者資訊,如:

root    ALL=(ALL)       ALL
user    ALL=(ALL)       ALL

說明:格式為(使用者名稱    網路中的主機=(執行命令的目標使用者)    執行的命令範圍)

    4、儲存退出,並恢復/etc/sudoers的訪問許可權為440

[[email protected] user]# chmod 440 /etc/sudoers
[[email protected] user]# ls -l /etc/sudoers
-r--r-----. 1 root root 4030 9月  25 00:57 /etc/sudoers
[[email protected] user]#

    5、切換到普通使用者,測試使用者許可權提升功能

在上面的操作中如意出現這樣的問題:如果把sudoer檔案修改錯誤怎麼辦,我這邊遇到的具體問題是在sudoers檔案中新增user    ALL=(ALL)       ALL這條語句是,只添加了user,未新增ALL=(ALL)       ALL就儲存退出了,並切換到了普通使用者。此時,如果普通使用者在此使用sudoer su命令時,系統提示sudoers檔案中有語法錯誤,導致命令不能執行,所以不能進入root許可權,而sudoers又只能在root許可權下才能修改。

解決方法:

1,重啟系統

2,啟動時按shift,選擇recovery mode,此時就是以root許可權進入系統了,在這裡對/etc/sudoers檔案進行修改

3,/etc/sudoers預設是隻讀檔案,所以先改變他的屬性,輸入chmod 440 /etc/sudoers

4,如果提示沒有許可權,或者不允許修改,就先輸入 

mount -o remount rw /

然後更改許可權即可。

如果內容有錯誤,可以vi /etc/sudoers 進入修改。或者將以前新增的錯誤部分刪除再儲存。


相關推薦

使用者sudoers檔案解決方法以及sudoer檔案修改錯誤恢復方法

在使用Linux系統過程中,通常情況下,我們都會使用普通使用者進行日常操作,而root使用者只有在許可權分配及系統設定時才會使用,而root使用者的密碼也不可能公開。普通使用者執行到系統程式時,需要臨時提升許可權,sudo就是我們常用的命令,僅需要輸入當前使用者密碼,便可

關於IDEA找到classpathpackage內的xml檔案問題和解決辦法

之前,一直被一個嚴重的問題所困擾,那就是我的classpath中包的配置檔案為什麼不能夠被IDEA找到,而eclipse就能夠找到,在經歷了很久的痛苦掙扎之後,終於找到了原因和解決辦法。 很簡單,這裡由於暫時沒有找到更為有效的解決辦法,多以這裡我只能夠暫時的稱這個問題是一個

Spring Boot 單檔案,多檔案上傳,以及檔案寫入響應

單檔案上傳 配置檔案設定 @Component public class MultipartConfig { @Bean public MultipartConfigElement multipartConfigElement(){ Multipa

在爬蟲使用過程解決ip被封鎖IP限制的幾種方法

方法1使用多IP代理:1.IP必須需要,比如ADSL。如果有條件,其實可以跟機房多申請外網IP。2.在有外網IP的機器上,部署代理伺服器。3.你的程式,使用輪訓替換代理伺服器來訪問想要採集的網站。好處:1.程式邏輯變化小,只需要代理功能。2.根據對方網站遮蔽規則不同,你只需要新增更多的代理就行了。3.就算具體

飛蟻代理在爬蟲使用過程解決ip被封鎖IP限制的8種方法

方法1 使用多IP代理: 1.IP必須需要,比如ADSL。如果有條件,其實可以跟機房多申請外網IP。 2.在有外網IP的機器上,部署代理伺服器。 3.你的程式,使用輪訓替換代理伺服器來訪問想要採集的網站。 好處: 1.程式邏輯變化小,只需要代理功能。 2.根據對方網站遮蔽規則不同,你只需要新

IP代理或日常使用過程解決ip被封鎖IP限制的幾種方法

方法1 使用多IP: 1.IP必須需要,比如ADSL。如果有條件,其實可以跟機房多申請外網IP。 2.在有外網IP的機器上,部署代理伺服器。 3.你的程式,使用輪訓替換代理伺服器來訪問想要採集的網站。 好處: 1.程式邏輯變化小,只需要代理功能。 2.根據對方網

linux下將一個目錄下的所有檔案拷貝到另一個大檔案,並把大檔案拆分成原來的小檔案,大小,內容,名字

經過四五天的編寫與除錯,初步完成了檔案操作工具的內容,以下是程式碼說明: 首先,我測試用的檔案在/home/xudong/mywork下,我的最終生成檔案是在這個路徑下,/home/xudong/work/resultfile.txt,分開後生成的小檔案在/home/xud

idea依賴樹匯出到檔案 解決依賴衝突的神兵利器

最近被不同版本的依賴jar包搞的焦頭爛額,查詢起來特別的累,用idea的依賴jar檢視也沒有找到原因,最後發現是父pom下的某個子專案引入的springboot的版本與其他子專案不一致導致的,找到這個的很簡單的辦法,將依賴的版本樹列印到本地檔案中,然後就可以搜尋不同的依賴版本了。 匯出來的命令特

PHP被呼叫的PHP檔案有函式則呼叫檔案能重複定義的問題

在a.php中 有 function  abc() { } 在b.php中 require_once  a.php 那麼在b.php中不能再定義一個相同的函式abc了,因為require,include(包括_once的)都會把被引用的檔案裡的變數和方法帶

GitHub上傳程式碼的方法以及出現的一些錯誤解決辦法

最近想把之前寫的網頁掛到網上去,搜尋後發現GitHub的homepage可以實現。 昨天花了半天的時間在從GitHub建倉庫開始,最終把我的網頁成功掛到網上。中間出現了一些問題,後來通過百度解決了。所以就想把昨天找到的一些教程和問題解決辦法總結起來,方便自己也方便大家。同時

python2.7編碼問題以及txt檔案讀寫的注意事項

首先,要清楚一點:在py檔案和python動態直譯器(命令列)中,輸入中文字串編碼是不一樣的,動態直譯器中預設編碼環境是ansi,比較麻煩(也有解決辦法),建議在py檔案中處理編碼問題。 python2.7中的字串有兩種形式:str”…”和 unicode u

使用核心更新mtd分割槽表方法以及檢視和修改環境變數(fw_setenv)

把核心裡的mtd分割槽表資訊改成自己想要的,在新的核心裡分割槽資訊在dts裡描述: qspi: [email protected] { ... [email protected]{ /* 256KB for preloader */ label

Subversion(SVN)在AndroidStudio的使用以及忽略檔案的處理

1.Subversion(SVN)在AndroidStudio中的使用 (1)在AndroidStudio中開啟Settings,並在左側選單欄中選擇Version Control,然後將右側的VCS選項選為Subversion。點選Apply和OK。

iwebshop的debug的除錯方法以及config檔案在線上的修改

當sql 語句異常時,開啟config檔案的config.php檔案把debug改為true。 就會出現具體的那個檔案以及第幾行的問題。 當config檔案和SVN伺服器不同步時,可以對直接在線上

配置檔案的別名以及mapper的namespace

MyBatis中如果每次配置類名都要寫全稱也太不友好了,我們可以通過在主配置檔案中配置別名,就不再需要指定完整的包名了。 別名的基本用法: <configuration>     <typeAliases>       <typeA

關於springboot請求攔截器獲取到bean的解決方式【轉載部分修改

介紹: 在企業開發中無論是大的專案還是小的專案,所以的web介面都可能會遇到需要進行許可權驗證/登陸驗證/授權認證的攔截。我常用的做法就是將登陸資訊/許可權資訊存入redis,前端返回token,每次請求時進行驗籤;在進行驗籤時需要通過redis元件進行操作redis快取,

Android多媒體檔案、文件以及各類檔案的獲取

最近專案中需要對好友進行傳送檔案需求,在android中對檔案以及其它文件的獲取一直沒有找到一個好的案例,自己在分析“仿小米資料夾管理”時感覺自己非常的菜B,看不懂原始碼。我也問了他人的思路,但是他們給我遞迴方法去掃描感覺很2B,想想在android中就QQ的檔案目錄都大

MyBatis學習筆記(一)——配置檔案的別名以及mapper的namespace

MyBatis中如果每次配置類名都要寫全稱也太不友好了,我們可以通過在主配置檔案中配置別名,就不再需要指定完整的包名了。 別名的基本用法: <configuration> <typeAliases> <typeAlias

Linux bash環境配置以及配置檔案的讀取順序

在Linux中系統有一些環境配置檔案,讓bash在啟動是直接讀取這些配置檔案,以規劃好bash的操作環境。配置檔案可分為全體的配置檔案以及使用者個人偏好配置檔案。像 login 與 non-login shell 的概念 以及 各種配置檔案的讀取順序,我經常忘記

前臺向後臺傳值的兩種方法 以及 從後臺獲取數據的方法

list 獲取數據 data border asc req rip attr 訂單 1、前臺向後臺傳值方法一: 表單提交的方式: 1 <form action="${path }/manage/logon.do" method="post" id="logonFo