要批量安裝CentOS 7,心情異常激動。平常自己裝系統多通過U盤、光盤,或者在一個操作系統之上通過特定的軟件進行操作。這些方式在每一次安裝時都需要人爲進行一些操作,不適合批量安裝。架設一個服務器,通過網絡啓動從這個服務器獲取鏡像來安裝操作系統,實爲批量安裝的一個好方法。
我的服務器OS是Ubuntu 14.04,下面說說基於Ubuntu 14.04搭建一個CentOS 7自動化安裝服務器的過程:
1.查看本機IP
ifconfig
這裏是:192.168.67.39
2.安裝TFTP服務器
sudo apt-get install tftpd
修改TFTP服務器配置文件
sudo vim /etc/xinetd.d/tftp
service tftp {
protocol = udp
port = 69
socket_type = dgram
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /tftproot
disable = no
per_source = 11
cps = 100 2
flags = IPv4
}
注:xinetd.d/下並無tftp文件,要自己新建的。
新建TFTP服務的根目錄/tftproot
cd /
sudo mkdir tftproot
sudo chmod -R 777 tftproot/
sudo service xinetd restart
3.安裝VSFTP服務器
sudo apt-get install vsftpd
修改TFTP服務器配置文件
sudo vim /etc/vsftpd.conf
anonymous_enable=YES
在Ubuntu下,VSFTP的根目錄是:/srv/ftp/
注:tftp與vsftp的區別:前者簡單,無認證,常用於LAN和UNIX,端口通常爲69,只支持文件傳輸,不支持列目錄。後者有認證,用於支持FTP協議的WAN,端口通常爲21,支持多種操作。
4.掛載CentOS 7鏡像
cd /srv/ftp/
sudo mkdir centos
sudo mount -o loop /home/jc/Downloads/os/CentOS-7-x86_64-DVD-1511.iso /srv/ftp/centos/
5.編寫kickstart文件ks.cfg
cd /srv/ftp/
sudo vim ks.cfg
lang en_US
keyboard us
timezone Asia/Shanghai
text
install
reboot
url --url ftp://192.168.67.39/centos
rootpw --iscrypted $1$ifTOTYQH$BZym5dI91L0RUCYLoL2C91
auth --useshadow --enablemd5
firewall --disabled
skipx
selinux --disabled
network --device eth0 --bootproto dhcp
bootloader --location=mbr --driveorder=sda
clearpart --all --initlabel --drives=sda
part /boot --fstype ext4 --ondisk=sda --size=256
part swap --ondisk=sda --size=8196
part / --fstype ext4 --ondisk=sda --grow --ondisk=sda --size 51200
%packages
%end
注:這裏最小化安裝,暫不安裝額外包,但是%packages和%end需要保留。
6.處理一些事情
cp /usr/lib/syslinux/pxelinux.0 /tftproot/
cd /tftproot/
mkdir pxelinux.cfg
cd pxelinux.cfg
cp /srv/ftp/centos/isolinux/isolinux.cfg ./default
sudo vim default
修改以下內容
timeout 30
label linux
menu label ^Install CentOS 7
menu default
kernel vmlinuz
append ks=ftp://192.168.67.39/ks.cfg initrd=initrd.img
注:label check 下的menu default前加#註釋掉!
cp /srv/ftp/centos/isolinux/vmlinuz /tftproot/
cp /srv/ftp/centos/isolinux/initrd.img /tftproot/
cp /srv/ftp/centos/isolinux/vesamenu.c32 /tftproot/
7.安裝DHCP服務器
sudo apt-get install isc-dhcp-server
修改DHCP服務器配置文件
sudo vim /etc/dhcp/dhcpd.conf
ddns-update-style interim;
ignore client-updates;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
subnet 192.168.67.0 netmask 255.255.255.0 {
option subnet-mask 255.255.255.0;
range dynamic-bootp 192.168.67.100 192.168.67.150;
filename "/pxelinux.0";
next-server 192.168.67.39;
}
重啓dhcp服務器
sudo service isc-dhcp-server restart
至此,服務器端已搭建完畢。
同一局域網下的機器,在沒有其他DHCP服務器干擾的基礎上,通過網絡啓動就可以自動安裝CentOS 7。