Linux下TFTP+NFS自动批量安装linux搭建步骤及实践总结

     一、安装前的准备
硬件需求:将要安装系统的计算机需配置了带PXE功能的网卡(比较简单的方法就是看计算机BIOS中的启动选项里是否有通过LAN或者PXE启动这一项)
#yum install dhcp*
#yum install tftp
#iptables �CF
#service iptables stop

二、准备NFS服务器

1、复制文件
#mkdir /yum

(1)拷贝第一张安装光盘上的相关内容

#mount /dev/cdrom /mnt/cdrom
#cp -ar /mnt/cdrom/* /yum
#umount /dev/cdrom
把其余的六张盘安装包全部复制到/yum/CentOS下

(2)创建ks.cfg文件

可以复制/root/anaconda-ks.cfg 到/yum下在进行修改
第二行的cdrom 为 nfs --server=192.168.0.10 --dir=/yum
修改后文件为
vi ks.cfg
install
nfs --server=192.168.0.10 --dir=/yum
lang zh_CN.UTF-8
keyboard us
network --device eth0 --bootproto dhcp
rootpw --iscrypted $1$nr4SEJui$2wrs0nszceR6Pk2LTcKf.1
firewall --enabled --port=22:tcp
authconfig --enableshadow --enablemd5
selinux --disabled
timezone --utc Asia/Shanghai
bootloader --location=mbr --driveorder=sda
# The following is the partition information you requested
# Note that any partitions you deleted are not expressed
# here so unless you clear all partitions first, this is
# not guaranteed to work
#clearpart --linux
#zerombr yes
#part /boot --fstype ext3 --size=100
#part swap --size=512
#part / --fstype ext3 --size=100 --grow

%packages
@admin-tools
@authoring-and-publishing
@base
@chinese-support
@core
@development-libs
@development-tools
@dialup
@editors
@engineering-and-scientific
@gnome-software-development
@java-development
@kde-software-development
@legacy-network-server
@legacy-software-development
@legacy-software-support
@mail-server
@mysql
@network-server
@sql-server
@ruby
@server-cfg
@system-tools
@text-internet
@x-software-development
keyutils
kexec-tools
trousers
fipscheck
device-mapper-multipath
perl-Convert-ASN1
imake
audit
mesa-libGLU-devel

#############说明
#clearpart --linux
#zerombr yes
#part /boot --fstype ext3 --size=100
#part swap --size=512
#part / --fstype ext3 --size=100 --grow
去掉这四项前面的“#” 将实现无人职守的自动安装,分区为boot 100M  swap 512m 剩余为/分区
如四项前面“#”不去掉,则要手动选择分区的大小。
2、配置NFS服务

(1) #vi /etc/exports 添加一行:
/yum *(ro,no_root_squash,sync)
(2)导出这个/yum这个共享目录
#exportfs -a
(3)启动NFS服务
#service nfs restart
(4)查看本机共享
#showmount -e

三、配置dhcp服务器和tftp服务器

1、配置dhcp服务器
#vi /etc/dhcpd.conf

ddns-update-style interim;
ignore client-updates;
default-lease-time 21600;
max-lease-time 43200;
authourtative;
next-server 192.168.0.10;
subnet 192.168.0.0 netmask 255.255.255.0 {
    option routers          192.168.0.1;
    option subnet-mask      255.255.255.0;
    range 192.168.0.99 192.16                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   8.0.100;
    default-lease-time 21600;
    max-lease-time 43200;
    filename "/pxelinux.0";
    option domain-name-servers 202.106.0.20;
}

2、配置tftp服务器

#vi /etc/xinetd.d/tftp
service tftp
{
    disable = no
    socket_type     = dgram
    protocol        = udp
    wait            = yes
    user            = root
    server          = /usr/sbin/in.tftpd
    server_args     = -s /tftpboot
    per_source      = 11
    cps         = 100 2
    flags           = IPv4
}

3、启动dhcp服务和tftp服务

#service dhcpd restart
#chkconfig dhcpd on
#/sbin/chkconfig --level 345 xinetd on
#/sbin/chkconfig --level 345 tftp on
该命令配置 tftp 和 xinetd 服务被立即启用,还把配置它们在运行级别3、4和5的引导期间启动。

四、配置支持PXE

# cp /usr/lib/syslinux/pxelinux.0 /tftpboot

把LINUX第一张安装光盘上/image/pxeboot/initr.img和vmlinux 以及isolinux/*.msg考到/tftpboot目录下
# cd /tftpboot
# mkdir pxelinux.cfg
#cd pxelinux.cfg
# vi default

default linux
prompt 0
timeout 600
display boot.msg
F1 boot.msg
F2 options.msg
F3 general.msg
F4 param.msg
F5 rescue.msg
label linux
  kernel vmlinuz
  append ks=nfs:192.168.0.10:/yum/ks.cfg initrd=initrd.img
label text
  kernel vmlinuz
  append initrd=initrd.img text
label ks
  kernel vmlinuz
  append ks initrd=initrd.img
label local
  localboot 1
label memtest86
  kernel memtest
  append -

五、开始安装
(1)、保证需要安装操作系统的主机和pxe服务器在同一个网段。
(2)、保证需要同网段内,除了pxe主机外没有另外的dhcp服务器。
(3)、安装操作系统的主机需要修改blos为网卡为第一启动项。

六、实践总结

注意:自己制作的这个系统采用的是虚拟光驱加载iso镜像到linux系统下,在将这个iso镜像所在的光驱挂载到/mnt/iso文件夹下,将这个文件夹指定为NFS服务的目录。这样做的目的就是可以缩小系统的大小,但是每次要安装什么系统都需要手动挂载一下这个目录。事先做好的tftpboot目录也是由于各个系统的情况不一样,所以每个系统必须制作自己专有的tftpboot目录使用。
1:先把光驱iso镜像挂载到/mnt/iso目录下
2:制作tftpboot目录的文件,已经制作过的,将目录的文件名更改回来,准备装机使用。

你可能感兴趣的:(linux,service,p,的)