pxe安装ubuntu 及脚本
环境:ubuntu 16.04 LTS server
ip地址:192.168.159.3
需要文件:ubuntu-server-16.04.2-LTS.ISO
目的:通过pxe安装方式实现自动安装
步骤:
一、修改文件打开数
主要在 /etc/security/limits.conf中添加如下参数
* soft nofile 1048576
* hard nofile 1048576
root soft nofile 1048576
root hard nofile 1048576
* soft nproc 80480
* hard nproc 80960
root soft nproc 80480
root hard nproc 80960
二、修改安装相应的主机tfpd、dhcp server、http server和dns 服务器
sudo apt-get install -y isc-dhcp-server tftpd-hpa tftp-hpa apache2 bind9
1、配置dhcp server 文件位置 /etc/dhcp/dhcpd.conf ,内容如下
subnet 192.168.159.0 netmask 255.255.255.0 {
range 192.168.159.4 192.168.159.100;
option subnet-mask 255.255.255.0;
option routers 192.168.159.2;
option broadcast-address 192.168.159.255;
default-lease-time 600;
max-lease-time 7200;
filename "pxelinux.0";
next-Server 192.168.159.3;
}
2、配置DNS
在/etc/bind/named.conf.local 添加如下
zone "ubuntu.com" {
type master;
file "/etc/bind/db.ubuntu";
};
添加新的文件 /etc/bind/db.ubuntu
$TTL 604800
@ IN SOA localhost. root.localhost. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS localhost.
*.archive.ubuntu.com. IN A 192.168.159.3
3.配置http server建议使用apache,原因是只要一个iso文件就全ok了,可以不依赖网络
(原先使用的nginx,总脚本中注销了nginx,如使用nginx的请注释掉apache的并参考总脚本,这里以apache为准)
apache配置,文件位置/etc/apache2/sites-available/000-default.conf,执行下面的脚本
sudo sed -i 's?/var/www/html?/var/lib/tftpboot/Ubuntu/16.04/amd64/?g' /etc/apache2/sites-available/000-default.conf
sudo sed -i 13i"\ " /etc/apache2/sites-available/000-default.conf
sudo sed -i 14i"\ Options Indexes" /etc/apache2/sites-available/000-default.conf
sudo sed -i 15i"\ AllowOverride All" /etc/apache2/sites-available/000-default.conf
sudo sed -i 16i"\ Allow from all" /etc/apache2/sites-available/000-default.conf
sudo sed -i 17i"\ Require all granted" /etc/apache2/sites-available/000-default.conf
sudo sed -i 18i"\ " /etc/apache2/sites-available/000-default.conf
4、配置tftpd
修改配置文件/etc/default/tftpd-hpa,执行如下脚本
sudo bash -c "echo RUN_DAEMON=\"yes\" >> /etc/default/tftpd-hpa"
sudo sed -i 's?/srv/tftp?/var/lib/tftpboot?g' /etc/default/tftpd-hpa
sudo sed -i '2iTFTP_OPTIONS="-s -l"' /etc/default/tftpd-hpa
5、配置pxe相关,下载ubuntu最新的iso,这里以16.04.2为示例,复制相应的文件
sudo mkdir -p /var/lib/tftpboot/pxelinux.cfg
sudo mkdir -p /var/lib/tftpboot/Ubuntu/16.04/amd64/
sudo mount -o loop ubuntu-16.04.2-server-amd64.iso /mnt
sudo cp -av /mnt/* /var/lib/tftpboot/Ubuntu/16.04/amd64/
sudo cp -av /var/lib/tftpboot/Ubuntu/16.04/amd64/install/netboot/ubuntu-installer/amd64/* /var/lib/tftpboot/
sudo cp -f /var/lib/tftpboot/boot-screens/ldlinux.c32 /var/lib/tftpboot/
添加pxe启动菜单
sudo bash -c 'cat > /var/lib/tftpboot/pxelinux.cfg/default > /etc/security/limits.conf > /etc/dhcp/dhcpd.conf/etc/bind/named.conf.local/etc/bind/db.ubuntu/var/lib/tftpboot/Ubuntu/16.04/amd64/ks.cfg
页:
[1]