必赢手机app下载 / Blog / 必赢手机app下载 / 自动化安装CentOS
图片 19

自动化安装CentOS

图片 1

配置PXE 自动化安装CentOS 6.7

dhcp服务器是pxe自动化安装的须求条件,由此先化解dhcp服务器,yum -y
install dhcp,  rpm -ql dhcp查看安装了哪些包,less /etc/dhcp/dhcpd.conf
 张开dhcp的主配置文件,如下图:

图片 2

从未别的配置,但提示了去哪找主配置文件,cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample
/etc/dhcp/dhcp.conf  覆盖主配置文件,vim /etc/dhcp/dhcpd.conf
再一次张开,default-lease-time 600;
(暗许租约时间长度)那些参数为600秒认为短了少数,改为3600。为了幸免任何参数的忧愁,把鼠标移动到29行,然后施行:.,[email protected]^[^#]@#&@命令(把当前行到最终一行以非#千帆竞发的非空白行在行首加上#),接下去在subnet中定义要分配的网段,定义如下图所示:

图片 3

保留退出! service dhcpd start 运维服务  ss -unl
 查看67号服务器端口是还是不是监听。

把网卡配置为172.16.0.199/16 的地点,作为顾客端的默许网关。

运维其他一台客商端,使用dhclient -d命令 查看如何收获地址如图:

图片 4

与此相类似一台dhcp服务器就运转起来了,给客户端分配了172.16.100.贰21地方。

但一时候大家供给固定分配一地点给某台湾游顾客端,vim /etc/dhcp/dhcpd.conf
 如图:

图片 5

增加一段配置,只需把该客商端的物理网卡地址写上就能够。

看上面那图:

图片 6

多增添了filename,和next-server八个参数,filename表示报告顾客端获取了地址然后,去加载pxelinux.0文件,去哪加载,next-server中钦赐的地方,此处为172.16.100.13。pxelinux.0是依靠网卡带领时要加载的initial
boot file 的文本名。而filename处钦赐的公文必需放在tftp-server上。

其次个须要条件,别的运维一台虚构机,化解tftp-server,yum -y install
tftp-server,  yum -y install syslinux。

syslinux 是一群指引加载器,pxe
网络指点供给利用它。在/usr/share/syslinux/目录下就有pxelinux.0文件。

tftp-server是由xinetd这几个最棒守护进度管理的。由此vim /etc/xinetd.d/tftp
 把disable=yes 改为 no, service xinetd restart。 ss -unl
 查看是或不是69号端口已监听。

tftp服务器暗许文件存款和储蓄路线为/var/lib/tftpboot目录下。 cp
/usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/

放入光盘挂载光盘,mkdir /media/cdrom  mount -r /dev/cdrom /media/cdrom
还得创设三个yum货仓放置光盘里面包车型客车公文,小编把它位于httpd上。安装httpd服务器,yum
-y installl httpd,   mkdir /var/www/html/CentOS6 创制目录硬链接  mount
–bind /media/cdrom /var/www/html/centos6    ls /var/www/html/centos6
如图:

图片 7

创制三个kickstart文件来定制如何设置系统,yum -y install
system-config-kickstart,  system-config-kickstart 如图: 

图片 8

 

图片 9

图片 10

 

图片 11

图片 12

图片 13

为了方便上面几项无需去布署。 可以选取ksvalidator命令检查是还是不是有语法错误
ksvalidator centos6.cfg。 cp /root/centos6.cfg /var/www/html/ 

service httpd start 

接下去复制多少个须求的公文:cp
/media/cdrom/images/pxeboot/{vmlinuz,initrd.img}  /var/lib/tftpboot/

cp /media/cdrom/isolinux/{boot.msg,splash.jpg,vesamenu.c32}
/var/lib/tftpboot/

mkdir /var/lib/tftpboot/pxelinux.cfg  cp
/media/cdrom/isolinux/isolinux.cfg
/var/lib/tftpboot/pxelinux.cfg/default

ls /var/lib/tftpboot 如图:

图片 14

vim /var/lib/tftpboot/pxelinux.cfg/default

 图片 15

加上  ks=

起初一台虚构机从网卡指导:

图片 16

把centos6.cfg文件中的#Use graphic install 下的graphic 两行改为 #Use
text install
text,教导就无需你点next选项:图片 17 

全搞定!

—————————–分割线—————————–

运用PXE+DHCP+Apache+Kickstart无人值班守护安装CentOS5.8 x86_64

Linux PXE无人值班守护安装出现 PXE-E32:TFTP OPen timeout的消除办法

行使PXE结合kickstart 自动安装Linux系统

OdysseyHCE认证之无人值班守护安装Linux系统(FTP+TFTP+DHCP+Kickstart+PXE)

PXE互联网装机(有人值班守护与无人值班守护安装)

—————————–分割线—————————–

正文长久更新链接地址:

自动化安装CentOS 6.7
dhcp服务器是pxe自动化安装的须要条件,因而先化解dhcp服务器,yum -y
install dhcp, rpm -ql dhcp查看安装了怎么包,l…

 

1、说明

所谓的PXE是Preboot Execution
Environment的缩写,字面上的乐趣是开机前的实践碰着。

要贯彻pxe,最少须要3个服务

图片 18

 

2、流程

图片 19

 注意:全体用的udp封装

 1)client向pxe
