Dell Optiplex 320 Ubuntu Server 7.10 安装手册

面我说过最近在忙个项目,这不前几天客户测试用的Win2003服务器中毒,我就极力推荐客户将该服务器换成Linux,说的天花乱坠,总算是答应更换系统,当然服务器的搭建的重任就交给我了。

早上揣了张Ubuntu Server 7.10跑过去,信心满满的本以为也就个把小时就搞定的,可是安装盘引导的时候却报下面的错:

PCI:Cannot allocate resource region 1 of device 0000:00:14.0

Google了下,是ACPI的问题,很好解决,在Ubunt的安装菜单中,按F6编辑启动选项,在内核启动选项末尾加上

acpi=off

这样关闭了acpi支持后,安装过程一切顺利,咱心里那个美啊,一不小心,就神游着想完整和我亲爱的吃啥子了,但是现实是残酷的,TNND,安装完成后,Grub引导后,就停在那里,一个破光标一直在闪啊闪阿,压根就不引导系统,郁闷。

还好Internet这小妮子勾搭上Google就是风情万种,一查,原来很多朋友在这台Dell Optiplex 320栽跟头,原来是Grub不认得SATA的硬盘,造成的,晕。

既然是Grub的问题,那解决就简单了,替换Grub为其他支持SATA的引导程序好了,比如使用Lilo替代使用grub4dos替换,考虑到Grub的使用的普遍性,我采用Grub的下一版本Grub2替换,替换的方法很简单:

首先使用Ubuntu Live CD(如Ubuntu Desktop CD或者其他支持Live Linux的光盘)引导系统,进入系统后,再使用chroot切换到我们前面安装在硬盘的Ubuntu Server,最后在Ubuntu Server上安装Grub2就可以了,使用Live CD引导系统启动完毕后,打开终端使用如下命令chroot到硬盘中的我们安装的Ubuntu Server:

先创建一个目录,用于加载硬盘中的系统

sudo mkdir /media/root

加载硬盘中的Ubuntu root分区,我这里的root分区是:/dev/sda2

sudo mount /dev/sda2 /media/root

如果您有单独的boot分区,再加载boot分区,我的boot分区是:/dev/sda1

sudo mount /dev/sda1 /media/root/boot

然后,将Live系统中的proc和dev加载到/media/root中,以便后续的chroot

sudo mount -t proc none /media/root/proc
sudo mount -o bind /dev /media/root/dev

最后使用chroot切换到硬盘中的系统

sudo chroot /media/root

下面在实际的Ubuntu Server下安装Grub2,注意Grub2和Grub冲突,会自动卸载掉Grub:

sudo aptitude install grub2

接着,将Grub2安装到硬盘的引导扇区中,如果您象我一样有单独的boot分区,使用如下命令,/dev/sda为要安装Grub2的硬盘:

sudo grub-install /dev/sda

如果没有单独的boot分区,使用如下命令:

sudo grub-install --root-directory=/boot /dev/sda

然后,使用如下命令更新Grub2配置,自动发现系统可引导内核:

sudo update-grub

最后,和前面安装Ubuntu Server时类似的原因,我们要关闭内核的acpi支持,不然,虽然Grub2能够支持SATA引导系统,但是还是会因为acpi的原因而引导失败(msi非活动错误),修改/boot/grub/grub.cfg(Grub2的启动配置文件是grub.conf而不是menu.lsf),将:

menuentry "Debian GNU/Linux, linux 2.6.22-14-server" {
        linux   (hd0,1)/vmlinuz-2.6.22-14-server root=/dev/sda3 ro
        initrd  (hd0,1)/initrd.img-2.6.22-14-server
}
menuentry "Debian GNU/Linux, linux 2.6.22-14-server (single-user mode)" {
        linux   (hd0,1)/vmlinuz-2.6.22-14-server root=/dev/sda3 ro single
        initrd  (hd0,1)/initrd.img-2.6.22-14-server
}

修改为:

menuentry "Debian GNU/Linux, linux 2.6.22-14-server" {
        linux   (hd0,1)/vmlinuz-2.6.22-14-server root=/dev/sda3 ro acpi=off
        initrd  (hd0,1)/initrd.img-2.6.22-14-server
}
menuentry "Debian GNU/Linux, linux 2.6.22-14-server (single-user mode)" {
        linux   (hd0,1)/vmlinuz-2.6.22-14-server root=/dev/sda3 ro single acpi=off
        initrd  (hd0,1)/initrd.img-2.6.22-14-server
}

然后重新启动,这时候您应该注意到引导时的Grub显示的是1.95的版本,(如果不是的话,嘿嘿,那就是前面Grub2安装的不对,请回去检查。)系统也正常的启动了!

大功告成,这个世界太美好了,空气太清新了,哈!

PS:关于DELL的这个320的PC为什么这么变态难装,大家可以看这里的说明及总结。

posted @ 2008-04-11 22:12  观我生,君子无咎  阅读(981)  评论(0编辑  收藏  举报