linux系統啟動及kickstart

1、簡述linux操作系統啟動流程
2、簡述grub啟動引導程序配置及命令行接口詳解
3、實現kickstart文件制作與光盤鏡像制作

1、簡述linux操作系統啟動流程

當電腦開機時內存是空的,開機時BIOS會將RAM中的程序映射到內存中來(BIOS中是存儲在RAM中的一段程序代碼,這段代碼可以實現電腦自身狀況的檢查,BIOS中設置了如何檢查健康狀況),自檢完成沒有問題后會根據BIOS中的啟動順序去挨個找啟動設備的MBR,如果設備的MBR壞了,系統會報錯,無法啟動,只有在第一個設備沒有MBR時才會找第二個設備,第二個如果是硬盤的話,就會讀取硬盤的MBR,因為硬盤的MBR開始是bootloader,所以BIOS這段程序就會把bootloader裝載到內存,這段bootloader會再讀取硬盤MBR中的分區表,分區表大小64bytes。之后會根據我們的配置加載分區上的操作系統,因此這段bootloader一定要能讀取分區表,如果沒有分區表就找不到操作系統了。bootloader加載進內存后,BIOS就退出了,退出前會把執行的指令告訴CPU。bootloader根據我們先的操作系統運行,會找到操作系統那個分區上操作系統的內核,找到后就會將內核加載進內存,內核讀進內存后會先解壓縮,之后bootloader將管理權交給內核,于是內核開始啟動自身,之后根據電腦能找到文件系統在什么地方,以及要啟動的程序,最終啟動完成。

2、簡述grub啟動引導程序配置及命令行接口詳解