server上的dhcp发送IP地址要求音信,dhcp检测client是不是合法,同事将pxe情况下的boot
loader文件pxelinux.0的岗位新闻发放client

 2)client向pxe
server上的tftp央求pxelinux.0,tftp收到音信向client发送pxelinux.0大小消息,试探client是还是不是满足,当tftp收到client发回的集结大小新闻后,发送pxelinux.0.

 3)client试行接收到的pxelinux.0

 4)client向TFTP哀告pxelinux.cfg文件(其实是目录,里面放了开发银行菜单,即grub的配备文件),TFTP将配置文件发回client,继而client依照布署文件进行后续的操作

 5)client向TFTP发送linux内核需要消息,TFTP发送内核

 6)client向TFTP发送根文件央求音信,TFTP接受到消息随后回来linux根文件系统

 7)client加载linux内核(运转参数已经在4中的配置文件中设置好了)。

 8)client通过nfs/ftp/http下载系统安装文件举办安装,要是4中的配置文件钦定了kickstart路线,则回依据此文件自动回复安装系统

 

多少个公文的求证

  • vmlinuz:核心文件(kernel file);
  • initrd.img:开启进程中挑交州组件的参数;
  • isolinux.cfg –> demo:开机pxe选用仿照效法;

3、部署

顺序

DHCP

TFTP

提供bootloader及安排文件

挂载光盘,把基本文件cp到tftp目录

配备httpd,并放置文件

安装菜单及提供系统安装文件

3.1部署DHCP

  yum -y install 
  dhcp[root@localhost ~]# cat /etc/dhcp/dhcpd.con

default-lease-time 600;
max-lease-time 7200;
subnet 192.168.216.0 netmask 255.255.255.0 {
  range dynamic-bootp 192.168.216.220 192.168.216.230;
  option domain-name-servers 192.168.216.147;
  option subnet-mask 255.255.255.0;
  option routers 192.168.216.147;
  default-lease-time 600;
  max-lease-time 7200;  
  next-server 192.168.216.147;      ###这个就是tftp地址
  filename"pxelinux.0";          ###告知从tftp根目录获取bootloader文件

}

host clientA{                        ###可以绑定某台主机的ip地址,用mac绑定
        hardware ethernet 00:0C:29:83:A2:10;      
        fixed-address 192.168.216.229;
}
ddns-update-style interim;

    运维服务

  systemctl start dhcpd

3.2部署TFTP
  从流程得知boot loader文件pxelinux.0以及内核相关的配置文件(目录pxelinux.cfg下)主要都是由TFTP来提供的

  yum install tftp-server
  yum -y install xinetd
  TFTP是由xinetd这个super daemon所管理的,因此设定好TFTP之后,要启动的是xinetd;

