在Linux操作系統(tǒng)中,root的權(quán)限是最高的,也被稱為超級權(quán)限的擁有者。普通用戶無法執(zhí)行的操作,root用戶都能完成,所以也被稱之為超級管理用戶。
在系統(tǒng)中,每個文件、目錄和進(jìn)程,都?xì)w屬于某一個用戶,沒有用戶許可其它普通用戶是無法操作的,但對root除外。root用戶的特權(quán)性還表現(xiàn)在root 可以超越任何用戶和用戶組來對文件或目錄進(jìn)行讀取、修改或刪除(在系統(tǒng)正常的許可范圍內(nèi));對可執(zhí)行程序的執(zhí)行、終止;對硬件設(shè)備的添加、創(chuàng)建和移除等; 也可以對文件和目錄進(jìn)行屬主和權(quán)限進(jìn)行修改,以適合系統(tǒng)管理的需要(因為root是系統(tǒng)中權(quán)限最高的特權(quán)用戶);
一、對超級用戶和普通用戶的理解;
1、什么是超級用戶;
在所有Linux系統(tǒng)中,系統(tǒng)都是通過UID來區(qū)分用戶權(quán)限級別的,而UID為0的用戶被系統(tǒng)約定為是具有超級權(quán)限。超級用戶具有在系統(tǒng)約定的最高權(quán)限滿 園內(nèi)操作,所以說超級用戶可以完成系統(tǒng)管理的所有工具;我們可以通過/etc/passwd 來查得UID為0的用戶是root,而且只有root對應(yīng)的UID為0,從這一點來看,root用戶在系統(tǒng)中是無可替代的至高地位和無限制權(quán)限。root 用戶在系統(tǒng)中就是超級用戶;
2、理解 UID 和用戶的對應(yīng)關(guān)系
當(dāng)系統(tǒng)默認(rèn)安裝時,系統(tǒng)用戶和UID 是一對一的對關(guān)系,也就是說一個UID 對應(yīng)一個用戶。我們知道用戶身份是通過UID 來確認(rèn)的,我們在 《用戶(user)和用戶組(group)配置文件詳解》中的UID 的解說中有談到"UID 是確認(rèn)用戶權(quán)限的標(biāo)識,用戶登錄系統(tǒng)所處的角色是通過UID 來實現(xiàn)的,而非用戶名;把幾個用戶共用一個UID 是危險的,比如我們把普通用戶的UID 改為0,和root共用一個UID ,這事實上就造成了系統(tǒng)管理權(quán)限的混亂。如果我們想用root權(quán)限,可以通過su或sudo來實現(xiàn);切不可隨意讓一個用戶和root分享同一個UID ;"
在系統(tǒng)中,能不能讓UID 和用戶是一對多的關(guān)系?是可以的,比如我們可以把一個UID為0這個值分配給幾個用戶共同使用,這就是UID 和用戶的一對多的關(guān)系。但這樣做的確有點危險;相同UID的用戶具有相同的身份和權(quán)限。比如我們在系統(tǒng)中把beinan這個普通用戶的UID改為0后,事 實上這個普通用戶就具有了超級權(quán)限,他的能力和權(quán)限和root用戶一樣;用戶beinan所有的操作都將被標(biāo)識為root的操作,因為beinan的 UID為0,而UID為0的用戶是root ,是不是有點擾口?也可以理解為UID為0的用戶就是root ,root用戶的UID就是0;
UID和用戶的一對一的對應(yīng)關(guān)系 ,只是要求管理員進(jìn)行系統(tǒng)管理時,所要堅守的準(zhǔn)則,因為系統(tǒng)安全還是第一位的。所以我們還是把超級權(quán)限保留給root這唯一的用戶是最好的選擇;
如果我們不把UID的0值的分享給其它用戶使用,只有root用戶是唯一擁有UID=0的話,root用戶就是唯一的超級權(quán)限用戶;
3、普通用戶和偽裝用戶
與超級用戶相對的就是普通用戶和虛擬(也被稱為偽裝用戶),普通和偽裝用戶都是受限用戶;但為了完成特定的任務(wù),普通用戶和偽裝用戶也是必須 的;Linux是一個多用戶、多任務(wù)的操作系統(tǒng),多用戶主要體現(xiàn)在用戶的角色的多樣性,不同的用戶所分配的權(quán)限也不同;這也是Linux系統(tǒng)比Windows系統(tǒng)更為安全的本質(zhì)所在,即使是現(xiàn)在最新版本的Windows 2003 ,也無法抹去其單用戶系統(tǒng)的烙?。?br />
二、超級用戶(權(quán)限)在系統(tǒng)管理中的作用
超級權(quán)限用戶(UID為0的用戶)到底在系統(tǒng)管理中起什么作用呢?主要表現(xiàn)在以下兩點;
1、對任何文件、目錄或進(jìn)程進(jìn)行操作;
但值得注意的是這種操作是在系統(tǒng)最高許可范圍內(nèi)的操作;有些操作就是具有超級權(quán)限的root也無法完成;
比如/proc 目錄,/proc 是用來反應(yīng)系統(tǒng)運(yùn)行的實時狀態(tài)信息的,因此即便是root也無能為力;它的權(quán)限如下
[root@localhost ~]# pwd
/root
[root@localhost ~]# cd /
[root@localhost /]# ls -ld /proc/
dr-xr-xr-x 134 root root 0 2005-10-27 /proc/
就是這個目錄,只能是讀和執(zhí)行權(quán)限,但絕對沒有寫權(quán)限的;就是我們把/proc 目錄的寫權(quán)限打開給root,root用戶也是不能進(jìn)行寫操作;
[root@localhost ~]# chmod 755 /proc
[root@localhost /]# ls -ld /proc/
drwxr-xr-x 134 root root 0 2005-10-27 /proc/
[root@localhost /]# cd /proc/
[root@localhost proc]# mkdir testdir
mkdir: 無法創(chuàng)建目錄'testdir': 沒有那個文件或目錄
2、對于涉及系統(tǒng)全局的系統(tǒng)管理;
硬件管理、文件系統(tǒng)理解、用戶管理以及涉及到的系統(tǒng)全局配置等等……如果您執(zhí)行某個命令或工具時,提示您無權(quán)限,大多是需要超級權(quán)限來完成;
比如用adduser來添加用戶,這個只能用通過超級權(quán)限的用戶來完成;
3、超級權(quán)限的不可替代性;
由于超級權(quán)限在系統(tǒng)管理中的不可缺少的重要作用,為了完成系統(tǒng)管理任務(wù),我們必須用到超級權(quán)限;在一般情況下,為了系統(tǒng)安全,對于一般常規(guī)級別的應(yīng)用,不 需要root用戶來操作完成,root用戶只是被用來管理和維護(hù)系統(tǒng)之用;比如系統(tǒng)日志的查看、清理,用戶的添加和刪除……
在不涉及系統(tǒng)管理的工作的環(huán)境下,普通用戶足可以完成,比如編寫一個文件,聽聽音樂;用gimp 處理一個圖片等…… 基于普通應(yīng)用程序的調(diào)用,大多普通用戶就可以完成;
當(dāng)我們以普通權(quán)限的用