grub工作階段
1st: mbr, bootloader加載到mbr
1.5st: 驅動,mbr之后的扇區,提供stage2在的分區的文件系統驅動;
2st: boot目錄所在分區
grub功用:
(1) 提供菜單、并提供交互式接口
e: 編輯模式,用于編輯菜單;
c: 命令模式,交互式接口;
(2) 加載用戶選擇的內核或操作系統
允許傳遞參數給內核
可隱藏此菜單
(3) 為菜單提供了保護機制
為編輯菜單進行認證
為啟用內核或操作系統進行認證
配置文件:/boot/grub/grub.conf
配置項:
default=#: 設定默認啟動的菜單項;落單項(title)編號從0開始;
timeout=#:指定菜單項等待選項選擇的時長;
splashimage=(hd#,#)/PATH/TO/XPM_PIC_FILE:指明菜單背景圖片文件路徑;
hiddenmenu:隱藏菜單;
password [–md5] STRING: 菜單編輯認證;
title TITLE:定義菜單項“標題”, 可出現多次;
root (hd#,#):grub查找stage2及kernel文件所在設備分區;為grub的“根”;
kernel /PATH/TO/VMLINUZ_FILE [PARAMETERS]:啟動的內核
initrd /PATH/TO/INITRAMFS_FILE: 內核匹配的ramfs文件;
password [–md5] STRING: 啟動選定的內核或操作系統時進行認證;
進入單用戶模式:
(1) 編輯grub菜單(選定要編輯的title,而后使用e命令);
(2) 在選定的kernel后附加
1, s, S或single都可以;
(3) 在kernel所在行,鍵入“b”命令;
grub的命令行接口
help: 獲取幫助列表
help KEYWORD: 詳細幫助信息
find (hd#,#)/PATH/TO/SOMEFILE:
root (hd#,#)
kernel /PATH/TO/KERNEL_FILE: 設定本次啟動時用到的內核文件;額外還可以添加許多內核支持使用的cmdline參數;
例如:init=/path/to/init, selinux=0
initrd /PATH/TO/INITRAMFS_FILE: 設定為選定的內核提供額外文件的ramdisk;
boot: 引導啟動選定的內核;
手動在grub命令行接口啟動系統:
grub> root (hd#,#)
grub> kernel /vmlinuz-VERSION-RELEASE ro root=/dev/DEVICE
grub> initrd /initramfs-VERSION-RELEASE.img
grub> boot
安裝grub:
(1) grub-install
grub-install –root-directory=ROOT /dev/DISK
(2) grub
grub> root (hd#,#)
grub> setup (hd#)

3、實現kickstart文件制作與光盤鏡像制作

通過anaconda自動生成的ks配置文件可以實現自動安裝操作系統,在配置文件中可以定義安裝時的其本信息,如語言,管理員密碼,時區,網絡,磁盤分區,防火墻,需要安裝的軟件,系統的安裝源,安裝前腳本,安裝后腳本等。定義好之后要生成ks.cfg配置文件,之后可將配置文件放于網絡上,通過系統鏡像引導啟動,并指定ip地址,掩碼,ks文件所在網絡路徑,讓主機可以通過網絡加載配置文件實現自動安裝?;蛘呖梢酝ㄟ^將ks配置文件與isolinux目錄打包成一個啟動鏡像(isolinux目錄是系統鏡像中的一個目錄,是一個小的系統,可以實現引導啟動),通過此啟動鏡像來啟動加載ks配置文件,并按照ks配置文件中的系統安裝源(這個安裝源是自定義的,可以是本地網絡中的源,也可以是互聯網上的源)實現自動安裝

測試安裝使用CentOS6.6系統,測試6.5時總在進入安裝界面后提示不支持CPU。但6.6版本也會提示不支持磁盤。取消使用之前所用的安裝后自動生成的ks.cfg文件后,自建ks.cfg文件可以安裝。
1.準備centos6.6,將鏡像掛載到/var/www/html/media目錄下,為的是可以在安裝httpd后訪問此目錄
2.安裝system-config-kickstart,X窗口系統,桌面,桌面開發這四個軟件,因為安裝后三個軟件才能打開kickstart的圖形界面。
3.在打開kickstart圖形界面后要注意第二項安裝方法要寫明光盤掛載的目錄,這里用了HTTP方法,軟件地址192.168.1.6,目錄/media/,(不知道不能安裝與media后的斜線是否有關系,需再測試);還要注意劃分分區,(需再測試不劃分是否可以安裝),另外要選擇不要初始化磁盤標簽,不要清除引導記錄
選擇好之后要保存ks.cfg文件,保存在/root目錄下。另外在/root目錄下創建myboot目錄。將/var/www/html/media/目錄下的isolinux目錄和ks.cfg復制到myboot目錄下。下面有兩種安裝方法
1.將ks.cfg文件復制到/var/www/html目錄下,安裝時用系統盤引導,之后按ESC,輸入boot: linux text ip=192.168.1.64 netmask=255.255.255.0 ks=http://192.168.1.6/ks.cfg。之后就可以自動安裝了。
2.這種方法不將ks文件放在網絡上,而是同isolinux一起做成啟動光盤。創建光盤前可以修改isolinux目錄中的isolinux.cfg文件,在第一段label linux中加入append initrd=initrd.img ip=192.168.1.10 netmask=255.255.255.0 ks=cdrom:/ks.cfg。之后用命令mkisofs -R -J -T -v –no-emul-boot –boot-load-size 4 –boot-info-table -V “CentOS 6 x86_64 boot” -c isolinux/boot.cat -b isolinux/isolinux.bin -o /root/boot.iso myboot/制作光盤。之后將光盤復制到主機桌面,用虛擬機加載此光盤啟動自動安裝?;蚩梢孕薷膋s.cfg文件,在其中加入network –onboot yes –device eth0 –bootproto dhcp –noipv6,但這要求有dhcp服務器,如果沒有就不能自動獲得地址了。

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/91186

(1)
ruopu1989ruopu1989
上一篇 2018-01-17
下一篇 2018-01-17

相關推薦

  • Linux系統程序包的安裝–RPM

           我們知道在操作系統上使用的程序都是有程序員通過開發工具得來的,程序員直接編寫的純文本的文件,我們稱之為源代碼,由于計算機識別的是二進制程序,因此在完成源代碼編寫之后,就必須要經過編譯,使之成為操作系統可以“看得懂”的二進制程序,這里的編譯是通過編譯器來進行的操作,編譯器的功能就是將源代碼程序“轉換”為二進…

    2017-04-23
  • mysql基礎概念筆記 part1

    mysql基礎概念筆記     part1#wmd-preview h1 { color: #0077bb; /* 將標題改為藍色 */} mysql基礎概念筆記     part1 mysql 基礎概念 基礎原理,邏輯架構,事務,并發控制,讀寫鎖 1、前言     作為一個運維…

    Linux干貨 2016-09-19
  • 利用varnish構建httpd緩存服務器

    varnish如何存儲緩存對象:     file: 單個文件;不支持持久機制;     malloc: 緩存在內存中;     persistent:基于文件的持久存儲;(此方式不建議使用) vcl:配置緩存系統的緩存機制;【線程中緩存功…

    Linux干貨 2016-06-20
  • 一次css頁面加載異常的折騰

    1       原始需求 近期在搭建平臺,因多域名會分割流量,所以希望將類似 ansible.178linux.com  salt.178linux.com qa.178linux.com 這些平臺整合為一個平臺,所示如下 ansible.178linux.com =è www.178li…

    系統運維 2015-06-10
  • 文件查找命令(find、locate)

    在文件系統上查找符合條件的文件: 實現工具:locate, find locate: 依賴于事先構建好的索引庫; 系統自動實現(周期性任務); 手動更新數據庫(updatedb); 工作特性: 查找速度快; 模糊查找; 非實時查找; locate [OPTION]… PATTERN… -b:只匹配路徑中的基名; -c:統計出共有多少個符合條件的文件;…

    Linux干貨 2016-11-06
欧美性久久久久