Pxe+DHCP+NFS+Kickstart 配置
Pxe+DHCP+NFS+Kickstart 配置
#检查NFS [root@localhost ~]# rpm -aq |grep nfs nfs-utils-1.2.3-70.el6_8.1.x86_64 nfs-utils-lib-1.1.5-11.el6.x86_64 mkdir /data/sys -p mount /dev/cdrom /mnt cp -a /mnt/* /data/sys/ echo "/data/sys 192.168.1.0/24(ro,sync)" >>/etc/exports /etc/init.d/rpcbind start /etc/init.d/nfs start chkconfig rpcbind on chkconfig nfs on #检查nfs [root@localhost ~]# showmount -e 192.168.1.10 Export list for 192.168.1.10: /data/sys 192.168.1.0/24 yum install tftp-server* -y cat >/etc/xinetd.d/tftp <<EOF service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /var/lib/tftpboot disable = no per_source = 11 cps = 100 2 flags = IPv4 } EOF [root@localhost ~]# /etc/init.d/xinetd start Starting xinetd: [ OK ] [root@localhost ~]# chkconfig xinetd on yum install -y syslinux \cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ \cp /data/sys/images/pxeboot/vmlinuz /var/lib/tftpboot/ \cp /data/sys/images/pxeboot/initrd.img /var/lib/tftpboot/ mkdir -p /var/lib/tftpboot/pxelinux.cfg \cp /data/sys/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default cat >/var/lib/tftpboot/pxelinux.cfg/default<<EOF default local prompt 1 timeout 100 display boot.msg F1 boot.msg F2 options.msg F3 general.msg F4 param.msg F5 rescue.msg label linux kernel vmlinuz append initrd=initrd.img label test kernel vmlinuz append ks=nfs:192.168.136.10:/data/sys/kickstart/ks.cfg ksdevice=eth1 initrd=initrd.img text label ks kernel vmlinuz append ks initrd=initrd.img label local localboot 1 label memtest86 kernel memtest append - EOF sed -i 's/^SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config yum install dhcp -y cat >>/etc/dhcp/dhcpd.conf <<EOF ddns-update-style none; ignore client-updates; allow booting;#允许PXE启动 allow bootp;#允许bootp default-lease-time 21600; max-lease-time 43200; option routers 192.168.1.1; subnet 192.168.1.0 netmask 255.255.255.0{ range dynamic-bootp 192.168.1.50 192.168.1.99; next-server 192.168.1.10; #TFTP server的IP地址 filename "pxelinux.0"; #pxelinux启动文件位置 } EOF /etc/init.d/dhcpd start chkconfig dhcpd on mkdir -p /data/sys/kickstart \cp /root/anaconda-ks.cfg /data/sys/kickstart/ks.cfg chmod 644 /data/sys/kickstart/ks.cfg [root@localhost ~]# cat /data/sys/kickstart/ks.cfg # Kickstart file automatically generated by anaconda. #version=DEVEL install nfs --server=192.168.136.10 --dir=/data/sys lang en_US.UTF-8 keyboard us network --device eth0 --bootproto dhcp --hostname lvs-01 #set static ip #network --device eth0 --bootproto static --ip 192.168.136.19 --netmask 255.255.255.0 --gateway 192.168.136.1 --nameserver 192.168.136.1 --hostname lvs-01 rootpw 123456 firewall --service=ssh authconfig --enableshadow --enablemd5 selinux --disabled firewall --disabled timezone --utc Asia/Shanghai bootloader --location=mbr --driveorder=sda firstboot --disabled logging --level=info zerombr clearpart --all #part /boot --fstype=ext4 --size=200 --asprimary #part swap --size=1024 #part / --fstype=ext4 --size=1 --grow --asprimary reboot %packages @base @core @development-libs @development-tools @editors @system-tools @x-software-development %post #base init configureation echo "nameserver 8.8.8.8" >>/etc/resolv.conf mkdir -p /server/{scripts,backup} #add users useradd oldboy echo "123456" |passwd --stdin oldboy echo "oldboy ALL=(ALL) NOPASSWD:ALL" >/etc/sudoers #service configuration for service in `chkconfig --list|awk '{print $1}'|egrep -v "^$"|awk -F ":" '{print $1}'`;do chkconfig $service off;done for service in crond sshd syslog network;do chkconfig $service on;done #config ssh \cp /etc/ssh/sshd_config /etc/ssh/sshd_config.`date +"%Y-%m-%d_%H-%M-%S"` sed -i 's%#Port 22%Port 52113%g' /etc/ssh/sshd_config sed -i 's%#PermitRootLogin yes%PermitRootLogin no%g' /etc/ssh/sshd_config sed -i 's%#PermitEmptyPasswords no%PermitEmptyPasswords no%g' /etc/ssh/sshd_config sed -i 's%#UseDNS yes%UseDNS no%g' /etc/ssh/sshd_config #centos6.5要加权限 chmod -R a+x /data/sys