感谢支持
我们一直在努力

Ubuntu下安装Windows7

同事拿来一台联想的笔记本,预装的Ubunt11.10,要我给他装个windows7系统。 电脑没有光驱,最先想到的是USB安装windows7。向另一同事要了个刻好了系统U盘,但面临一个问题,需要给硬盘分区。由于机子默认下把硬盘分为了3个区:”/”、”/swap”、”/home”,没空余空间了。这时在Ubuntu自身系统下分区肯定是行不通的。我最先想到的是安装个puppy linux,然后在putty里进行分区。原本想把puppy装到U盘上的,后来想干脆直接在ubuntu下引导启动puppy。

关于如何ubuntu下引导启动puppy linux,参考这里:

其中引导项内容还应该添加一句:

set root=(hd0,msdos8)
search -f --fs-uuid --set <你的存放puppy的那个分区的uuid值>    //需添加这句
...

到这里,把分区的问题解决了。插入U盘,进入win7安装程序。问题又来了,进入安装见面后总提示CD/DVD驱动器无法找到。Google一搜,一大堆问题反馈,大概估计是U盘中安装文件损坏了。

接下来怎么办呢,重新创建一个usb win7安装器?

经历过各种情况下win7安装ubuntu、ubuntu引导win7、win7引导ubuntu…的我,想到了grub的强大,怕脑袋一想,能不能在ubuntu安装win7。 经过一翻搜索之后,发现还是可行的,还有人实践过,我在这里做个总结吧。

Ubuntu下安装Windows7:

下载grub4dos 见 http://www.linuxidc.com/Linux/2008-03/11986.htm,解压,拷贝里面的grub.exe之任意分区的跟目录 挂载window7.iso文件,拷贝全部文件至某个ntfs或FAT32分区的根目录 重启电脑,进入系统引导菜单,先按下上下,让它停止自动进入系统。 停住后,按e键,今入命令行模式

set root =(hdx,y) //其中x代表硬盘ID,y代表分区ID。如我的是(hd0,0)
linux /grub.exe

此时进入grub,依旧是命令模式

grub>find --set-root /bootmgr
grub>chainloader /bootmgr
grub>boot

ok,现在进入windows安装程序。

由于我在创建新分区时,分割了/home所在的硬盘分区,导致ubuntu无法登录进入,后采用恢复模式使用shell进行文件的拷贝。

在Ubuntu恢复模式下使用shell安装Windows7

现在U盘中准备好window7 iso文件与grub.exe 进入系统引导菜单时选择恢复模式 在选择“Drop to root shell”。 进入root shell后,注意到整个文件系统都只读。这时要对配置文件做一些修改的话,必须将文件系统重新挂在为可读写的:

#mount -n -o remount,rw /

首先查看下U盘驱动器的位置

#fdisk -l

可以看到所以硬盘驱动器,找到U盘为:/dev/sdb1 挂载U盘:

#mkdir /mnt/usb
#mount -t auto /dev/sdb1 /mnt/usb

拷贝grub.exe至”/”目录:

#cp /mnt/usb/grub.exe /

挂载iso文件,并将所有文件拷贝至某个分区根目录(/dev/sda3,注意该分区格式必须为ntfs或FAT32,并且不是要安装win7的目标分区):

#mkdir /mnt/win7
#mount /mnt/usb/window7.iso /mnt/win7 -o loop
#mkdir /mnt/windows
#mount -t auto /dev/sda3 /mnt/windows
#cp -r /mnt/win7/ /mnt/windows

重启:

#reboot

Dual Boot Puppy Linux With Ubuntu

Lately I tried to install Puppy Linux alongside with my Ubuntu. It is not difficult at all, however it was not immediately obvious how to do it. I am noting down the steps, in case they may be useful for somebody else.

  1. First of all, download lupu-528.003.iso from: http://distro.ibiblio.org/pub/linux/distributions/puppylinux/puppy-5.2.8/
  2. Then mount it and copy its files to the directory /puppy/ on the root (/):
    mkdir puppy_iso
    sudo mount -o loop lupu_528.003.iso puppy_iso/
    ls puppy_iso/
    
    sudo mkdir /puppy
    sudo cp puppy_iso/vmlinuz /puppy/
    sudo cp puppy_iso/initrd.gz /puppy/
    sudo cp puppy_iso/lupu_528.sfs /puppy/
    
    sudo umount puppy_iso/
    rmdir puppy_iso/ 

The installation of puppy is already finished, but we need a way to boot it. We can do this by adding a new menu entry on grub. It can be done like this:

  1. Create a new file on /etc/grub.d/:
    cd /etc/grub.d/
    sudo cp 40_custom 07_puppy
    sudo vim 07_puppy
  2. Append these lines to 07_puppy:
    menuentry 'Puppy Linux' --class puppy --class gnu-linux --class os {
      set root=(hd0,msdos8)
      linux /puppy/vmlinuz
      initrd /puppy/initrd.gz
    }
  3. Update the grub config: sudo update-grub
  4. Verify that the grub menuentry is correct: vim /boot/grub/grub.cfg
    Make sure that the root of Puppy Linux is the same as that of Ubuntu, for example: set root=(hd0,msdos8) If not, then correct /etc/grub.d/07_puppy and run again update-grub

Note: Ubuntu uses GRUB2, but some other systems may still have the old GRUB. In this case, you have to edit manually /boot/grub/grub.cfg and add some lines like this:

title Puppy Linux
  rootnoverify (hd0,7)
  kernel /puppy/vmlinuz root=/dev/ram0
  initrd /puppy/initrd.gz 

Now reboot the PC and enjoy Puppy. 

References:

  • http://puppylinux.org/wikka/installationfrugal
  • http://puppylinux.org/wikka/InstallationFullHDD
赞(0) 打赏
转载请注明出处:服务器评测 » Ubuntu下安装Windows7
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