首頁>技術>

當你剛開始使用 Linux 時,你將發現與 Windows 的很多不同。其中一個“不同的東西”是 root 使用者的概念。-- Abhishek Prakash(作者)

當你剛開始使用 Linux 時,你將發現與 Windows 的很多不同。其中一個“不同的東西”是 root 使用者的概念。

在這個初學者系列中,我將解釋幾個關於 Ubuntu 的 root 使用者的重要的東西。

請記住,儘管我正在從 Ubuntu 使用者的角度編寫這篇文章,它應該對大多數的 Linux 發行版也是有效的。

你將在這篇文章中學到下面的內容:

為什麼在 Ubuntu 中禁用 root 使用者像 root 使用者一樣使用命切換為 root 使用者解鎖 root 使用者什麼是 root 使用者?為什麼它在 Ubuntu 中被鎖定?

在 Linux 中,有一個稱為 root 的超級使用者。這是超級管理員賬號,它可以做任何事以及使用系統的一切東西。它可以在你的 Linux 系統上訪問任何檔案和執行任何命令。

能力越大,責任越大。root 使用者給予你完全控制系統的能力,因此,它應該被謹慎地使用。root 使用者可以訪問系統檔案,執行更改系統配置的命令。因此,一個錯誤的命令可能會破壞系統。

這就是為什麼 Ubuntu 和其它基於 Ubuntu 的發行版預設鎖定 root 使用者,以從意外的災難中挽救你的原因。

對於你的日常任務,像移動你家目錄中的檔案,從網際網路下載檔案,建立文件等等,你不需要擁有 root 許可權。

打個比方來更好地理解它。假設你想要切一個水果,你可以使用一把廚房用刀。假設你想要砍一顆樹,你就得使用一把鋸子。現在,你可以使用鋸子來切水果,但是那不明智,不是嗎?_

這意味著,你不能是 Ubuntu 中 root 使用者或者不能使用 root 許可權來使用系統嗎?不,你仍然可以在 sudo 的幫助下來擁有 root 許可權來訪問(在下一節中解釋)。

要點: 使用於常規任務,root 使用者許可權太過強大。這就是為什麼不建議一直使用 root 使用者。你仍然可以使用 root 使用者來執行特殊的命令。

對於一些系統的特殊任務來說,你將需要 root 許可權。例如。如果你想 通過命令列更新 Ubuntu ,你不能作為一個常規使用者執行該命令。它將給出許可權被拒絕的錯誤。

apt updateReading package lists... DoneE: Could not open lock file /var/lib/apt/lists/lock - open (13: Permission denied)E: Unable to lock directory /var/lib/apt/lists/W: Problem unlinking the file /var/cache/apt/pkgcache.bin - RemoveCaches (13: Permission denied)W: Problem unlinking the file /var/cache/apt/srcpkgcache.bin - RemoveCaches (13: Permission denied)

那麼,你如何像 root 使用者一樣執行命令?簡單的答案是,在命令前新增 sudo,來像 root 使用者一樣執行。

sudo apt update

Ubuntu 和很多其它的 Linux 發行版使用一個被稱為 sudo 的特殊程式機制。sudo 是一個以 root 使用者(或其它使用者)來控制執行命令訪問的程式。

實際上,sudo 是一個非常多用途的工具。它可以配置為允許一個使用者像 root 使用者一樣來執行所有的命令,或者僅僅一些命令。你也可以配置為無需密碼即可使用 sudo 執行命令。這個主題內容比較豐富,也許我將在另一篇文章中詳細討論它。

就目前而言,你應該知道 當你安裝 Ubuntu 時 ,你必須建立一個使用者賬號。這個使用者賬號在你係統上以管理員身份來工作,並且按照 Ubuntu 中的預設 sudo 策略,它可以在你的系統上使用 root 使用者許可權來執行任何命令。

sudo 的問題是,執行 sudo 不需要 root 使用者密碼,而是需要使用者自己的密碼。

並且這就是為什麼當你使用 sudo 執行一個命令,會要求輸入正在執行 sudo 命令的使用者的密碼的原因:

[email protected]:~$ sudo apt update[sudo] password for abhishek:

正如你在上面示例中所見 abhishek 在嘗試使用 sudo 來執行 apt update 命令,系統要求輸入 abhishek 的密碼。

如果你對 Linux 完全不熟悉,當你在終端中開始輸入密碼時,你可能會驚訝,在螢幕上什麼都沒有發生。這是十分正常的,因為作為預設的安全功能,在螢幕上什麼都不會顯示。甚至星號(*)都沒有。輸入你的密碼並按回車鍵。

要點:為在 Ubuntu 中像 root 使用者一樣執行命令,在命令前新增 sudo。 當被要求輸入密碼時,輸入你的賬戶的密碼。當你在螢幕上輸入密碼時,什麼都看不到。請繼續輸入密碼,並按回車鍵。

如何在 Ubuntu 中成為 root 使用者?

你可以使用 sudo 來像 root 使用者一樣執行命令。但是,在某些情況下,你必須以 root 使用者身份來執行一些命令,而你總是忘了在命令前新增 sudo,那麼你可以臨時切換為 root 使用者。

sudo 命令允許你來模擬一個 root 使用者登入的 shell ,使用這個命令:

sudo -i
[email protected]:~$ sudo -i[sudo] password for abhishek:[email protected]:~# whoamiroot

你將注意到,當你切換為 root 使用者時,shell 命令提示符從 $(美元符號)更改為 #(英鎊符號)。我開個(拙劣的)玩笑,英鎊比美元強大。

雖然我已經向你顯示如何成為 root 使用者,但是我必須警告你,你應該避免作為 root 使用者使用系統。畢竟它有阻攔你使用 root 使用者的原因。

另外一種臨時切換為 root 使用者的方法是使用 su 命令:

sudo su

如果你嘗試使用不帶有的 sudo 的 su 命令,你將遇到 “su authentication failure” 錯誤。

你可以使用 exit 命令來恢復為正常使用者。

exit
如何在 Ubuntu 中啟用 root 使用者?

現在你知道,root 使用者在基於 Ubuntu 發行版中是預設鎖定的。

Linux 給予你在系統上想做什麼就做什麼的自由。解鎖 root 使用者就是這些自由之一。

如果出於某些原因,你決定啟用 root 使用者,你可以通過為其設定一個密碼來做到:

sudo passwd root

再強調一次,不建議使用 root 使用者,並且我也不鼓勵你在桌面上這樣做。如果你忘記了密碼,你將不能再次 在 Ubuntu 中更改 root 使用者密碼 。(LCTT 譯註:可以通過單使用者模式修改。)

你可以通過移除密碼來再次鎖定 root 使用者:

sudo passwd -dl root
最後…

我希望你現在對 root 概念理解得更好一點。如果你仍然有些關於它的困惑和問題,請在評論中讓我知道。我將嘗試回答你的問題,並且也可能更新這篇文章。


via: https://itsfoss.com/root-user-ubuntu/

最新評論
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • 使用程式碼建立SAP BRF ruleset