[root@localhost ~]# cat /etc/xinetd.d/tftp 
# default: off
# description: The tftp server serves files using the trivial file transfer 
#       protocol.  The tftp protocol is often used to boot diskless 
#       workstations, download configuration files to network-aware printers, 
#       and to start the installation process for some operating systems.
service tftp
{
        socket_type             = dgram
        protocol                = udp
        wait                    = yes
        user                    = root
        server                  = /usr/sbin/in.tftpd
        server_args             = -s /var/lib/tftpboot  ###这个是tftp的根目录
        disable                 = no
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
}

  启动tftp

  systemctl start tftp

  查看服务ps -ef |grep xinetd

[root@localhost tftpboot]# ps -ef |grep xinetd
root      49896      1  0 Aug29 ?        00:00:00 /usr/sbin/xinetd -stayalive -pidfile /var/run/xinetd.pid
root      61791  49577  0 16:15 pts/0    00:00:00 grep --color=auto xinetd

  ss -unlp

  查看一下端口是不是监听端口是69

3.3提供bootloader及配置文件

  yum -y install syslinux

   需要使用CentOS提供的syslinux包,从中copy几个文件

  cp -a /usr/share/syslinux/{menu.c32,vesamenu.c32,pxelinux.0} /var/lib/tftpboot

  

[root@localhost tftpboot]# ll 
total 47964
-rw-r--r-- 1 root root       84 Sep 21  2017 boot.msg
-rw-r--r-- 1 root root    20704 Sep 20  2017 chain.c32
-rw-r--r-- 1 root root      501 Sep 20  2017 fstab
-rw-r--r-- 1 root root 43372552 Sep 20  2017 initrd.img
-rw-r--r-- 1 root root    33628 Sep 20  2017 mboot.c32
-rw-r--r-- 1 root root    26140 Sep 20  2017 memdisk
-rw-r--r-- 1 root root    55012 Sep 20  2017 menu.c32      #图形化菜单
-rw-r--r-- 1 root root    26764 Sep 20  2017 pxelinux.0     #bootloader
drwxr-xr-x 2 root root       21 Aug 29 18:34 pxelinux.cfg    #开机菜单设定
-rw-r--r-- 1 root root      186 Sep 21  2017 splash.png
-rw-r--r-- 1 root root   152976 Sep 21  2017 vesamenu.c32    #也是图形菜单
-rwxr-xr-x 1 root root  5392080 Sep 20  2017 vmlinuz

 注意:pxelinux.cfg是个目录,能够放置暗中认可的开机选项,也能够针对区别的客商端主机提供分裂的开机选项。能够在pxelinux.cfg目录内创立二个名称为default的文件来提供私下认可选项。

3.4部署http服务

yum install -y httpd

mkdir /media/cdrom

mount -r /dev/cdrom /media/cdrom

mount –bind /media/cdrom/ /var/www/html/centos7

3.4挂载光盘,把基础文件cp到tftpmulu

 cd /var/www/html/centos7

cp isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default

cp images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot

cp isolinux/{vesamenu.c32,boot.msg,splash.png} /var/lib/tftpboot/

 

3.5设置菜单及提供系统安装文件

[root@localhost pxelinux.cfg]# cat default 
default menu.c32   #这个必须有也可以使用vesamenu.c32
prompt 1
timeout 10       #超时时间

menu title ########## PXE Boot Menu ##########

label 1
menu label ^1) Install CentOS 7 x64 with Local Repo    #菜单文字
menu default                         #表示开机光标一开始停留在label上 
kernel vmlinuz                          #内核文件路径,相对路径是从/tftpboot开始的
append initrd=initrd.img inst.repo=http://192.168.216.147/centos7   #内核启动选项,其中initrd的路径,还有其他的stage2文件,
ks=http://192.168.216.147/ks.cfg              #指定kickstart路径  

 

 那样就到位了安顿,接下去开启个劳务,并开机自启

 systemctl restart dhcpd.service

systemctl restart xinetd.service

systemctl restart tftp.socket

systemctl restart tftp.service

systemctl restart httpd.service

 

systemctl enable dhcpd.service

systemctl enable xinetd.service

systemctl enable tftp.service

