使用者不在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] 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]
-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找不到classpath中package內的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