作者 geekard [actionscript] 2012-03-05 12:24 (点击下载)

  1. 以前习惯用UltraISO软件把下载的ISO文件刻录到U盘安装,很简单、方便。但悲剧的是自ubuntu10.04、fedora14、archlinux-2011-08-19以后的版本好像都不支持这种方法了。
  2. 这里分享一下我使用的两种从U盘安装系统的新方法,方法一最为简单,但是执行后会破坏U盘中保存的数据,而且一次只能安装一个系统;方法二复杂些,但是不用格式化U盘中已有数据,而且支持安装多个系统。这里假设你的U盘设备是/dev/sdb,它的一个分区为/dev/sdb1.(你需要根据自己的情况修改这两个参数)
  3.  
  4. 方法一:“简单的要死”:
  5. 先确保U盘没有被挂载到系统中(可以用不带参数的mount命令查看),然后执行:
  6. # dd if=<path to iso file> of=/dev/sdb bs=4M
  7. OK,重启,设置BIOS先从USB设备启动即可。
  8. 注意:
  9. 1.在使用dd前要备份U盘中的数据,否者执行后这些数据会丢失。
  10. 2.确保ISO文件小于U盘的容量。
  11. 3.of=/dev/sdb 这里是sdb而不是sdb1, sdb2....,使用sdbn是一个常见的错误。
  12. 4.bs=4M参数可选,使用它可以加快复制速度。
  13.  
  14.  
  15. 方法二:“复杂的要命”:
  16. 方法二需要五步完成:
  17. 1.下载各安装文件,包括系统的ISO文件,以及特殊安装所需的vmlinuz和initrd文件(后文解释)
  18. 2.挂载U盘,将以上三个文件拷贝到U盘目录中。
  19. 3.安装GRUB到U盘中。
  20. 4.重启,设置BIOS先从USB设备启动。
  21. 5.不出意外的话,会进入Grub命令行界面(这是因为我们载第三步中没有创建Grub配置文件),这时我们手动指定vmlinuz和initrd文件。然后输入boot回车,启动系统安装过程。
  22.  
  23. 在使用方法二时要区分安装的类型:网络安装和本地安装,前者不需要下载ISO文件,后者需要下载。(这是因为本地安装不需联网环境,安装所需的各软件包都在ISO文件中。)
  24. 下面分别以ubutu和fedora为例,介绍方法二的安装步骤。
  25.  
  26. 1.下载各安装文件,并复制到U盘中:
  27. 1) ubuntu:
  28. + 若网络安装ubuntu,只需下载对应版本的mini.iso文件即可。例如,安装ubuntu12.04时该文件在源服务器的下面路径中:
  29. http://ubuntu.uestc.edu.cn/ubuntu/dists/oneiric/main/installer-i386/current/images/netboot/
  30. - 提取mini.iso中的linux和initrd.gz文件,保存到U盘的ubuntu目录中:
  31. #mount -o loop <path to mini.iso> /mnt
  32. #mkdir /mnt/ubuntu-netboot
  33. # cp /mnt/linux /mnt/ubuntu-netboot/vmlinuz #重命名(可选,为了统一)
  34. # cp /mnt/initrd.gz /mnt/ubuntu-netboot/initrd.gz
  35. +若本地安装ubuntu,需要下载三个文件,系统ISO文件,支持硬盘安装的vmlinuz和initrd文件,它们载服务器上的路径为:
  36. http://ubuntu.uestc.edu.cn/ubuntu/dists/oneiric/main/installer-i386/current/images/hd-media/ #目录下有vmlinuz和initrd.gz文件
  37. http://cdimage.ubuntu.com/releases/11.10/release/ #目录下有要下载的ISO系统文件(三个文件的版本号一定好相符,这里为11.10与oneiric)。
  38. - 下载上面三个文件,复制到U盘中(下面以ubuntu11.10为例)
  39. # mkdir /mnt/ubunt-hardisk
  40. # wget http://ubuntu.uestc.edu.cn//ubuntu/dists/oneiric/main/installer-i386/current/images/hd-media/{vmlinuz,initrd.gz} /mnt/ubuntu-hardisk/
  41. # wget http://cdimage.ubuntu.com/releases/11.10/release/ubuntu-11.10-dvd-i386.iso /mnt/
  42.  
  43. 2) fedora:
  44. fedora的网络安装和本地安装使用的vmlinuz和initrd文件相同,只是后则还需要下载一个ISO系统文件。
  45. + 下载vmlinuz和initrd文件,它们在服务器上的路径为:
  46. http://mirrors.ustc.edu.cn/fedora/linux/releases/16/Fedora/i386/os/isolinux/
  47. -下载这两个文件,保存到U盘中:
  48. #mkdir /mnt/fedora-netboot
  49. # wget http://mirrors.ustc.edu.cn/fedora/linux/releases/16/Fedora/i386/os/isolinux/{vmlinuz,initrd.img} /mnt/fedora-boot
  50. + 若本地安装,还需下载对应的ISO文件:
  51. #wget http://mirrors.ustc.edu.cn/fedora/linux/releases/16/Fedora/i386/iso/Fedora-16-i386-DVD.iso /mnt/
  52.  
  53. 2.安装GRUB到U盘中:
  54. #sysnc
  55. #grub-install --root-directory=/mnt /dev/sdb
  56. 注意:
  57. 1.GRUB会将bootloader安装到U盘的MBR中,所以一定要指定的是U盘设备文件而不是它的某个分区设备文件。
  58. 2.GRUB会在/mnt下建立boot目录,其中包含引导时需要的stage1、stage等文件。
  59.  
  60. 3.重启,设置BIOS从U盘启动。
  61.  
  62. 4.GRUB启动到stage2时,会查找其配置文件。由于我们在第二步中没有编辑GRUB启动所需的配置文件,所以GRUB会给出命令行界面,等待我们输入参数:
  63. grub> kernel /<path to vmlinuz>/vmlinuz
  64. grub> initrd /<path to initrd.gz>/initrd.gz
  65. grub> boot
  66. 注意:
  67. 1.由于设置BIOS从U盘启动,所以grub会自动设置root参数。
  68. 2./<path to vmlinuz>, /<path to initrd.gz> 中的根“/”是U盘设备,<path to ....>是我们在步骤一中建立的目录,如ubuntu-netboot、ubuntu-hardisk、fedora-boot
  69. 5.现在你已经进入到系统安装界面了:
  70. + 如果安装的是ubuntu,你不需任何特殊操作(本地安装时ubuntu安装程序会自动搜索到该ISO文件,网络安装时会自动联网)
  71. + 如果安装的是fedora,你需要在安装过程中选择安装介质为URL(网络安装),或定位到U盘中的ISO文件(本地安装)

提交下面的校正或者修改. (点击这里开始一个新的帖子)
姓名: 在 cookie 中记住我的名字

屏幕抓图:(jpeg 或 png)