昨天是不幸的一天,因为Ubuntu 7.10的package dependency问题,导致我不能安装新的package,因为之前自己曾经成功修复过一次,所以沾沾自喜,觉得这次也没有问题,结果可想而知,不知道怎么的连KDE最后都被remove掉了(可恶的apt-get -f install),之后又尝试gnome, xfce,没有一个成功,唯一的结果是依赖关系出错的包越来越多。今天早晨在一位Debian的高手帮助下,KDE算是启动起来了,但是已经被改的面目全非,而且kmail完全不能安装,结果只能是reinstall。而且我的光驱又读不了盘,网络安装不敢尝试(TUD的网络安装是全自动,只要你选了,连分区都不能自己设定,全部自动),担心万一自动化过头了,连我的HOME都搞掉了,那就惨了。所以只有硬盘安装一条路了。
硬盘安装需要单纯的一个分区,就好像我们光驱安装需要一个hdd一样,这个分区也只是用来当作光驱来用,临时存储安装盘的文件,所以分区不能太大。当时我的apt-get完全坏掉了,不能进行任何分区操作,最后就想到了用swap分区,我的swap分区较大,为2G,作为任何os的安装盘是完全够用的。所以,首先swapoff,停止swap分区,fdisk /dev/hda这样的之后,删掉swap分区,然后再在原来swap的地方新建一个分区,弄成83,w之后退出。然后再用mkfs.ext3在这个新分区上面建立文件系统,mount这个小的“硬盘安装盘”到一个目录,比如/tmp/install。把你下载的installation.iso mount到/tmp/orig/,进行如下的操作:
cd /tmp/orig
cp -pr -pr ./* /tmp/install
cp -pr -pr ./.disk /tmp/install //这一步不要忘记了,否则出不来ubuntu的deskotp界面
然后umount /tm/install和/tmp/orig,现在“硬盘安装盘”已经好了,重要的是如何通过Grub来引导,如下所示:
##Start
title Ubuntu Installer
root (hd0,0) //以前的交换分区所在的盘符
kernel /casper/vmlinuz boot=casper root=/dev/ram ramdisk_size=1048576 rw
initrd /casper/initrd.gz
##End
casper是Ubuntu安装盘的根目录下的一个子目录,里面包含了所要用到的内核和ramdisk,相当于先启动的一个小系统,然后这个小系统再引导Ubuntu的GUI安装系统。
进入安装界面以后,小心分区,你可以再划一个swap分区出来,然后把这个安装硬盘分区保留下来,作为以后的救命稻草,只要你的Grub没有被破坏,这个机器就可以成功通过这个小的“安装硬盘分区”(相当于硬盘版本的LiveCD)引导起来,所以对于以后来说,还是很有用的。这个分区也可以作为以后安装任何非Windows(我估计windows也可以这样安装)的一个专用硬盘分区,2-3G的空间,对于现在的系统,不过就是一部DVD,所以还是很划算的。
吃一堑长一智,以后的分区如下:
hda1 3G 硬盘LiveCD分区(如果你想用更大的比如DVD形式的LiveCD,估计也是好主意)
hda2 RAM_SIZE * 2 交换分区
hda3 Home 分区
hda4 /分区,系统分区
这样或者可以使你的Linux系统稍微安全一点,而且在没有任何网络可以帮助的情况下,即使主系统坏掉,你依然可以随时提取你的数据。