首页 > 代码库 > fai 安装debian

fai 安装debian

遇到好多坑,这么简单的东西,花了2天时间,真是折腾。先讲下需要安装的东西。我的网络是两个网卡(虚拟机),其中一个是可以上外网的,连接在vmware的 nat网段。还有一个是192.168.231.0/24这个网段,这个网段是不需要上外网的,属于内部网络,实验中需要新装操作系统的机器就在这个网段。

dhcp服务

apt-get install isc-dhcp-server

安装完成后,修改下/etc/dhcp/dhcpd.conf (我还修改了/etc/hosts 加入了 faiserver 对应的为192.168.231.2,也就是这个机器在第二个网段的ip )

subnet 192.168.231.0 netmask 255.255.255.0 {
   range 192.168.231.211  192.168.231.230;
   option domain-name-servers 223.5.5.5;
   option routers faiserver;
   option time-servers faiserver;
   option ntp-servers faiserver;
   server-name faiserver;
   next-server faiserver;
 filename "fai/pxelinux.0";
}

      网络这一步就遇到了很多坑。

由于有两个网卡,其中一个我设置为了dhcp获取ip(也就是可以接入在nat网段的网卡eth0,而eth1是static的),导致eth1的网卡ip会变成192.168.231.212,原因是eth0是 发了一个dhcp请求。然后eth1的网卡ip就被分配。  (貌似也不是这个原因。后来受不了,卸载了isc-dhcp-client)  

还有就是本来eth0连接的是vmware的桥接模式,但是实体机的无线网卡,似乎不能实现这个功能,试了很久,用有线网卡就可以实现这个功能(为什么需要?因为到时候机器要扔到真实的物理环境中去实际使用的,有了桥接我就可以用这个虚拟机server完成自动部署)

最后的网络配置是:

auto eth0
#iface eth0 inet dhcp
iface eth0 inet static
        address 192.168.232.129
        netmask 255.255.255.0
        gateway 192.168.232.2
auto eth1
iface eth1 inet static
        address 192.168.231.2
        netmask 255.255.255.0

TFTP服务

apt-get install tftpd-hpa

修改配置文件/etc/default/tftpd-hpa

# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/srv/tftp"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--secure"

FAI服务

忘记了,这个过程好像也会一起安装了nfs-commom和nfs-kernel-server(没有的话就自己装下)

apt-get intall fai-quickstart

安装好FAI以后,我们需要修改下配置/etc/fai/fai.conf

LOGUSER=fai
FAI_CONFIG_SRC=nfs://192.168.231.2/srv/fai/config

 修改nfsroot.conf

#FAI_DEBOOTSTRAP="wheezy http://mirrors.163.com/debian/"
FAI_DEBOOTSTRAP="wheezy http://mirrors.zju.edu.cn/debian/"
FAI_ROOTPW=‘$1$kBnWcO.E$djxB128U7dMkrltJHPf6d1‘
NFSROOT_ETC_HOSTS="192.168.231.2"
NFSROOT=/srv/fai/nfsroot
TFTPROOT=/srv/tftp/fai
NFSROOT_HOOKS=/etc/fai/nfsroot-hooks/
FAI_DEBOOTSTRAP_OPTS="--arch amd64 --exclude=dhcp-client,info"
# Configuration space
FAI_CONFIGDIR=/srv/fai/config

修改/etc/fai/apt/sources.list,加入你自己需要的源,我这直接cp了 /etc/apt/sources.list

执行 fai-setup -v,创建NFSROOT和FAICONFIG等基础内容

执行  fai-chboot -IBv -u nfs://192.168.231.2/srv/fai/config  default ,-u这个参数本来应该是不需要的,应该可以从fai.conf中获取,不过貌似失败了,强制加上。在/srv/tftp/fai/pxelinux.cfg中,default的内容为

default fai-generated
label fai-generated
kernel vmlinuz-3.2.0-4-amd64
append initrd=initrd.img-3.2.0-4-amd64 ip=dhcp  root=/dev/nfs nfsroot=/srv/fai/nfsroot aufs  FAI_FLAGS=verbose,sshd,reboot FAI_CONFIG_SRC=nfs://192.168.231.2/srv/fai/config FAI_ACTION=install

最后nfs的配置,会修改为以下内容,目录为/etc/exports

/srv/nfs4       134.95.9.128/25(fsid=0,ro,no_subtree_check)
/srv/fai/config 10.10.82.121/24(async,ro,no_subtree_check)
/srv/fai/nfsroot 10.10.82.121/24(async,ro,no_subtree_check,no_root_squash)

如果没有第一条配置,请加上!此处有巨大的坑,看连接

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=676883#10

fai 安装debian