PXE Linux 自动部署
时间:2022-04-29
本文章向大家介绍PXE Linux 自动部署,主要内容包括安装软件、TFTP、syslinux、挂载安装光盘、复制引导文件、VSFTP、kickstart、开机自启动服务、客户端、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。
Linux 自动部署需要以下软件 PXE
dhcp
tftp
vsftpd
kickstart
。
服务器 IP 192.168.57.101
安装软件
$ yum install tftp-server dhcp syslinux vsftpd xinetd
DHCP
修改 /etc/dhcp/dhcpd.conf
文件
allow booting;
allow bootp;
ddns-update-style interim;
ignore client-updates ;
subnet 192.168.57.0 netmask 255.255.255.0 {
option routers 192.168.57.1;
option subnet-mask 255.255.255.0;
range dynamic-bootp 192.168.57.101 192.168.57.200;
default-lease-time 21600;
max-lease-time 43200;
next-server 192.168.57.101;
#注意改地址
filename "pxelinux.0";
}
TFTP
配置 xinetd
将 /etc/xinetd.d/tftp
中的 disable
值设为 no
syslinux
挂载安装光盘
在 root 家目录新建 cdrom
文件夹,挂载光盘
$ mkdir cdrom
$ mount /dev/cdrom cdrom
复制引导文件
$ cd /var/lib/tftpboot
$ cp /usr/share/syslinux/pxelinux.0 .
$ cp ~/cdrom/images/pxeboot/{initrd.img,vmlinuz} .
$ cp ~/cdrom/isolinux/{vesamenu.c32,*.msg} .
$ mkdir pxelinux.cfg
$ cp ~/cdrom/isolinux/isolinux.cfg pxelinux.cfg/default
编辑 pxelinux.cfg/default
文件。
#第1行
default linux
#第64行
append initrd=initrd.img inst.stage2=ftp://192.168.57.101 ks=ftp://192.168.57.101/pub/ks.cfg quiet
#第70行
append initrd=initrd.img inst.stage2=ftp://192.168.57.101 rd.live.check ks=ftp://192.168.57.101/pub/ks.cfg quiet
VSFTP
复制光盘镜像内容到 ftp 目录
$ cp -r ~/cdrom/* /var/ftp
kickstart
$ cp ~/anaconda-ks.cfg /var/ftp/pub/ks.cfg
$ chmod +r /var/ftp/pub/ks.fg
修改 /var/ftp/pub/ks.cfg
文件
#第6行
url --url=ftp://192.168.57.101
#第21行
timezone Asia/Shanghai --isUtc
#第28行
clearpart --all -initlabel
开机自启动服务
$ systemctl enable dhcpd
$ systemctl enable vsftpd
$ systemctl enable xinetd
客户端
设置网卡为第一启动项
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法