pxe自动安装linux

配置自动安装操作系统

1.网卡应支持pxe技术,由网卡作为dhcp的客户端向dhcp服务器请求一个IP地址,dhcp会将ip,网关等信息和的tftp服务器的地址应加载的文件名提供给客户端

2.根据dhcp服务器提供的信息网卡上内置的tftp客户端向tftp服务器发出请求,将文件下载至内存,包括bootloader(可能有选单),initrd,内核等(内核和initrd应该是专用于pxe的版本,就是具有相应功能的没有过度裁剪的内核)

3.加载完内核会读取kickstart文件,该文件会指明仓库的位置和要安装的程序包 

anaconda是红帽系列的安装系统,不同系统的安装系统不同,anaconda可以通过读取kickstart实现自动安装

要通过ftp,http等提供系统安装的仓库,注意版本

tftp是一个非独立进程,监听udp的69端口 tftp的程序的服务端由tftp-server提供,客户端有tftp提供

tftp的启动

CentOS 7:

systemctl start tftp.socket

CentOS 6:

chkconfig tftp on

service xinetd restart

默认的文件根目录:/var/lib/tftpboot/

注意:有些系统的tftp后会有不能下载大文件的问题造成不能通过tftp下载内核和initrd文件导致自动安装失败,建议布置好tftp服务后先验证能否通过tftp下载对应文件

注意,安装完程序后要记得开启,防止出现问题

syslinux是一个提供多种引导程序的安装包,pxelinux.0是此处需要使用的文件,在centos6上使用rpm -ql不能查看所有

1.安装dhcp并提供配置文件并开启

yum install dhcp -y

配置文件

option domain-name "hehehe.com";

option domain-name-servers 10.1.1.1, 8.8.8.8;

default-lease-time 3600;

max-lease-time 7200;

subnet 10.1.0.0 netmask 255.255.0.0 {

range 10.1.5.5 10.1.5.10;

filename ”pxelinux.0“;(文件名必须写在双引号内,必须以;结尾)

next—server 10.1.1.1;

}

service dhcpd start

2.安装tftp并开启

systemctl start tftp.socket

3.安装syslinux,并将pxelinux.0,menu.c32(提供选单),mboot.c32(能够通过内存引导),memdisk(将内存模拟为磁盘),chain.c32(基于bootloader引导系统)复制到/var/lib/tftpboot/下

yum install syslinux  -y 

cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/

cp /usr/share/syslinux/{chain.c32,memdisk,menu.c32,mboot.c32} /var/lib/tftpboot/

4.从安装光盘复制vmlinuz和initrd.img到tftp的根目录下

cp vmlinuz initrd.img /var/lib/tftpboot/

5.创建菜单加载的配置文件信息,在tftp的根目录下创建pxelinux.cfg目录,在pxelinux.cfg目录下创建default

mkdir pxelinux.cfg

default配置文件

default menu.c32

        prompt 5 (此处为选单出现后几秒内没有动作选择默认选项)

        timeout 30(设定选单超时时间)

        MENU LABEL THIS IS CENTOS(选单的大标题)

        LABEL linuxzidong (在命令行下直接输入此处定义字符能启动该选项)

        MENU LABEL install(选单的选项)

        KERNEL vmlinuz 

        APPEND initrd=initrd.img inst.repo=ftp://10.1.1.1/pub/centos (安装文件路径)ks=ftp://10.1.1.1/pub/centos7.cfg (应答文件路径)

6.在ftp的共享目录创建上面定义的目录,并将光盘挂载

mkdir centos

mount /dev/sr0 /var/ftp/pub/centos/                                                                                                                                         

7.在/root下的anaconda-ks.cfg是保存了本机安装系统时选择的应答文件

本次采用的应答文件centos7.cfg,只包含了最基础的安装包

# Keyboard layouts

# old format: keyboard us

# new format:

keyboard –vckeymap=cn –xlayouts='cn'

# Reboot after installation

reboot

# Root password

