但是幾年4月份推出的新版本,卻導致一些用戶發現自己的電腦安裝了 7.04 之後,Ubuntu 系統就不能啓動了,報告該問題的用戶中相當多數使用的是東芝的筆記本。這其實是個和硬盤控制器相關的老問題,在 6.06 和 6.10 中已經得到解決,但是不知道由於什麼緣故,導致這個 bug 的代碼又恢復成以前的樣子。
導致該問題的原因是兩個 kernel module 加載的順序。在 7.04 中,kernel 首先加載 ata_piix 模塊,然後加載 ahci 模塊,但是對於我使用的這個型號的筆記本,要求首先加載 ahci 模塊,然後再加載 ata_piix 模塊。在 Ubuntu Forums 上,已經有牛人提供了如何在 Toshiba S100 筆記本上安裝 Ubuntu 7.04 的方法。我借鑑過來,稍事修改步驟,即可用於從 6.10 升級到 7.04。詳細步驟如下:
- 運行 Update Manager,開始升級工作。或者從 Ubuntu CD 上升級,因爲網絡升級實在太慢,我花了大概6個小時才下載完所有的 package。不過如果是從 CD 上升級的話,其中很多 package 不是最新版本的,還是需要花費不少時間用來執行 apt-get upgrade。
- 升級完成之後,千萬不要立即重啓!接下來要做的是:關閉升級成功的提示窗口。
- 編寫一個腳本文件,代碼如下:
#!/bin/sh
PREREQ=””
prereqs() {
echo “$PREREQ”
}
case $1 in
# get pre-requisites
preregs)
preregs
exit 0
;;
esac
modprobe -r ata_piix
modprobe ahci
modprobe -r ahci
modprobe ahci
modprobe ata_piix
# This is the end of the script - 然後打開一個終端窗口,切換到 /boot 目錄,執行 sudo update-initramfs -k 'all' -u 命令,更新所有 initrd.img 文件。也可以用 -k 參數具體地指定更新某個版本的 initrd.img 文件。
- 更新完成之後,重啓 Ubuntu。
- 如果安裝過 Nvidia 自己的顯卡驅動程序(例如 NVIDIA-Linux-x86-1.0-9755-pkg1.run)的話,X 啓動時會報告錯誤,只需要重新編譯安裝驅動程序即可。
Update@2007-09-10:
需要注意的是:在升級了內核之後,務必在重新啓動之前重複以上步驟。