刪除Ubuntu舊版本內核

我也是在網上看了很多帖子才動手的,我的Ubuntu是10.10
覺得Ubuntu還是太脆弱,稍微胡整一下就葛屁了,雖然可以修復過來,但還是比較麻煩

下面就是我的記錄
參見了:http://hi.baidu.com/luoziding/blog/item/7e293daa367299a1ca130c6c.html
http://www.linuxjia.com/banben/ubuntu/2010/1223/288.html

lucane@KNIGHT:~$ dpkg --get-selections|grep linux-image
linux-image-2.6.35-22-generic install
linux-image-2.6.35-23-generic install
linux-image-generic install

目前我在用的內核是
lucane@KNIGHT:~$ uname -a
Linux KNIGHT 2.6.35-23-generic #41-Ubuntu SMP Wed Nov 24 10:18:49 UTC 2010 i686 GNU/Linux


所以要把22版本的搞掉
$sudo apt-get remove linux-image-2.6.35-22-generic

實際上執行完這個之後,啓動引導菜單已經自動幫我們修改好了,詳見後面日誌

重啓之後外帶執行這個,雖然我不知道是幹啥的
$sudo apt-get remove linux-headers-2.6.35-22-generic

刪完之後22內核已經處於deinstall狀態,如下:
lucane@KNIGHT:~$ dpkg --get-selections|grep linux-
linux-firmware install
linux-generic install
linux-headers-2.6.35-22 install
linux-headers-2.6.35-23 install
linux-headers-2.6.35-23-generic install
linux-headers-generic install
linux-image-2.6.35-22-generic deinstall
linux-image-2.6.35-23-generic install
linux-image-generic install
linux-libc-dev install
linux-sound-base install
syslinux-common install

看看執行時生成的日誌文件,就可以瞭解哪些工作是要我們手工做,哪些工作已經是自動完成了的

發現刪除完了之後右上角關機那個小按鈕消失了。只需要點『添加到面板』就可以把這些小程序找出來
當我再次重啓發現,這些又恢復了,我只好把我加上去的又刪掉


下面的這是在網上看別人寫的東西,以及參看官方文檔得出的東西,記錄在這裏準備用的,結果都沒用到

最後修改引導啓動菜單
sudo gedit /boot/grub/menu.lst

這個文件實際上在10之前已經修改爲grub.cfg了,網上有一部分人還是寫的這個文件,但是確實已經改了,到目錄下看看就知道了
我打開這個文件的時候sudo gedit /boot/grub/menu.lst,是系統新建的一個文件,裏面是空的

下面這個纔是有內容的,參見https://help.ubuntu.com/community/Grub2
sudo gedit /boot/grub/grub.cfg

該文件上面有一行
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

足可以表明該文件不用手動改,可以通過某個工具生成,當然估計也可以手動改

官方文檔上有一句
“grub.cfg is overwritten anytime there is an update, a kernel is added/removed, or the user runs update-grub.”

既然我手動刪除了內核,那麼系統應該自動會更改這個文件的內容,最壞的情況是我手動執行這個命令$sudo update-grub,讓它去更改那個文件

等執行update-grub讓他自動生成看有沒有什麼變化

或者自己手動改grub.cfg
打開,然後刪除不要的內核的那兩段就OK了
當然修改之前先cp備份一個出來,更保險

-----------------------我是華麗的分割線-----------------------

下面是執行日誌

lucane@KNIGHT:~$ sudo apt-get remove linux-image-2.6.35-22-generic
正在讀取軟件包列表... 完成
正在分析軟件包的依賴關係樹
正在讀取狀態信息... 完成
下列軟件包將被【卸載】:
linux-image-2.6.35-22-generic
升級了 0 個軟件包,新安裝了 0 個軟件包,要卸載 1 個軟件包,有 0 個軟件包未被升級。
解壓縮後將會空出 107MB 的空間。
您希望繼續執行嗎?[Y/n]y
(正在讀取數據庫 ... 系統當前共安裝有 150779 個文件和目錄。)
正在卸載 linux-image-2.6.35-22-generic ...
Examining /etc/kernel/prerm.d.
run-parts: executing /etc/kernel/prerm.d/dkms 2.6.35-22-generic /boot/vmlinuz-2.6.35-22-generic
dkms: uninstalling: fglrx 8.780 (2.6.35-22-generic) (i686)

-------- Uninstall Beginning --------
Module: fglrx
Version: 8.780
Kernel: 2.6.35-22-generic (i686)
-------------------------------------

Status: Before uninstall, this module version was ACTIVE on this kernel.

fglrx.ko:
- Uninstallation
- Deleting from: /lib/modules/2.6.35-22-generic/updates/dkms/
- Original module
- No original module was found for this module on this kernel.
- Use the dkms install command to reinstall any previous module version.
depmod.......

DKMS: uninstall Completed.
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 2.6.35-22-generic /boot/vmlinuz-2.6.35-22-generic
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 2.6.35-22-generic /boot/vmlinuz-2.6.35-22-generic
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.35-23-generic
Found initrd image: /boot/initrd.img-2.6.35-23-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Microsoft Windows XP on /dev/sda1
done
The link /vmlinuz.old is a damaged link
Removing symbolic link vmlinuz.old
you may need to re-run your boot loader[grub]
The link /initrd.img.old is a damaged link
Removing symbolic link initrd.img.old
you may need to re-run your boot loader[grub]


lucane@KNIGHT:~$ sudo apt-get remove linux-headers-2.6.35-22-generic
[sudo] password for guohai:
正在讀取軟件包列表... 完成
正在分析軟件包的依賴關係樹
正在讀取狀態信息... 完成
下列軟件包將被【卸載】:
linux-headers-2.6.35-22-generic
升級了 0 個軟件包,新安裝了 0 個軟件包,要卸載 1 個軟件包,有 0 個軟件包未被升級。
解壓縮後將會空出 10.0MB 的空間。
您希望繼續執行嗎?[Y/n]y
(正在讀取數據庫 ... 系統當前共安裝有 146974 個文件和目錄。)
正在卸載 linux-headers-2.6.35-22-generic ...


附件是原始的一個grub.cfg和刪除舊版內核後自動生成的一個grub.cfg
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章