我使用的是從 19.04 升級的 19.10。作業系統是從下載的虛擬機器映像 https://www.osboxes.org/ubuntu/ 下載的鏡像是19.04,我已經升級到19.10。在 vmware 中從 19.04 升級到 19.10 後,ubuntu 陷入啟動狀態 [最終核心恐慌未同步:VFS:無法在區塊 (0,0) 上掛載 root fs]
預設密碼是https://www.osboxes.org/faq/what-are-the-credentials-for-virtual-machine-image/
我有一個預設的管理員帳戶osboxes.org,我將其刪除並創建了一個名為debian 的新用戶(這是我從19.04 升級後在19.10 上執行的)在升級前使用機器期間,我可能重置了我忘記的root 密碼,升級後我已經刪除了原來的使用者帳號 osboxes.org。我創建了一個新用戶用戶名:debian 我也忘記了它的密碼。所以我想到按照這裡的解釋重置root密碼 https://md3v.com/linux-give-root-password-for-maintenance-lost-password
一切都很順利,我能夠重設 root 密碼。現在,當我嘗試以 root 身分從 Gnome 介面登入時,更新的密碼不被接受,因此我被鎖定。我怎麼才能擺脫這種情況,我也沒有看到任何錯誤訊息。我將 root 密碼設定為 debian,但這不起作用。
答案1
圖形化不支援 root 登入。一般來說,這與 root 登入是分開的,啟用後效果很好,但我們通常不鼓勵它們,因為它可以為sudo
您提供相同的功能並具有一些優勢(請參閱下文)。
阻止您以 root 身分以圖形方式登入的特定機制(假設您正確輸入 root 密碼)是您的顯示管理器配置為不允許它們。您可以嘗試重新配置它,這樣它就可以了(您的顯示管理器可能是 GDM)。但即使您這樣做,圖形 root 登入也可能有效非常糟糕(如果有的話),因為這不是 Ubuntu 支援或測試的用例。
也應該避免圖形 root 登錄,因為它們涉及不必要地以 root 身分運行很多東西。即使它們工作完美,我們仍然建議用戶在任何情況下都不要使用它們。 (這就是為什麼沒有努力讓它們在 Ubuntu 中運作。)
當您以圖形方式登入時,您應該以非 root 使用者身分登入。什麼時候 -如果--您應該以 root 身分登錄,並且能,以非圖形方式進行。儘管您可以使用為 root 設定密碼的相同方法為另一用戶設定密碼,但您不必這樣做。由於您已啟用 root 登錄,因此您可以有效地為非 root 使用者設定密碼,而無需重新啟動:
Ctrl按+ Alt+切換到基於文字的虛擬控制台F2。
(一般來說,Ctrl++Alt切換到虛擬控制台。當你切換虛擬控制台時Fn
ttyn
從是基於文字的,您可以Ctrl從該組合鍵中省略,但不是必須的。root
輸入使用者名稱和您為 root 設定的密碼作為密碼登入。這是非圖形登入。根據您提供的信息,沒有理由認為此操作會失敗。執行為某些非 root 使用者帳號設定密碼
passwd user
user
。代替user
與實際的用戶名。或運行創建新用戶
adduser user
user
。輸入所需的資訊。真正重要的是密碼,儘管大多數人也想在全名字段中輸入一些內容。切換回運行 GUI 的虛擬控制台。這通常是這樣,
tty7
因此請按Ctrl++ 。AltF7以您設定密碼的使用者登入。
由於您已啟用 root 帳戶,因此您可以su
在終端機中執行以取得 root shell,您可以從中以 root 身分執行命令。su -
如果您希望其充當初始登入 shell,請使用。您從中獲得的 shellsu
或su -
可以持續使用您喜歡的時間(即,直到您exit
在其中運行或以其他方式退出它),但最好僅將其用於非 root 使用者無法直接執行的管理任務。以 root 身分執行單一命令而不是啟動 shell。 (什麼時候su -c 'some-command'
some-command
只是一個單詞,即當沒有命令列參數時,您可以省略引號su
。每次運行時都必須輸入它su
。
照這樣說,sudo
和pkexec
-- 而不是 root 登入 和su
-- 是在 Ubuntu 上執行管理操作的通常推薦方法。我建議您考慮向該群組新增一個非 root 使用者sudo
(現有使用者或新使用者),這使該使用者成為管理員。然後該使用者可以使用sudo
( 和)以 root 身分執行命令pkexec
。執行此操作的一種方法是運行上面的步驟 3。或者您現有的非 root 使用者帳戶可能已經在該群組中;你可以跑去檢查一下。usermod -a -G sudo user
sudo
groups user
要以 root 身分執行命令sudo
,通常會使用。即使當sudo some-command
some-command
由多個單字組成,不需要(也不得)引用。這是sudo
比 更容易的方法之一su -c
。
您也不必每次都輸入密碼;相反,您只需輸入它即可在過去幾分鐘內sudo
未使用過的終端中使用。sudo
這樣,僅當您需要時才以 root 身份運行命令是高效的,因為您可以將命令與其他命令交錯,而不必像使用而不是那樣sudo
多次鍵入密碼,並且無需最終運行輸入到的所有命令該終端以root 身份運行,就像您以前獲得 root shell 一樣。su -c
sudo
su
如果你做想要一個 root shell,您可以使用 獲得一個sudo -s
,這與您從 獲得的非常相似su
,或者sudo -i
,這與您獲得的幾乎相同su -
。
當你使用時sudo
,你輸入你的密碼,不是 root 的密碼。因此root不需要設定密碼; root 帳戶可以被“停用”,但您仍然可以使用 root 身分執行命令sudo
。
如果您決定完全切換到這種推薦的方法——也就是說,如果您以大多數 Ubuntu 用戶(以及相當一部分 Debian 用戶)的方式管理系統——那麼您可以重新禁用 root 登入透過跑步sudo passwd -dl root
。這將使您無法以 root 身分登入或成為 root su
,但您仍然可以成為 root sudo
,包括 with sudo -i
。