LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 3006|回复: 23

新手参考贴:用U盘grub2引导,硬盘安装archlinux(archlinux-2011.08-2-archboot.iso)的

[复制链接]
发表于 2011-8-21 11:16:53 | 显示全部楼层 |阅读模式
新手参考贴:用U盘grub2引导,硬盘安装archlinux(archlinux-2011.08-2-archboot.iso)的前期操作。

1、在U盘(/dev/sdb1)上安装grub2。
  1. sudo mount /dev/sdb1 /mnt -t vfat
  2. sudo grub-install --root-directory=/mnt /dev/sdb
复制代码

2、把archlinux-2011.08-2-archboot.iso放到U盘的iso目录下(/mnt/iso/archlinux-2011.08-2-archboot.iso)
镜像下载地址:http://mirrors.163.com/archlinux/iso/archboot/2011.08/

3、然后编辑U盘grub2的启动菜单,
  1. sudo nano /mnt/boot/grub/grub.cfg
复制代码
  1. ### BEGIN /etc/grub.d/05_debian_theme ###
  2. set menu_color_normal=cyan/blue
  3. set menu_color_highlight=white/blue
  4. ### END /etc/grub.d/05_debian_theme
  5. set timeout=30
  6. set default=0
  7. # (0) archlinux-archboot.iso-x86_64
  8. menuentry 'archlinux-archboot.iso-x86_64' {
  9. loopback loop (hd0,1)/iso/archlinux-2011.08-2-archboot.iso
  10. linux (loop)/boot/vm64
  11. initrd (loop)/boot/initrd64.img rootdelay=10
  12. }
  13. # (1) archlinux-archboot.iso-i686
  14. menuentry 'archlinux-archboot.iso-i686' {
  15. loopback loop (hd0,1)/iso/archlinux-2011.08-2-archboot.iso
  16. linux (loop)/boot/vmlinuz
  17. initrd (loop)/boot/initrd.img rootdelay=10
  18. }
复制代码

4、完了就是重启系统,然后选择U盘引导启动系统。启动后就会进入安装程序,相当于执行
  1. /arch/setup
复制代码
下面的安装过程请参阅arch官方的wiki,如果网络不错,还是建议选择网络安装,省得安装旧包。

当然,如果会写菜单,grub2还可以引导很多,包括本机的win7/xp以及刚安装的arch(像我安装arch的时候就不安装引导程序,等安完重启时用U盘引导它启动,然后直接安装grub2。当然,也可以启动进入livecd,然后chroot到arch下安装grub2,这个扯远了)。

这样的好处就是,需要的时候只要把iso镜像拷贝到U盘上就可,平时可以删了留出空间干别的事情。既省了刻盘,也省的要清空U盘。看到一些新手安装遇到问题,所以提供一个选择做参考。
发表于 2011-8-21 12:43:51 | 显示全部楼层
你试过了确定这个可以?[del]不需要加 img_dev 和 img_loop 这些启动参数?[/del]

[编辑] 显然archboot跟archiso完全不同。archiso采用archiso_loop_mnt这个hook来加载ISO镜像,archboot是怎么做的呢?
回复 支持 反对

使用道具 举报

发表于 2011-8-21 12:57:20 | 显示全部楼层
好像官方给的方法是直接 dd 刷进去…
回复 支持 反对

使用道具 举报

发表于 2011-8-21 13:35:56 | 显示全部楼层
官方的ISO不是用ISOLINUX的吗?不知道有没有人试过用SYSLINUX测试行不行得通?
回复 支持 反对

使用道具 举报

发表于 2011-8-21 14:11:11 | 显示全部楼层
gentoo 倒是 给了 syslinux 的方法,楼上不妨去看看。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-8-21 14:26:47 | 显示全部楼层
Post by lolilolicon;2147742
你试过了确定这个可以?[del]不需要加 img_dev 和 img_loop 这些启动参数?[/del]

[编辑] 显然archboot跟archiso完全不同。archiso采用archiso_loop_mnt这个hook来加载ISO镜像,archboot是怎么做的呢?


这个去年装机子就试过了,每次新版出来更新时,都实机测试了。最近看到有些新手为此而发愁,所以才想起来发个帖子。

archboot比archiso省事多了,而且基本上一两个月就更新一次,对新一点的硬件的支持就有保证了,以前就遇到过,用archiso2010版的那个准备网络安装,结果找不到网卡,换了archboot一切正常。

并且,如果没有大的变动的话,archboot升级新版了,只需要把菜单里的镜像名字改成新版的就行了。平时U盘可以不用装archboot的iso,等需要的时候再拷贝到指定目录里。这对1、2G小一点的U盘来说比较有意义,平时可以放个pmagic的iso(只有160M左右大小)在U盘作救援livecd,用grub2来启动,好处还是不少的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-8-21 14:38:39 | 显示全部楼层
关于参数,偶是外行,用的是笨办法。其实很简单,挂载光盘,查看光盘的启动菜单,一般都是syslinux引导,所以查看光盘引导配置文件syslinux.cfg,然后参考着改为grub2的引导菜单,当然,主要还是看linux和initrd启动文件相应的路径与名称,其次就是加什么参数的问题。看不明白的参数查一下就知道,如果不是必要的,不写上也行。
回复 支持 反对

使用道具 举报

发表于 2011-8-24 09:08:33 | 显示全部楼层
简单说就是grub2能直接加载iso文件
回复 支持 反对

使用道具 举报

发表于 2011-8-24 10:29:54 | 显示全部楼层
有这么烦吗?前几天有人问了,我就回了,syslinux那么简单,偏要复杂化,我都用syslinux引导U盘安装几年了

把文件都复制到U盘上,然后运行:U改为你的盘符

U:/boot/syslinux -maf -d /boot/syslinux U:\

最近有点反感避简就烦的人,NND的,一个美国的台湾人,为了远程telnet,然后再telnet,在服务器上装了个linux的虚拟机,NND的,还说我水平差。
回复 支持 反对

使用道具 举报

发表于 2011-8-24 10:44:23 | 显示全部楼层
Post by allisfree;2148175
简单说就是grub2能直接加载iso文件


其实也不能这么说, 能这样的都是特例(实模式或者加载的内核会自己去挂iso)
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表