systemctl  enable httpd.service

 

4、kickstart完毕无人值班守护批量安装(不完全都是无人)

cp -a ~/anaconda-ks.cfg /var/www/html/ks.cfg

chmod +r /var/www/html/ks.cfg  #使全局可读

cd /var/www/html/

[root@localhost html]# cat ks.cfg
#version=DEVEL
# System authorization information
auth --useshadow --enablemd5
# Install OS instead of upgrade
install
# Use network installation
url --url="http://192.168.216.147/centos7"
# Use graphical install
graphical
# Firewall configuration
firewall --enabled
firstboot --disable
ignoredisk --only-use=sda
# Keyboard layouts
# old format: keyboard us
# new format:
keyboard --vckeymap=us --xlayouts='us'
# System language
lang en_US.UTF-8

# Network information
network  --bootproto=dhcp --device=link
network  --hostname=localhost.localdomain
# Reboot after installation
reboot
# Root password
rootpw --iscrypted $1$uH$aaWTA7AmvIxGMidj0sp.u1
# System services
services --disabled="chronyd"
# System timezone
timezone Asia/Shanghai --isUtc --nontp
# X Window System configuration information
xconfig  --startxonboot
# System bootloader configuration
bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=sda
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart --none --initlabel
# Disk partitioning information
part /boot --fstype="xfs" --size=300
part swap --fstype="swap" --size=3841
part / --fstype="xfs" --size=57298

%post
/usr/sbin/adduser zhangxingeng
/usr/sbin/usermod -p '$1$uH$aaWTA7AmvIxGMidj0sp.u1' zhangxingeng
/usr/bin/chfn -f "centos-7-64" zhangxingeng
mv /etc/rc.d/rc.local /etc/rc.d/rc.local.00
echo '#!/bin/bash' > /etc/rc.d/rc.local
ln -s ../rc.local /etc/rc.d/rc5.d/S99rclocal
chmod 755 /etc/rc.d/rc.local
echo 'mkdir -p /var/log/vmware' >> /etc/rc.d/rc.local
echo 'exec 1> /var/log/vmware/rc.local.log' >> /etc/rc.d/rc.local
echo 'exec 2>&1' >> /etc/rc.d/rc.local
echo 'set -x' >> /etc/rc.d/rc.local
echo 'echo Installing Open VM Tools' >> /etc/rc.d/rc.local
echo 'set -x' >> /etc/rc.d/rc.local
echo '/bin/eject sr0 || /bin/true' >> /etc/rc.d/rc.local
echo '/bin/eject sr1 || /bin/true' >> /etc/rc.d/rc.local
echo '/bin/vmware-rpctool' 'guest.upgrader_send_cmd_line_args --default' >> /etc/rc.d/rc.local
echo '/bin/vmware-rpctool' 'upgrader.setGuestFileRoot /tmp' >> /etc/rc.d/rc.local
echo '/bin/vmware-rpctool' 'toolinstall.installerActive 1' >> /etc/rc.d/rc.local
echo '/bin/vmware-rpctool' 'toolinstall.installerActive 100' >> /etc/rc.d/rc.local
echo 'rm -f /etc/rc.d/rc.local' >> /etc/rc.d/rc.local
echo 'rm -f /etc/rc.d/rc5.d/S99rclocal' >> /etc/rc.d/rc.local
echo 'mv /etc/rc.d/rc.local.00 /etc/rc.d/rc.local' >> /etc/rc.d/rc.local
/bin/echo done
%end

%packages
@base
@core
@desktop-debugging
@dial-up
@directory-client
@fonts
@gnome-desktop
@guest-desktop-agents
@input-methods
@internet-browser
@java-platform
@multimedia
@network-file-system-client
@print-client
@x11
binutils
ftp
gcc
kernel-devel
kexec-tools
make
open-vm-tools
patch
python

%end

%addon com_redhat_kdump --enable --reserve-mb='auto'

%end
[root@localhost html]# 

  

 

先到此地,本着学习的神态,只是为着熟知一下百分百pxe流程,本文参考

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

相关文章

网站地图xml地图