[轉載] su和sudo

轉載自http://www.cnblogs.com/haichuan3000/articles/2123633.htmlhtml

Mandriva 說也奇怪,用root登陸的用戶比通常用戶還難用,當初用FC6時,我就徹底使用root用戶。Mandriva 中不能直接登陸KDE,好容易搞進去後一個P圖標沒有,整個界面血紅血紅的,看着就嚇人。沒辦法,成長就是被逼出來的。老子不信邪,找到了su和sudo,這裏總結一下。

首先是 su 命令。
功能:直接將身份變成其餘用戶。(須要其餘用戶的密碼)
用法:
         $ su [選項]... [-] [用戶 [參數]...]
參數:linux

-, -l, --loginshell

-l 後接用戶名,單獨的- 表明root,且使用 root 的環境變量。安全

-c, --commmand=COMMANDspa

僅進行一次命令,-c 後可直接加命令。htm

-m, --preserve-environmentblog

使用目前的環境設定,而不從新讀取新使用者的設定。ci

-pget

同 -mit

       --help

顯示此幫助信息並退出

       --version

輸出版本信息並退出


用 exit 命令或快捷鍵[Ctrl+D]可返回原登陸用戶。

例1:由 svyee 轉變爲 root 用戶

[svyee@localhost ~]$ su
口令:<= 輸入 root 的密碼
[root@localhost svyee]#
# 沒有使用 - 狀況下,仍爲原用戶環境變量。

[svyee@localhost ~]$ su -
口令:<= 輸入 root 的密碼
[root@localhost ~]# 
# 加上參數 - 後,徹底切換到了root用戶的環境變量。


高手推薦用su時,最好用 su - 。我是菜鳥,只知其然,暫不知其因此然。

例2:由 svyee 轉變爲 test 用戶

[svyee@localhost ~]$ su -l test
口令:<= 輸入 test 的密碼
[test@localhost ~]$


------------------------------------------------------------------------------------------------------------------------------
下面是 sudo 命令
        能夠說sudo命令補償了它的一個致命缺陷,那就是任何一個想轉爲root用戶的人都得掌握root用戶的密碼,我這樣的菜鳥也知道這很不安全,俺的root密碼跟銀行卡密碼同樣呢,能讓別人知道嗎?!哈哈,開玩笑。菜鳥歸菜鳥,俺不是笨鳥。

功能:對於root受權的用戶,可以使用該命令臨時切換到root用戶環境下。
          受權文件爲 /etc/sudoers 文件,只要裏面有你的大名,你就享有sudo特權。

新裝的系統,root只給他本身特權,下面先加上給svyee加上特權。

菜鳥方法優先:
#用上面的 su 命令換至 root 環境。

[svyee@localhost ~]$ su -
口令:<= 輸入 root 的密碼
[root@localhost ~]# kwrite /etc/sudoers
# 用KDE的KWrite來編輯文件,能夠點鼠標,方便。


在打開的sudoers文件中,找到下面的字樣,添上最後一行。
# User privilege specification
root       ALL=(ALL) ALL
svyee      ALL=(ALL) ALL <= 添上這一行。

點鼠標,保存退出。OK! svyee有特權了。

高手方法:
Ctrl + Alt + F1 在文本模式下以root身份登陸,而後:

[root@linux ~]# visudo

或:

[root@linux ~]# vi /etc/sudoers


推薦用前者。
一樣添加上一行。保存退出。
vi的具體操做,等俺學了再來總結。

下面,回到 sudo
參數:

-b

在後臺執行指令。

-h

顯示幫助。

-k

結束密碼的有效期限,也就是下次再執行sudo時便須要輸入密碼。

-l

列出目前用戶可執行與沒法執行的指令。

-s<shell>

執行指定的shell。

-u<user>

以指定的用戶做爲新的身份。若不加上此參數,則預設以root做爲新的身份。

-v

延長密碼有效期限5分鐘。

-V

顯示版本信息。


例3:入侵禁區

[svyee@localhost ~]$ sudo mkdir /good
Password: <=輸入svyee的密碼便可。
# OK,成功創建目錄good。
[svyee@localhost ~]$ sudo rmdir /good
# 嘿嘿。刪除成功,不用再輸密碼了。


方便的是第一次使用sudo輸入密碼後,下一次就不用再輸密碼啦。
你看那Adobe Reader 搞什麼鬼,只有root身份才能打開。有sudo就輕鬆啦:

例4:運行特權軟件

[svyee@localhost ~]$ sudo acroread
# 一會 Adobe Reader 就乖乖打開了。

(上例更簡便的方法見:暱稱時代, alias 讓 Linux 命令更簡練

例5:變爲 root 環境

[svyee@localhost ~]$ sudo -s
Password: <=輸入svyee的密碼便可。
[root@localhost ~]#

就到這吧。以爲膚淺?歡迎留下您的高見,俺菜鳥啊。

相關文章
相關標籤/搜索