為什麼`sudo su -`仍然嘗試執行終止符?

為什麼`sudo su -`仍然嘗試執行終止符?

我最近遇到了 shell 模擬器終結器的問題,導致我將其卸載。現在當我打字時

sudo su -

我得到以下回應:

Cannot execute /usr/bin/terminator: No such file or directory

之前我做了以下事情:

sudo apt-get remove terminator
sudo apt-get purge terminator
rm -r ~/.config/terminator

也改變了:

sudo update-alternatives --config x-terminal-emulator

/usr/bin/xterm

為什麼sudo su -仍然嘗試執行終結者?我該如何調試這個問題?

答案1

您已將/usr/bin/terminator其設定為 root 的預設 shell(請參閱註釋)。您可以使用以下命令將其變更回您喜歡的任何 shell:

sudo chsh -s /bin/bash root

也不應該sudo工作,您可以按照以下過程修復它(假設您使用的是 GRUB):

  1. 重啟
  2. 如果啟動選單沒有自動顯示,請重新啟動並重複點擊↑ Shift直到出現。
  3. 在啟動選單中,按e可編輯項目。
  4. 導航到該行的末尾,類似於

    linux /boot/vmlinuz-... quiet splash
    
  5. 替換quiet splashinit=/bin/bash並按Ctrl+X啟動修改後的條目。您將被轉到 root shell。

  6. 重新掛載可寫入的根檔案系統mount -o rw,remount /
  7. 將 root 的預設 shell 更改回例如 BASH,使用chsh -s /bin/bash root.
  8. 重新啟動reboot

相關內容