Root 是誰?為什麼會有 Root 賬戶?
在 Linux 中為什麼會有一個名為 root 的特定賬戶?該怎麼使用 root 賬戶?它在哪些場景下必須使用,哪些場景下不能使用?對於以上幾個問題,如果您感興趣的話,那麼請繼續閱讀。
本文中,我們提供了一些關於 root 賬戶的參考資料,方便您了解。
root 是什麼?
首先,記住這一點,在 Unix 類操作係統中,目錄的層級結構被設計為樹狀結構。起始目錄是一個特殊目錄,使用斜杠 /
表示,而其他目錄都是由起始目錄分支而來。由於這種結構很像現實中的樹,所以 /
也被稱為根root目錄。
下圖,我們可以看到以下命令的輸出:
$ tree -d / | less
該命令主要是演示一下 /
根目錄和樹根root的類比。
Linux 的目錄層級
雖然 root 賬戶命名的原因還不是很清楚,可能是因為 root 賬戶是唯一一個在根目錄 /
中有寫權限的賬號吧。
此外,由於 root 賬戶可以訪問 Unix 類操作係統中的所有文件和命令,因此,它也常被稱為超級用戶。
另外,根目錄 /
和 /root
目錄不能混淆了,/root
目錄是 root
賬戶的家目錄。實際上,/root
目錄是根目錄 /
的子目錄。
獲取 root 權限
當我們說到 root(或者超級用戶)權限的時候,我們指的是這樣一種賬戶的權限:其在係統上的權限包含(但不限於)修改係統並授權其他用戶對係統資源的訪問權限。
胡亂使用 root 賬戶,輕則係統崩潰重則係統完全故障。這就是為什麼會說,以下準則是使用 root 賬戶的正確姿勢:
首先,使用 root 賬戶運行 visudo
命令編輯 /etc/sudoers
文件,給指定賬戶(如:supervisor
)授予最低的超級用戶權限。
最低超級用戶權限可以包含,例如:添加用戶 (adduser
)、修改用戶 (usermod
)等權限。
接著,使用 supervisor
賬戶登錄並使用 sudo
執行用戶管理任務。此時,你可能會發現,當你執行需要超級用戶權限(例如:刪除軟件包)的其它任務時,會失敗。
沒有使用超級用戶權限運行命令
在必須使用超級用戶權限時,重複執行以上兩個步驟,一旦執行完成,則立即使用 exit
命令退回到無特限的賬戶。
此時,你需要確定一下其他周期性的任務是否需要超級用戶權限?如果需要,那麼在 /etc/sudoers
中,給指定的賬戶或組授予必要的權限,盡量避免直接使用 root
賬戶操作。
原文發布時間為:2017-02-20
本文來自雲棲社區合作夥伴“Linux中國”
最後更新:2017-05-25 09:02:33