如何在 Ubuntu 中切換用戶(初學者友好的逐步指南)
如何在 Ubuntu 中切換用戶(初學者友好的逐步指南)
在 Ubuntu 中切換用戶是一項非常常見的任務,特別是當您管理 VPS、為多位開發人員維護伺服器,或僅僅是在不同帳戶下測試權限時。
無論您是在桌面上使用 Ubuntu 還是在雲伺服器上無頭運行它,都有幾種可靠的方法可以安全地切換用戶。本指南將引導您了解 所有實用的方法,解釋何時使用每一種方法,並強調常見的錯誤以避免。
為什麼您可能需要在 Ubuntu 中切換用戶
在深入命令之前,了解 為什麼 切換用戶很重要:
- 以 root 或其他特權用戶身份執行管理任務
- 在不同帳戶下測試文件權限或應用程序行為
- 管理多用戶伺服器(共享 VPS、測試環境)
- 通過避免不必要的 root 訪問來提高安全性
Ubuntu 的設計理念是 最小特權,因此正確地切換用戶是一項基本技能。
方法 1:使用 su 切換用戶
su 命令(代表 substitute user)允許您切換到另一個用戶帳戶。
基本語法
su username範例:
su john系統會提示您輸入 john 的密碼,經過身份驗證後,您的 shell 將切換到該用戶。
切換到 root 用戶
su -或
su root注意:在 Ubuntu 中,root 帳戶預設是禁用的。如果未啟用 root 登錄,則此命令將失敗。
有關 su 的關鍵事項
需要目標用戶的密碼
除非使用 su -,否則不會加載完整的登錄環境
在 Ubuntu 中使用頻率低於 sudo
方法 2:使用 sudo su 切換用戶(在 Ubuntu 中最常見)
Ubuntu 鼓勵使用 sudo 而不是直接的 root 訪問。
使用 sudo 切換到 root
sudo su或要加載完整的 root 環境:
sudo su -這使用的是您自己的密碼,而不是 root 的密碼。
使用 sudo 切換到另一個用戶
sudo su - username範例:
sudo su - deploy這在您不知道(或不想使用)其他用戶密碼的 VPS 伺服器上非常有用。
方法 3:使用 sudo -i(建議用於 root 訪問)
如果您的目標是成為 root,這是最乾淨和安全的方法:
sudo -i此命令:
切換到 root
加載 root 的環境
保留 Ubuntu 的安全模型
對於大多數管理員來說,sudo -i 比 su 更受青睞。
方法 4:臨時切換用戶以執行單個命令
如果您不需要完整的 shell,您可以以另一個用戶身份運行命令。
以另一個用戶身份運行命令
sudo -u username command範例:
sudo -u www-data ls /var/www這非常適合:
測試權限
以服務用戶身份運行腳本
避免不必要的 shell 切換
方法 5:在 Ubuntu 桌面中切換用戶(GUI)
如果您使用的是帶有圖形界面的 Ubuntu:
點擊系統菜單(右上角)
選擇登出
從登錄屏幕中選擇另一個用戶
某些桌面環境還支持快速用戶切換,允許多個用戶同時保持登錄狀態。
常見錯誤需避免
使用 su 而不加 -,這可能導致缺少環境變量
以 root 身份運行日常任務,增加安全風險
忘記退出 root,特別是在生產伺服器上
在以 root 登錄時無意中更改文件擁有權
始終仔細檢查您當前使用的是哪個用戶:
whoami常見問題解答:
- su 和 sudo su 有什麼區別?
su 需要目標用戶的密碼,而 sudo su 使用您的密碼並遵循 Ubuntu 的權限系統。在 Ubuntu 伺服器上,sudo su 更為常見。
- 為什麼 su root 在 Ubuntu 上無法工作?
出於安全原因,Ubuntu 預設禁用直接的 root 登錄。您應該使用 sudo su 或 sudo -i。
- 哪個更好:sudo su 還是 sudo -i?
對於 root 訪問,通常建議使用 sudo -i,因為它能夠乾淨地加載 root 的環境並遵循 Ubuntu 的最佳實踐。
- 我如何知道我當前登錄的是哪個用戶?
運行:
whoami或
id- 我可以在沒有密碼的情況下切換用戶嗎?
只有在您的帳戶具有 sudo 權限的情況下可以。否則,切換用戶始終需要身份驗證。