問題出現過程
*** 我的環境: visualbox 虛擬機 Ubuntu 18.04 桌面版
IP:192.168.1.186 (最初從 192.168.1.185 克隆過來的)
- 20190423 晚上準備安裝一個 UNlet standalone 和 一個 Eclipse UMlet
插件的時候,系統彈出來一些軟件更新,沒有注意就接受了更新! - 過程中 Eclipse marketplace 很慢,所以更換download 鏡像等類似操作,沒有注意更新是否完成,是否成功!
- 關機時特意不敢強制關機,因爲之前曾經發生過 eclipse 在強制關機之後,丟失了剛剛的一些文件
- 但是,意想不到的事情還是發生了,再次啓動的時候,黑白屏幕一大堆啓動命令之後(從來沒有仔細看過啓動畫面的命令行),最終停止了!爆出來錯誤
Unable to mount root fs on unknown-block(0,0)
- 來回重複幾次,都是一樣的結果
解決問題過程
1、嘗試recover 啓動失敗
2、嘗試選擇其他版本,可以啓動
*** 因爲是回覆之後才記錄的,已經不記得是怎麼進入到 高級啓動模式的了
*** 反正是啓動的時候我隨意按 上下箭頭
*** 也許是 Ubuntu 本身就有這一個選項,只在啓動失敗的時候
如下圖,選擇 Advanced options for Ubuntu
選擇第三項: Ubuntu , with 4.15.0-47-generic,居然可以這次呢廣場啓動,而且就是我剛剛操作 Eclipse 的時候的樣子!
*** 說明我剛纔只顧着操作 Eclipse,沒有注意後臺升級沒有完成!
*** 以後再升級的時候,老老實實等着!
3、嘗試修復錯誤
參考:
https://www.cnblogs.com/DM428/p/9150361.html
https://blog.csdn.net/liziliyeh/article/details/79274711
以上 2 個參考,雖然原因和處理過程不一樣,但是,幫助我大概明白了問題所在,所以,要感謝以上兩位博主!
還有百度過很多其他更復雜的原因,因爲我對 grub 完全不明白,那些文章看來懵懵懂懂!
-
因爲是虛擬機,找一個同類對比:運行的內核版本
192.168.1.186 (出錯誤的)
$ uname -a
Linux ubuntu1804-186 4.15.0-47-generic #50-Ubuntu SMP Wed Mar 13 10:44:52 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux192.168.1.185 (原始的)
$ uname -a
Linux dhbmubuntu1804-185 4.15.0-45-generic #48-Ubuntu SMP Tue Jan 29 16:28:13 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux -
查詢對比 2 個虛擬機的內核版本
192.168.1.186 (出錯誤的)
$ dpkg --list |grep linux-imagerc linux-image-4.15.0-29-generic 4.15.0-29.31 amd64 Signed kernel image generic rc linux-image-4.15.0-45-generic 4.15.0-45.48 amd64 Signed kernel image generic ii linux-image-4.15.0-46-generic 4.15.0-46.49 amd64 Signed kernel image generic ii linux-image-4.15.0-47-generic 4.15.0-47.50 amd64 Signed kernel image generic it linux-image-4.15.0-48-generic 4.15.0-48.51 amd64 Signed kernel image generic ii linux-image-generic 4.15.0.48.50 amd64 Generic Linux kernel image
192.168.1.185 (原始的)
$ dpkg --list |grep linux-imageii linux-image-4.15.0-29-generic 4.15.0-29.31 amd64 Signed kernel image generic ii linux-image-4.15.0-45-generic 4.15.0-45.48 amd64 Signed kernel image generic ii linux-image-generic 4.15.0.45.47 amd64 Generic Linux kernel image
-
重新運行失敗的新版本升級
$ sudo update-initramfs -u -k 4.15.0-48-generic[sudo] password for dhbm: update-initramfs: Generating /boot/initrd.img-4.15.0-48-generic
$ sudo update-grub2
$ sudo reboot
哈哈哈哈!ok了!
4 、 亡羊補牢:去掉自動更新
** 之前我還總想 18.04 升級到 18.10 ,現在剛知道 18.04 是 LTS 版本 ,18.10 不是!
** 作爲日常使用的電腦,當然是穩定最重要!
- 找到 自動更新設置
左下角“”應用,在搜索框輸入 update (中文版可能叫 更新)
- 找到更新設置
3 個和 update 有關的應用,第一個是設置,第二個是查找有沒有可以更新的軟件,第三個大概相當於應用商店
- 去掉 自動更新
將 Automatically check… 和 Notify… 都改成 Never!
什麼時候想升級,手動操作去!