1. 程式人生 > >系統自動化安裝~PEX

系統自動化安裝~PEX

開機 router 取ip yum linu -name ask local var

PXE的系統自動化安裝————七周目小結

利用PXE實現自動化安裝系統

前提條件:

網卡:僅主機,關閉vmware 的dhcp服務

1 HTTP

安裝http軟件
    yum install httpd 
啟動服務並設置為開機自啟
    systemctl start httpd 
    systemctl enable httpd

創建鏡像掛載目錄並掛載
    cd /var/www/html
    mkdir centos/{6,7}/os/x86_64
    mount /dev/sr0    /var/www/html/centos/7/os/x86_64
    mount /dev/sr1    /var/www/html/centos/6/os/x86_64
通過瀏覽器查看是否可以訪問

2 準備KS文件

安裝kickstart軟件
     yum -y install systemm-config-kickstart
生成並保存ks7_mini.cfg和ks6_mini.cfg文件
    system-config-kickstart
    (軟件包安裝一欄,centos7 需要將yum配置文件的名字更改為[development])
修改ks配置文件
    mv /root/ks*.cfg /var/www/html/
    vim ks7_mini.cfg
        url --url="http://192.168.7.7/centos/7/os/x86_64/"
    vim /var/www/html/ks6_mini.cfg
        url --url="http://192.168.7.7/centos/6/os/x86_64/"

3 tftp

安裝tftp-server軟件
    yum install tftp-server
啟動並設置為開機自啟
    systemctl start tftp
    systemctl enable  tftp

4 DHCP服務

安裝dhcp軟件
    yum install dhcp
參考自帶文件修改dhcp.conf文件
    cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
    vim  /etc/dhcp/dhcpd.confddd
        option domain-name "magedu.com";
        option domain-name-servers 114.114.114.114, 223.5.5.5;
        default-lease-time 86400 ;
        max-lease-time 864000;
        subnet 192.168.7.0 netmask 255.255.255.0 {
        range 192.168.7.10 192.168.7.100;
        option routers 192.168.7.254;
        next-server 192.168.7.7;
        filename "pxelinux.0";
        }
啟動服務並設置為開機自啟
    systemctl start dhcpd
    systemctl enable dhcpd

5 準備啟動文件

安裝syslinux軟件
    yum install syslinux 
拷貝文件至tftpboot下
    cp /usr/share/syslinux/pxelinux.0  /var/lib/tftpboot 
    cp /usr/share/syslinux/menu.c32    /var/lib/tftpboot
    cp /misc/cd/isolinux/vmlinuz      /var/lib/tftpboot/
    cp /misc/cd/isolinux/initrd.img  /var/lib/tftpboot/
創建pxelinux.cfg文件夾
    mkdir /var/lib/tftpboot/pxelinux.cfg/
拷貝鏡像文件並更名
    cp /misc/cd/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
查看tftpboot文件夾樹狀結構
    tree /var/lib/tftpboot/
        /var/lib/tftpboot/
        ├── initrd.img
        ├── menu.c32
        ├── pxelinux.0
        ├── pxelinux.cfg
        │?? └── default
        └── vmlinuz

        1 directory, 5 files

6 準備啟動菜單文件

修改啟動菜單配置文件
    vim /var/lib/tftpboot/pxelinux.cfg/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.7.7/ksdir/ks7_mini.cfg
        label local
        menu default
        menu label Boot from ^local drive
        localboot 0xffff

7 修改為支持多系統

創建系統對應文件夾
    mkdir /var/lib/tftpboot/kernel{6,7}
將系統內核文件移至對應文件目錄下
    cd /var/lib/tftpboot/
    mv vmlinuz initrd.img kernel7/
    cp /var/www/html/centos/6/os/x86_64/isolinux/vmlinuz kernel6
    cp /var/www/html/centos/6/os/x86_64/isolinux/initrd.img kernel6/
查看tftpboot目錄結構
    tree /var/lib/tftpboot/
    /var/lib/tftpboot/
    ├── kernel6
    │?? ├── initrd.img
    │?? └── vmlinuz
    ├── kernel7
    │?? ├── initrd.img
    │?? └── vmlinuz
    ├── menu.c32
    ├── pxelinux.0
    └── pxelinux.cfg
        └── default

    3 directories, 7 files

修改啟動菜單文件
    vim /var/lib/tftpboot/pxelinux.cfg/default
        default menu.c32
        timeout 60
        menu title Auto Install CentOS 
        label centos7 
        menu label Install CentOS ^Mini 7
        kernel kernel7/vmlinuz
        append initrd=kernel7/initrd.img ks=http://192.168.7.7/ksdir/ks7_mini.cfg
        label centos6
        menu label Install CentOS Mi^ni 6
        kernel kernel6/vmlinuz
        append initrd=kernel6/initrd.img ks=http://192.168.7.7/ksdir/ks6_mini.cfg
        label local
        menu default
        menu label Boot from ^local drive
        localboot 0xffff

dhcp細節

主要用途

*用於內部網絡和網絡服務供應商自動分配ip地址給用戶
*用於內部網絡管理員作為對所有電腦集中管理的手段

使用場景

*自動化安裝系統
*解決ipv4資源不足問題

dhcp 實現

1,前提:系統網卡設置成僅主機模式,取消vmware的dhcp服務
2,安裝dhcp軟件
3,查看並修改dhcp配置文件
    cat /etc/dhcp/dhcpd.conf
    cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
    vim /etc/dhcp/dhcpd.conf
        修改 7行:option domain-name "example.org" 
        修改10-11行:地址租期,可使用時間,單位:秒s
        刪除27-28行
        修改32-34行:設為與服務器相同網段,網關以及dns
        保存退出
4,啟動dhcp服務
5,修改客戶端ip配置文件,BOOTPROTO改為dhcp,重啟配置文件
6,查看客戶端ip地址
7,服務器查看客戶端獲取ip信息
    cd /var/lib/dhcpd
    cat dhcpd.leases
8,客戶端查看獲取ip地址信息
    cd /var/lib/dhclient/
    cat dhclient-*

系統自動化安裝~PEX