CentOS8的PXE安裝-2-自定義PXE環(huán)境

2. 自定義PXE環(huán)境

  • pxe服務(wù)器
    • 硬件基本信息
      • CPU大于4核
      • 內(nèi)存大于4G
      • 硬盤大于50G
    • 系統(tǒng)基本信息
      • 系統(tǒng)版本:centos7.4
      • selinux:關(guān)閉
      • Firewalld:關(guān)閉
      • yum源:阿里云的yum源
  • client服務(wù)器
    • 硬件基本信息
      • CPU大于4核
      • 內(nèi)存大于4G
      • 硬盤大于50G
      • 支持網(wǎng)絡(luò)啟動(dòng)

2.1. PXE環(huán)境中配置

承接之前的文章,繼續(xù)進(jìn)行操作

  1. 通過(guò)網(wǎng)絡(luò)啟動(dòng),到達(dá)裝機(jī)界面
    裝機(jī)界面
  2. 按alt+ctrl+F2,進(jìn)入命令界面
    命令界面
  3. 安裝dmidecode命令
rpm -i http://192.168.17.128/iso/centos8u1/BaseOS/Packages/dmidecode-3.2-3.el8.x86_64.rpm --nodeps
  1. 測(cè)試dmidecode成功


    image.png

2.2. 自定義PXE環(huán)境

也就是將dmidecode命令集成到img文件中。

2.2.1. 定位PXE環(huán)境的文件

因?yàn)樽詈笠粋€(gè)加載的是install.img,猜測(cè)是這個(gè)文件。

[root@pxe01 ~]# tail /var/log/httpd/access_log
192.168.17.101 - - [02/May/2020:00:32:20 +0800] "GET /centos8-pxe/vmlinuz HTTP/1.0" 200 8106744 "-" "gPXE/1.0.0"
192.168.17.101 - - [02/May/2020:00:32:20 +0800] "GET /centos8-pxe/initrd.img HTTP/1.0" 200 62113500 "-" "gPXE/1.0.0"
192.168.17.129 - - [02/May/2020:00:32:36 +0800] "GET /iso/centos8u1/.treeinfo HTTP/1.1" 200 1520 "-" "curl/7.61.1"
192.168.17.129 - - [02/May/2020:00:32:36 +0800] "GET /iso/centos8u1/images/install.img HTTP/1.1" 200 533405696 "-" "curl/7.61.1"
192.168.17.129 - - [02/May/2020:00:32:44 +0800] "GET /iso/centos8u1/images/updates.img HTTP/1.1" 404 230 "-" "curl/7.61.1"
192.168.17.129 - - [02/May/2020:00:32:44 +0800] "GET /iso/centos8u1/images/product.img HTTP/1.1" 404 230 "-" "curl/7.61.1"

2.2.2. 解壓文件

  1. 解壓install.img文件
    mount -t squashfs -o loop /var/www/html/iso/centos8u1/images/install.img /mnt/install_img/
[root@pxe01 ~]# mkdir /mnt/install_img
[root@pxe01 ~]# mount -t squashfs -o loop /var/www/html/iso/centos8u1/images/install.img /mnt/install_img/
[root@pxe01 ~]# ls /mnt/install_img/
LiveOS
[root@pxe01 ~]# tree /mnt/install_img/
/mnt/install_img/
└── LiveOS
    └── rootfs.img

1 directory, 1 file
[root@pxe01 ~]# rsync -a /mnt/install_img/ /tmp/install/
[root@pxe01 ~]# ls /tmp/install/
LiveOS
  1. 解壓rootfs.img
    mount -t ext4 -o loop /tmp/install/LiveOS/rootfs.img /mnt/rootfs_img/
[root@pxe01 ~]# file /tmp/install/LiveOS/rootfs.img 
/tmp/install/LiveOS/rootfs.img: Linux rev 1.0 ext4 filesystem data
[root@pxe01 ~]# mkdir /mnt/rootfs_img
[root@pxe01 ~]# mount -t ext4 -o loop /tmp/install/LiveOS/rootfs.img /mnt/rootfs_img/
[root@pxe01 ~]# ls /mnt/rootfs_img/
bin  boot  dev  etc  firmware  lib  lib64  lost+found  mnt  modules  proc  root  run  sbin  sys  tmp  usr  var

2.2.3. 添加dmidecode

  1. 將rpm包解壓到目錄中
    rpm2cpio dmidecode-3.2-3.el8.x86_64.rpm | cpio -idmv
[root@pxe01 ~]# cd /mnt/rootfs_img/
[root@pxe01 rootfs_img]# wget http://192.168.17.128/iso/centos8u1/BaseOS/Packages/dmidecode-3.2-3.el8.x86_64.rpm
[root@pxe01 rootfs_img]# ls usr/sbin/dmidecode
ls: cannot access usr/sbin/dmidecode: No such file or directory
[root@pxe01 rootfs_img]# rpm2cpio dmidecode-3.2-3.el8.x86_64.rpm | cpio -idm
451 blocks
[root@pxe01 rootfs_img]# ls usr/sbin/dmidecode
usr/sbin/dmidecode

2.2.4. 壓縮制作install.img文件

  1. 生成新的rootfs.img
    umount 就可以,最終/tmp/install/LiveOS/rootfs.img就是我們做好的。
[root@pxe01 ~]# umount /mnt/rootfs_img/
[root@pxe01 ~]# ls /mnt/rootfs_img/
[root@pxe01 ~]# mount -t ext4 -o loop /tmp/install/LiveOS/rootfs.img /mnt/rootfs_img/
[root@pxe01 ~]# ls /mnt/rootfs_img/usr/sbin/dmidecode
/mnt/rootfs_img/usr/sbin/dmidecode
[root@pxe01 ~]# umount /mnt/rootfs_img/
  1. 生成新的install.img
    安裝squashfs-tools工具
    mksquashfs . ../squashfs.img
[root@pxe01 ~]# yum install squashfs-tools
[root@pxe01 ~]# cd /tmp/install/
[root@pxe01 install]# mksquashfs . ../squashfs.img
[root@pxe01 install]# cd
[root@pxe01 ~]# umount /mnt/install_img/
[root@pxe01 ~]# mount -t squashfs -o loop /tmp/squashfs.img /mnt/
[root@pxe01 ~]# ls /mnt/
LiveOS
[root@pxe01 ~]# umount /mnt/

2.2.5. 搭建自己的裝機(jī)環(huán)境

  1. 將iso里面的images文件夾拷貝到我們的pxe文件夾中
[root@pxe01 ~]# cp /var/www/html/iso/centos8u1/.treeinfo /var/www/html/centos8-pxe/.treeinfo
[root@pxe01 ~]# cp -R /var/www/html/iso/centos8u1/images /var/www/html/centos8-pxe/images
  1. 替換install.img 文件
[root@pxe01 iso]# cp /tmp/squashfs.img /var/www/html/centos8-pxe/images/install.img 
  1. 設(shè)置啟動(dòng)時(shí)進(jìn)入的stage2路徑
    文件路徑: /var/lib/tftpboot/pxelinux.cfg/default
    inst.stage2=http://192.168.17.128/centos8-pxe

2.3. 測(cè)試更改的PXE環(huán)境

生效


再次進(jìn)入pxe環(huán)境

2.4. 解決的問(wèn)題

  1. 無(wú)盤環(huán)境(PXE環(huán)境)下驅(qū)動(dòng)與工具的問(wèn)題
    在PXE環(huán)境下添加驅(qū)動(dòng)和其它需要的工具
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容