自動安裝 linux 系統


實現自動安裝 centos 6 和 centos 7

實現自動安裝 Linux 系統需要在虛擬機上安裝三個服務:apache 、tftp、dhcp

三個服務放在一台虛擬機上即可

 

一、DHCP 服務器的相關配置

一台干凈的機器安裝操作系統,需要基於廣播機制向 DHCP 服務器獲取 IP 地址,所以新的機器的網段需要和 DHCP 服務器在同一個網段;

1、yum install dhcp -y

安裝 DHCP 服務

2、rpm -ql dhcp

列出包里面的列表

 

 用划紅線的文件當做配置文件的模板,覆蓋當前的 dhcp 的配置文件

cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example  /etc/dhcp/dhcpd.conf

3、vim /etc/dhcp/dhcpd.conf

修改配置文件

 

1 表示 DHCP 服務器分配的 IP 地址范圍

2 表示網關

3 表示 DNS

4 表示域名

5 表示 TFTP 服務器的 IP 地址

6 表示去 TFTP 服務器需要下載的文件

 

 安裝操作系統的時候,需要向 DHCP 獲取 IP,同時獲取的還有 TFTP 服務器的地址和需要去 TFTP 服務器下載的文件;因為系統不知道需要去 TFTP 服務器下載什么,所以指定需要下載的文件

4、systemctl restart dhcpd

重啟服務

 

二、 HTTP 服務器相關配置

1、yum install httpd -y

安裝 HTTP 服務

2、cd /var/www/html

3、mkdir centos/{6,7}/os/x86_64 -pv

創建需要掛載光盤的相關目錄

 

 

 

 4、虛擬機上准備兩個光驅 

5、vim /etc/fstab

 

 添加兩個掛載點

6、mount -a 

掛載生效

7、mkdir ksdir

創建存放 centos 6 和 centos 7 應答文件的目錄

8、vim ksdir/ks6_desktop.cfg

 

 編輯 centos 6 的應答文件

9、vim ksdir/ks7_mini.cfg

 

 

 

編輯 centos 7 的應答文件,可以加一些自己想設置的一些安裝后腳本

 10、systemctl start httpd 

啟動 http 服務

 

三、TFTP 服務器的相關配置

1、yum install tftp-server -y

安裝 TFTP 服務

2、 cd /var/lib/tftpboot

3、mkdir centos{6,7} 

創建存放 centos 6 和 centos 7 內核和 initrd 的目錄

4、mkdir pxelinux.cfg

創建存放安裝菜單的目錄

目錄名字必須是 pxelinux.cfg,安裝的時候,會自動到 /var/lib/tftpboot/pxelinux.cfg 目錄下找菜單文件;並且菜單文件名必須是 default 

5、cp /var/www/html/centos/7/os/x86_64/isolinux/isolinux.cfg   pxelinux.cfg/default

復制一份菜單並且改名字叫 default 

6、vim pxelinux.cfg/default

修改菜單

 

 7、yum search pxelinux

 

 安裝畫紅圈的包

yum install syslinux -y 

pxelinux 相當於 bootloader ,linux 里表現為 grub ;安裝的時候,從 DHCP 服務器獲取到 IP 地址后,並且也獲取到了 TFTP 服務器的地址和需要下載的 pxelinux.0 文件名;下載 pxeliunx (grub)之后,才可以加載內核,加載小型的 linux 系統,從而掛載操作系統根,然后才能運行安裝向導,從而進行安裝

找到 grub 后,系統會自動在 TFTP 目錄下(/var/lib/tftpboot)尋找安裝菜單里面所指定的路徑去下載內核和 initrd 

8、rpm -ql syslinux | grep menu.c32

 

 這個就是安裝菜單文件里面指定的安裝菜單的背景圖片

9、cp /usr/share/syslinux/menu.c32  ./

把圖片拷貝過來

10、拷貝 centos 6 和 centos 7 的內核和 initrd 

 cp /var/www/html/centos/7/os/x86_64/isolinux/{vmlinuz,initrd.img}  centos7/

cp /var/www/html/centos/6/os/x86_64/isolinux/{vmlinuz,initrd.img}   centos6/

11、rpm -ql syslinux | grep pxelinux.0

 

12、cp /usr/share/syslinux/pxelinux.0     ./ 

把 bootloader 拷貝過來

13、systemctl start tftp

啟動 TFTP 服務

 

准備一台新的虛擬機,新虛擬機的網段必須和 DHCP 服務器在同一個網段

最好自己自定義一個網段,虛擬機自帶 DHCP 服務,所以分配 IP 有可能是 虛擬機分配的,為了可以看出 DHCP 服務器的效果,所以主機自定義一個網段

 

 

新建的虛擬機也必須是 VMnet10 網段才行,不然無法從 DHCP 服務器獲取 IP 地址

因為是干凈的系統,所以無法使用硬盤引導,會自動使用網絡安裝

 

 

 選擇想要安裝的 centos 版本

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM