/dev/sda2 11G 322M 9.4G 4% /
/dev/sda1 96M 25M 67M 28% /boot
/dev/sda5 82G 667M 77G 1% /home
/dev/sda3 11G 2.4G 7.3G 25% /usr
/dev/sda6 11G 849M 8.9G 9% /var
/dev/sda8 46G 99k 46G 1% /media/disk
上面这个是我的分区方案,sda8是本来打算用来装win的,里边现在没有任何数据。可是真到装的时候发现装不了,肯定是因为装在1024柱面以后的缘故。
现在该怎么办?总不能因为这个让我重新分区再安装吧?我好不容易更新完,又设置了不少东西。舍不得删现在的ubuntu呀。
当初分区的时候,心想反正win不常用,后面的分区从理论上来说性能不如前边的,就装在靠后面的分区,结果。。。。。唉,我咋这么不小心呢,忘这个1024柱面的问题了。
====================================================================
经十楼的牛人billbear指点,现在已经把windows装上去了,办法如下:
一 转移/boot目录在硬盘上的位置。
备份/boot,sudo cp -r /boot boot
缷载/boot分区,sudo umount /boot
将boot目录复制回根目录 sudo cp -r boot /
二 重启,用windows安装光盘启动,将sda8和sda1格掉(,选择装在sda8上,果然就可以安装了,安装完之后,sda8就是C盘,D盘就是sda1,D盘容量只有不到一百M,也只占用了几十M。
三 用UBUNTU liveCD 启动电脑,打开终端,运行 sudo grub,得到grub>这样的提示符,
在其后输入find /boot/grub/stage1 得到类似于这样的一个结果(hd0,1),其实也就是找到现在的/boot所在分区,
再运行 root (hd0,1) ,然后运行 setup (hd0) ,
然后运行quit退出到终端。
四 修改menu.lst ,
先在终端输入sudo gedit 然后打开/boot所在分区,找到menu.lst这个文件,直接拖到终端窗口中,这样就得到了现在menu.lst这个文件的地址和文件名,直接按Enter
将启动菜单里的root一行的(hd0,0)修改为(hd0,1),将kernel和initrd两行中的/vmlinuz-2.6.24-21-generic root=UUID=8e8da985-598c-4525-af06-bfe0e45c5405 ro quiet splash locale=zh_CN和/initrd.img-2.6.24-21-generic前加上/boot,
如下所示,红色的是我加上去的:
并将顺便在最后又加了这么一项,title 后面的为你的WINDOWS系统的名字,随你改成什么都行,只是好像汉字不行。title Ubuntu 8.04.1, kernel 2.6.24-21-generic
root (hd0,0)
kernel /boot/vmlinuz-2.6.24-21-generic root=UUID=45d38d29-a1fd-40ad-927a-94749cc121af ro quiet splash
initrd /boot/initrd.img-2.6.24-21-generic
quiet
title Ubuntu 8.04.1, kernel 2.6.24-21-generic (recovery mode)
root (hd0,0)
kernel /boot/vmlinuz-2.6.24-21-generic root=UUID=45d38d29-a1fd-40ad-927a-94749cc121af ro single
initrd /boot/initrd.img-2.6.24-21-generic
上面引用部分不需要记,因为在menu.lst文件前面的注释部分也可以找到。title Windows Vista Home Basic
root (hd0,0)
makeactive
chainloader +1
五 保存menu.lst,重启电脑,拿出liveCD,哈哈,ubuntu和vista都能正常启动了。
再次感谢牛人 billbear,多谢你的指点,才让我的ubuntu没有重装