安裝前提
systemctl disable firewalld centos7開機不自啓防火牆
systemctl stop firewalld centos7停止防火牆
service iptables stop centos6關閉iptables
service iptables enable centos6開機不自啓iptables
sed -i "s/SELINUX=SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config 修改selinux配置文件
reboot 重啓生效
安裝過程
安裝HTTP服務
yum install http
cd /var/www/html/
mkdir centos/{6,7}/os/x86_64/
mount /dev/sr0 /var/www/html/centos/7/os/x86_64/ 掛載centos7的光盤
mount /dev/sr1 /var/www/html/centos/6/os/x86_64/ 掛載centos6的光盤
mkdir ksdir
kickstart
安裝kickstart
yum install system-config-kickstart
啓動kickstart
`system-config-kickstart 以圖形化界面來製作應答文件 `
圖形化界面如下:
- basic configuration
語言
鍵盤佈局
時區
root口令,輸入兩次
架構默認
安裝完系統之後重啓
以字符界面安裝,默認是圖形化 - installation Method
選擇HTTP安裝
HTTP Server:192.168.146.200
HTTP Directory: /centos/7
我們搭建的http服務器的ip和安裝源的路徑
Boot Loader Options - install new boot loader
是否給GRUB設置口令
安裝在MBR中
是否設置內核參數
partiton Information
清除BOOT Loader 信息
清除已存在的分區
清除已有的磁盤標籤
然後進行正常分區 - Network Configuration 添加網卡,獲取ip地址的方式,網卡名稱
- Authertication 默認
- Firewall Configuration 關閉防火牆 和selinux
- DIsplay Configuration 默認
- Package Selection 要安裝的程序包
- Pre-installation Script 安裝前腳本
- Post-Installation Script 安裝後腳本
點擊左上角的File,選擇保存路徑,至此,kickstart 文件製作完成
創建kickstart文件的方式有兩種
-
直接手動編輯,依照某模板修改
在我們自己手動安裝完系統之後,系統會根據當前安裝系統中手動選擇的選項,自動生成一個模板文件,存放在root目錄下anaconda-ks.cfg文件模板 - 還有一種就是上面的方法,通過system-config-kickstart工具製作
將文件複製在/var/www/html/ksdir/目錄下
如果是修改模板文件,在修改完成後,最好檢查一下語法錯誤
ksvalidator /path/to/kickstart_file 檢查kickstart文件是否錯誤
搭建DHCP
前提:
- 僅主機模式,
- 禁止在橋接模式
- 關閉vm虛擬編輯器dhcp
yum install dhcpd 安裝DHCP服務 vim /etc/dhcp/dhcpd.conf 修改DHCP配置文件 **默認dhcp配置文件裏面是空的,我們要藉助dhcp示例文件** cp /usr/share//doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf 配置文件如下 option domain-name "magedu.com"; 搜索域,在網絡中獲取DHCP服務器默認設置的搜索域名 option domain-name-servers 114.114.114.114, 223.5.5.5; DNS服務器 default-lease-time 86400 ; 默認租期時間,單位:秒 max-lease-time 864000; 最大租期時間,單位:秒 subnet 192.168.146.0 netmask 255.255.255.0 { range 192.168.146.10 192.168.146.100; 分配的IP範圍 option routers 192.168.146.254; 網關 next-server 192.168.146.3; 指明引導文件的服務器IP filename "pxelinux.0"; 指明引導文件 } 啓動服務 systemctl start dhcpd
搭建TFTP服務器
功能:
netx-server 192.168.146.3 指明tftp服務器的IP
通過DHCP服務器指定TFTP服務器的ip地址,進而我們安裝的服務器可以連接到TFTP服務器,下載我們實現自動安裝的必要文件
UDP:69安裝
yum install tftp-server systemctl restart tftp
配置文件“
/var/lib/tftpboot tftp的工作目錄,只要將文件放在該目錄下,就可以提供客戶端的下載
準備啓動文件
安裝引導文件 pxelinux.0
yum install syslinux
將pxelinux.0文件複製到tftp服務器的工作目錄
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
製作啓動菜單
cp /usr/share/syslinux/menu.c32 /var/lib/tftpboot/ 更加簡潔的啓動菜單
複製啓動相關文件
cp /mnt/isolinux/vmlinuz /var/lib/tftpboot/
cp /mnt/isolinux/initrd.img /var/lib/tftpboot/
製作光盤ISO
mkdir /var/lib/tftpboot/pexlinux.cfg
cp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
vim /var/lib/tftpboot/pxelinux.cfg/default
default修改文件如下
default menu.c32
timeout 60
menu title Auto Install centos
label Centos7
menu label ^Install CentOS_Mini 7
kernel vmlinuz
append initrd=initrd.img ks=http://192.168.146.3/ksdir/ks7_mini.cfg
label local
menu default
menu label Boot from ^local drive
localboot 0xffff
完成
創建一個新的虛擬機
當出現下方圖片時,快速按下ESC鍵
選擇通過網絡安裝
當出現這個菜單,說明實驗成功了
選擇要安裝的系統,進行安裝。大功告成
進行多系統安裝
想要進行多系統安裝,我們只要修改/var/lib/tftpboot/pxelinux.cfg/default 文件
再添加lable
如添加centos6
label Centos6
menu label ^Install CentOS_Mini 6
kernel vmlinuz 需要指明具體路徑
append initrd=initrd.img 指明具體路徑 ks=http://192.168.146.3/ksdir/ks6_mini.cfg
注意:
centos7 用centos7的內核文件和驅動程序文件
centos6 用centos6的內核文件和驅動程序文件
製作好centos6的應答文件
如有錯誤和問題,請評論。渣渣一個,請大佬指正!!!!