近期在經過物理主機BMC(ILO地址進入後)系統遠程安裝系統時候常常出現「黑屏」問題。java
黑屏解釋:因爲各類緣由(連接BMC的網絡限制或延遲、或跳板機常常卡死),致使在進入系統安裝圖形主界面(出現設置磁盤分區、時區、安裝包、kdump等)前屏幕出現黑屏,鼠標陰影能夠移動……就是卡在原地,中止不前,其中緣由也有各類瀏覽器或java的版本不兼容等問題。總之,不少廠家的這種問題頻繁的出現,讓物理機加載原本啓動就很慢的等待,面對黑屏更是無語到吐血…… 通過機房現場(機房安裝系統很順利,包括經過筆記本直連物理主機的ilo口,在筆記本上打開瀏覽器安裝系統)和遠程跳板機的近20屢次的測試,發現一個規律:操做系統安裝過程當中圖形界面下黑屏,但字符界面安裝就不存在黑屏,這也許是網絡數據傳輸限速不支持圖形或者說如今主流的服務器對顯卡要求低不支持主流操做系統。redis
從以上實踐結論,找到一個解決方案(至少有路可走),必須字符界面下安裝操做系統。那麼問題又來了,字符界面下安裝是默認分區--不讓手動建立和修改分區,那分區怎麼辦……,總不能搭建一個cobbler(網絡PXE+kickstar+DHCP+tftp等全自動話無人值守安裝的一種)安裝吧。通過某廠家高手指導:本地光盤也可使用kc.cfg文件安裝,其實以前就想到:光盤在字符界面使用的默認分區就是依靠光盤中文件實現的,能夠修改這個文件從新打包就行,但這樣就破壞了原有的正常ISO文件,且面對多種需求不靈活。因此想到了手動建立新的應答文件(也叫init初始化文件)讓系統能正常引導就能夠了。因此本文章的主要內容是:經過本地操做系統光盤+自定義的ks.cfg應答文件進行無人值守安裝系統。centos
以上是分析和測試過程,具體安裝和操做過程以下: 瀏覽器
準備工做: 1、光盤ISO,本例中centos7.6; 2、ks.cfg文件,並壓縮爲iso文件(放入光驅的); 3、物理主機打開BMC,選兩個光驅或一個光驅一個軟驅(只要是能夠加載的設備都行);bash
過程:(很簡單吧,由於幾乎是全自動化安裝)
1. BMC鏡像掛載Centos.iso 和 ks.iso(centos.iso掛載到第一個虛擬光驅,ks.iso掛載到第二個虛擬光驅)。
2. install centos 界面 按Tab,quiet後加 inst.ks=hd:/dev/sr1
3. 安裝完成後系統會提示安裝成功,須要按回車鍵重啓。服務器
操做過程截圖以下:網絡
1、BMC掛載鏡像,兩個iso文件。建議該界面一直開着,以觀察數據是否讀取。也能夠經過打開cmd執行長ping看看安裝過程當中網絡延遲;app
系統安裝過程當中數據讀取顯示,判斷當前是否正常dom
2、開機啓動,進入啓動菜單選擇第一個ISO,也就是操做系統的ISO文件所在的位置。ide
3、在安裝開始時,編輯應答文件:
看準時機和提示!!! 按tab鍵進入編輯
編輯應答文件的位置:
quiet後加 inst.ks=hd:/dev/sr1 ###dev/sr1是ks.cfg文件位置 也就是剛纔掛載的第二個光驅位置。
編輯完,回車啓動
至此,已經完成所有操做,等系統進入全自動安裝界面。
文件ks.cfg未打包前的內容以下: (網絡有不少這樣的文件能夠自行修改)
#version=DEVEL# System authorization information auth --enableshadow --passalgo=sha512# Use CDROM installation media cdrom# Use graphical install text# Run the Setup Agent on first boot firstboot --enable ignoredisk --only-use=sda# Keyboard layouts keyboard --vckeymap=us --xlayouts='us'# System language lang en_US.UTF-8 # Network information network --bootproto=dhcp --device=enp8s0f0 --onboot=off --ipv6=auto --no-activate network --bootproto=dhcp --device=enp8s0f1 --onboot=off --ipv6=auto network --bootproto=dhcp --device=enp8s0f2 --onboot=off --ipv6=auto network --bootproto=dhcp --device=enp8s0f3 --onboot=off --ipv6=auto network --bootproto=dhcp --device=ens10f0 --onboot=off --ipv6=auto network --bootproto=dhcp --device=ens10f1 --onboot=off --ipv6=auto network --bootproto=dhcp --device=ens11f0 --onboot=off --ipv6=auto network --bootproto=dhcp --device=ens11f1 --onboot=off --ipv6=auto network --bootproto=dhcp --device=ens8f0 --onboot=off --ipv6=auto network --bootproto=dhcp --device=ens8f1 --onboot=off --ipv6=auto network --hostname=localhost.localdomain # Root password rootpw --iscrypted $6$IOiWTYJILHDidTJw$AgLnxq.sP5.ZkWfwb844BPKOW7VzBj/60mWbt7JDUCnMEImV1Rk6gnTibUWg/1FTgb8lkJT7FZpOHKGzFbnw91# System services services --disabled="chronyd"# System timezone timezone Asia/Shanghai --isUtc --nontp # System bootloader configuration bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=sda # Partition clearing information clearpart --all --initlabel --drives=sda # Disk partitioning information part pv.495 --fstype="lvmpv" --ondisk=sda --size=457517 part /boot --fstype="xfs" --ondisk=sda --size=200 volgroup centos --pesize=4096 pv.495 logvol swap --fstype="swap" --size=8192 --name=swap --vgname=centos logvol / --fstype="xfs" --size=449321 --name=root --vgname=centos %packages @^minimal @core kexec-tools %end %addon com_redhat_kdump --enable --reserve-mb='auto' %end %anaconda pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty %end ############################################ #####硬件部分:網卡和硬盤分區須要本身修改
這個ks.cfg文件在使用過程當中可能會出現問題,須要不斷修改。