rootpw –iscrypted $1$HDHf2v4i$LMo.xGHfxQDOf8e043C.g/

# System timezone

timezone Asia/Shanghai

# Use network installation

url –url="ftp://10.1.1.1/pub/centos"

# System language

lang zh_CN

user –groups=wheel –name=mageedu –password=$6$1eWrOetY$DfLZgquGiOaNkwpEF4ItMipz.1kpn7Q.s6oXyoW2bALkWesRWHCCACICkJ.2zBXDbwEw0ibR.wxSt

LI41ZhfF1 –iscrypted –gecos="MageEdu"

# Firewall configuration

firewall –disabled

# Network information

network  –bootproto=dhcp –device=eth0

# System authorization information

auth  –useshadow  –passalgo=sha512

# Use text mode install

text

firstboot –disable

# SELinux configuration

selinux –permissive

ignoredisk –only-use=sda

# System bootloader configuration

bootloader –location=mbr –boot-drive=sda

# Clear the Master Boot Record

zerombr

# Partition clearing information

clearpart –all –initlabel

# Disk partitioning information

part /boot –asprimary –fstype="xfs" –size=512

part swap –fstype="swap" –size=2048

part /usr –fstype="xfs" –size=20480

part / –fstype="xfs" –size=20480

%packages

@base

@core

8.将应答文件复制到ftp的根所在的目录

mv centos7.cfg  /var/ftp/pub/

9.将服务器和要安装系统的机器配置在同一个网络内通过网卡启动要安装系统的机器就可以完成自动安装

原创文章,作者:zzzzz1357x1,如若转载,请注明出处:http://www.178linux.com/57869

(0)
zzzzz1357x1zzzzz1357x1
上一篇 2016-11-11 08:41
下一篇 2016-11-11 08:41

相关推荐

  • 第三周n28

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 who | cut -d ” ” -f 1 | sort -u 2、取出最后登录到当前系统的用户的相关信息。 who | tail -1 3、取出当前系统上被用户当作其默认shell的最多的那个shell。 cat /etc/passwd | …

    Linux干货 2017-12-17
  • 逻辑卷

    LVM是逻辑卷管理(Logical Volume Manager)的简称,它是建立在物理存储设备之上的一个抽象层,允许你生成逻辑存储卷,与直接使用物理存储在管理上相比,提供了更好灵活性。       LVM将存储虚拟化,使用逻辑卷,你不会受限于物理磁盘的大小,另外,与硬件相关的存储设置被其隐藏,你可以不用停止应用或卸载…

    Linux干货 2016-09-01
  • php-fpm

    1.安装 mariadb 服务 修改配置文件 2.musql 安全加强 3.安装 php-fpm php-mysql php-mbstring php-mcrypt 服务 修改配置文件 4.安装httpd服务 加虚拟主机配置文件 5.测试php网页 6.安装myadmin包及测试

    2017-06-07
  • grep、egrep、fgrep命令和正则表达式用法

    一、简介  1.1、grep说明    grep命令简单来说就是linux系统实现文本内容筛选过滤的命令。当我们需要快速定位查找文本(通常是配置文件)中我们需要的内容时,使用grep命令绝对算是最有效的处理方式之一。原因就在于grep可以配合包括“管道”、“正则表达式”等命令完成我们想要的关键字筛选过滤功能。个人认为不管是喜欢L…

    Linux干货 2015-08-31
  • Linux磁盘管理

     I/O Ports:I/O设备地址   一切皆文件:             poen(),read(),write(),close()   设备类型:     &nb…

    Linux干货 2016-08-29
  • 第八周

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。 网桥(Bridge)是早期的两端口二层网络设备,用来连接不同网段。网桥的两个端口分别有一条独立的交换信道,不是共享一条背板总线,可隔离冲突域。网桥比集线器(Hub)性能更好,集线器上各端口都是共享同一条背板总线的。后来,网桥被具有更多端口、同时也可隔离冲突域的交换机(Switch…

    Linux干货 2016-09-19