目次
1. Ubuntu 中的 root 帳戶概述與角色
Ubuntu 的「root 帳戶」擁有系統內最高權限,可進行系統管理、設定變更及操作文件系統等管理工作。然而,在 Ubuntu 的初始設定中,root 帳戶的直接登入是被禁用的,通常透過 sudo
指令來暫時獲取管理權限。
為什麼 root 帳戶預設為禁用?
Ubuntu 預設禁用 root 帳戶的原因是為了降低操作錯誤和安全風險。透過 sudo
指令,使用者可以在需要時暫時獲取管理員權限,這樣能有效降低影響整個系統的誤操作風險,提高安全性。
2. 啟用 root 帳戶的方法
如果在特定的系統管理工作中需要直接存取 root 帳戶,可以按照以下步驟啟用。但由於這會帶來安全風險,因此應謹慎操作。
啟用 root 帳戶的步驟
- 設定密碼
打開終端機,輸入以下指令來設定 root 的密碼。
sudo passwd root
- 系統會提示輸入 root 帳戶的密碼。設定完成後,即可使用 root 帳戶登入。
- 允許 GUI 登入(如有需要)
如果希望在 GUI 環境中使用 root 帳戶登入,可以修改/etc/gdm3/custom.conf
檔案,加入以下設定。
[security]
AllowRoot=true
- 此設定適用於需要在桌面環境下進行管理工作的情況。一般建議使用 CLI(指令列介面)來管理系統。
- 啟用 root 帳戶後的注意事項
啟用 root 帳戶後,誤操作可能會影響整個系統,並且增加了遭受未授權存取的風險。因此,日常管理工作應盡量使用sudo
指令,而非直接登入 root 帳戶。

3. 停用 root 登入的方法
禁用 root 帳戶可降低系統遭受未授權存取的風險。可以按照以下步驟來停用 root 帳戶的登入功能。
停用 root 帳戶的步驟
- 鎖定 root 帳戶
打開終端機,輸入以下指令來停用 root 帳戶。
sudo passwd -l root
- 此指令會鎖定 root 帳戶,使其無法登入。
- 停用 root 帳戶的好處
- 禁用 root 帳戶可以有效降低未授權存取風險,並減少因誤操作導致系統損壞的可能性。大多數系統管理工作可透過
sudo
指令完成,因此日常使用 root 帳戶的必要性較低。
4. root 帳戶的安全風險與防範措施
啟用 root 帳戶雖然能提升便利性,但同時也帶來更高的安全風險。以下說明常見的風險與建議的防範措施。
常見的安全風險
- 密碼被盜: 若未設定強密碼,root 帳戶可能遭到未授權存取。
- 遠端攻擊風險: 啟用 root 帳戶後,系統更容易成為駭客攻擊的目標。
安全防範措施
- 設定強密碼
請使用包含大寫、小寫字母、數字和特殊符號的複雜密碼,並定期更換。 - 限制 SSH 存取
為了防止 root 帳戶透過 SSH 進行遠端登入,可修改/etc/ssh/sshd_config
檔案,加入以下設定:
PermitRootLogin no
- 完成設定後,請重新啟動 SSH 服務。此設定能有效防止 root 帳戶遭受遠端攻擊。
- 定期監控日誌
應定期檢查auth.log
(通常位於/var/log/auth.log
),監視 root 帳戶的使用狀況。如發現異常存取,應立即變更密碼,並採取額外的安全措施。

5. 在 GUI 應用程式中使用 pkexec
當 GUI 應用程式需要 root 權限時,建議使用 pkexec
取代 gksudo
,以確保安全且穩定的執行方式。pkexec
能夠最小化環境變數與檔案擁有權的影響,是以 root 權限啟動應用程式的安全方法。
pkexec 的使用範例
以下指令可用於以 root 權限開啟文字編輯器:
pkexec gedit /etc/fstab
- 這種方式可降低應用程式修改使用者家目錄設定檔的風險,提高系統的安全性。
6. 與 root 帳戶相關的故障排除
如果遇到 root 帳戶相關的問題,可以參考以下方法來解決。
重設 root 密碼的方法
- 透過單一使用者模式重設
- 如果忘記 root 密碼,可以透過單一使用者模式啟動系統,並使用
passwd
指令來重設密碼。
passwd root
修復 sudoers 檔案的方法
- 使用 visudo 指令
如果sudo
設定錯誤,應使用visudo
指令來編輯/etc/sudoers
檔案。visudo
具備語法檢查功能,可避免配置錯誤導致系統無法使用sudo
。
sudo visudo
7. 常見問題(FAQ)
- Q1: 啟用 root 帳戶有什麼缺點?
A: root 帳戶擁有系統的最高權限,因此任何操作錯誤都可能對系統造成嚴重影響。此外,啟用 root 帳戶會增加未授權存取的風險。因此,建議一般管理工作透過sudo
指令完成,僅在必要時啟用 root。 - Q2: 停用 root 帳戶後會有什麼影響?
A: 停用 root 帳戶後,將無法直接以 root 身分登入,但仍可透過sudo
指令獲取管理員權限。這樣做可提升系統的安全性,降低未授權存取的風險。 - Q3: pkexec 和 sudo 的差異是什麼?
A:pkexec
適用於 GUI 應用程式,可確保應用程式以 root 權限運行時不會影響檔案擁有權。而sudo
主要用於 CLI(命令列界面)。因此,在 GUI 環境下執行應用程式時,建議使用pkexec
。