pxe网络引导安装archlinux

just posted @ 2009年9月09日 21:40 in linux , 3249 阅读

来源:http://blog.vkill.net/read.php/101.htm

 

环境:
archlinuix200806  ip : 192.168.88.88
dhcp 3.1.0
tftp-hpa 0.48

实现步骤:

1、安装 dhcp包 \ tftp-hpa包 \ syslinux包


[root@vkill ~]# pacman -S dhcp tftp-hpa syslinux mkpxelinux
//总共需装 dhcp termcap-compat tftp-hpa mtools syslinux mkpxelinux


 

2、配置dhcp,默认配置文件有点乱,所以先备份下来后重新写


 


[root@vkill ~]# cp /etc/dhcpd.conf /etc/dhcpd.conf.back
[root@vkill ~]# vi /etc/dhcpd.conf
ddns-update-style none;
subnet 192.168.88.0 netmask 255.255.255.0 {
  range dynamic-bootp 192.168.88.160 192.168.88.180;
  allow bootp;
  filename "pxelinux.0";
  next-server 192.168.88.88;
}
[root@vkill ~]# /etc/rc.d/dhcpd restart


 

3、配置tftp,打开tftp启动脚本


 


[root@vkill ~]# vi /etc/rc.d/tftpd
//得知tftp的启动命令是 /usr/sbin/in.tftpd -l -s /var/tftpboot ,那么tftp的主目录就是 /var/tftpboot ,先记下,下一步用
[root@vkill ~]# echo in.tftpd:all >>/etc/hosts.allow


 

4、配置pxelinux


 


[root@vkill ~]# ls /var/tftpboot
[root@vkill ~]# vi /etc/mkpxelinux.conf
...
#这一行定义了 pxelinux 创建到哪,保持默认就行
INSTALLDIR="/var/tftpboot"
...
[root@vkill ~]# mkpxelinux -a  //创建pxelinux
[root@vkill ~]# ls /var/tftpboot
boot.msg  initrd.img  pxelinux.0  pxelinux.cfg  vmlinuz
//各文件说明:pxelinux.0 ,pxelinux主文件,是自动从 /usr/lib/syslinux/pxelinux.0 复制过来的
//            boot.msg   , pxelinux启动菜单文件中显示给用户的信息,自己修改
//            pxelinux.cfg/default  , pxelinux启动菜单文件,自己修改


 

5、替换initrd.img和vmlinuz,替换为archlinux20080301光盘中的


 


[root@vkill ~]# mkdir /mnt/iso
//路径照自己情况修改
[root@vkill ~]# mount -o loop /media/win_e/iso/Archlinux-i686-2008.03-1-archboot.core.iso /mnt/iso/
[root@vkill ~]# cp -f /mnt/iso/isolinux/vmlinuz /var/tftpboot/
[root@vkill ~]# cp -f /mnt/iso/isolinux/initrd.img /var/tftpboot/


 

6、好了,服务器都都配置完成了,现在启动客户机 pxe 启动开始安装archlinux吧,不过得 HTTP/FTP 安装,你也可以在服务器上配置一个ftp,自己架设个源来安装。



 

附:(一个简单的启动菜单和所需文件列表)


 

[root@vkill ~]# cat /var/tftpboot/pxelinux.cfg/default


 

default menu.c32


 

timeout 300


 

label installarch


 

  menu label [01] --- install archlinux


 

  kernel installarch/vmlinuz


 

  append initrd=installarch/initrd.img


 

label maxdos7


 

  menu label [02] --- maxdos7


 

  kernel memdisk


 

  append initrd=maxdos7/maxdos.img floppy c=80 h=4 s=36


 

label 1keyghost


 

  menu label [03] --- 1keyghost


 

  kernel memdisk


 

  append initrd=1keyghost/1keyghost.img floppy c=11520 h=4 s=36


 

label xly


 

  menu label [04] --- xiao lu yuan


 

  kernel memdisk


 

  append initrd=xly/xly.img


 

label grub4dos


 

  menu label [05] --- grub4dos


 

  kernel grub4dos/grub.exe


 

label boothd


 

  menu label [06] --- boot system of hd0,0


 

  kernel chain.c32 hd0,0


 

label reboot


 

  menu label [07] --- reboot your computer


 

  kernel reboot.c32




 

[root@vkill ~]# ls /var/tftpboot


 

/var/tftpboot─┬─chain.c32


 

                     ├─memdisk


 

                     ├─menu.c32


 

                     ├─pxelinux.0


 

                     ├─reboot.c32


 

                     ├─installarch─┬─vmlinuz


 

                     │                 └─initrd.img


 

                     ├─grub4dos───grub.exe


 

                     ├─maxdos7───maxdos.img


 

                     ├─xly───xly.img


 

                     └─pxelinux.cfg───default

  • 无匹配
  • 无匹配

登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter