我們知道在Windows中有一個超級管理員用戶,同樣的在Linux中也有一個超級管理員用戶,她就是 root 。而 root 用戶所在的組,稱為 root 組。 “組”是具有相似權限的多個用戶的集合。
那麼,root 能做哪些事情呢?
- 讀、寫和刪除系統上的任何文件,不顧它們的文件權限
- 設置系統上任何文件的所有者和權限
- 設置系統上任何用戶的密碼,root 密碼也可以直接設置無需輸入原密碼
- 免用戶密碼登錄任何賬戶
因為 root 擁有系統的所有權限,所以千萬不要與他人共享 root 密碼。一旦 root 密碼被洩露。竊取 root 密碼的人,將控制整臺計算機,擁有所有的用戶數據。
但是某些情況下,確實需要用 root 的身份來執行一些任務,比如添加或者刪除程序。基於這個需求,產生了 sudo ,就是在必要時使用 sudo 提權,把系統管理的一部分權限授予普通用戶,並且只有在這些用戶需要更高權限時,才允許用戶暫時性的使用root權限來管理系統。
普通用戶來提取權限有兩種方法
- su
<code># 切換到 root 賬戶,但是家目錄仍然是當前用戶的,需要 root 密碼。 su # 切換到 root 賬戶,家目錄也切換到 root ,需要 root 密碼。 su - /<code>
- sudo
<code>sudo command # 提升權限執行 command ,需要輸入當前用戶密碼。 sudo sh -c " apt update && apt dist-upgrade" # 提升權限執行一組命令。 ls | sudo tee -a /root/something.txt # 把 ls 輸出結果重定向到 something.txt 文件末尾。 sudo -H gui-application # sudo 執行圖形應用程序,最好加 -H 參數。/<code>