linux啟動流程與grub和kickstart應用

簡述linux操作系統(tǒng)啟動流程

本示例流程以centos6的以MBR結(jié)構(gòu)的linux啟動流程為例:


linux操作系統(tǒng)啟動流程.png
  • 加電自檢: 自檢要是檢查設備:如CPU棚辽、內(nèi)存库快、硬盤是否正常避归、鼠標鍵盤等外接設備是否存在等溯壶。

  • 啟動BIOS:BIOS(基本的輸入輸出系統(tǒng))裝載在硬件芯片CMOS之上荐健,自檢時會啟動這個程序猪叙,并根據(jù)CMOS上的配置信息去讀取其他的硬件信息钞护,檢測正常之后進行硬件設備的初始化窗轩。

  • Boot Loader(MBR):引導加載程序苹丸,在MBR(主引導記錄)中检痰,主要功能是識別包归,加載操作系統(tǒng)的核心文件,并提交到內(nèi)存中運行來啟動對應的系統(tǒng)铅歼,windows的Boot Loader不具備控制權(quán)轉(zhuǎn)交功能公壤,因此windows的Boot Loader不能加載linux系統(tǒng)的Boot Loder,相反linux系統(tǒng)的Boot Loader可以加載windows的Boot Loader椎椰。

  • 啟動Kernel(ramdisk):Kernel會自身初始化厦幅,探測可識別的硬件設備,因為Kernel是存在硬盤之中的慨飘,但是在內(nèi)核啟動時還沒有加載硬盤确憨,為了解決這個問題Kernel內(nèi)核通過ramdisk(虛擬文件系統(tǒng))來加載硬件程序,為了防止根文件系統(tǒng)加載時出現(xiàn)bug等問題無法挽回的情況瓤的,以只讀方式來掛載根文件系統(tǒng)休弃,來完成根文件系統(tǒng)的初始化。

  • rootfs(readonly):啟動真正的根文件系統(tǒng)圈膏,然后虛擬的根文件系統(tǒng)與真實的根文件系統(tǒng)進行交換塔猾。

  • /sbin/init:在內(nèi)核,硬件及驅(qū)動信息加載完畢后稽坤,內(nèi)核會運行用戶空間的第一個應用程序:/sbin/init丈甸,包括系統(tǒng)的主機名稱医增,網(wǎng)絡管理,文件系統(tǒng)格式等其他服務老虫。

centos6的文件格式
[root@localhost ~]# cat /etc/inittab
# inittab is only used by upstart for the default runlevel.
#
# ADDING OTHER CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.
#
# System initialization is started by /etc/init/rcS.conf
#
# Individual runlevels are started by /etc/init/rc.conf
#
# Ctrl-Alt-Delete is handled by /etc/init/control-alt-delete.conf
#
# Terminal gettys are handled by /etc/init/tty.conf and /etc/init/serial.conf,
# with configuration in /etc/sysconfig/init.
#
# For information on how to write upstart event handlers, or how
# upstart works, see init(5), init(8), and initctl(8).
#
# Default runlevel. The runlevels used are:
#   0 - halt (Do NOT set initdefault to this)
#   1 - Single user mode
#   2 - Multiuser, without NFS (The same as 3, if you do not have networking)
#   3 - Full multiuser mode
#   4 - unused
#   5 - X11
#   6 - reboot (Do NOT set initdefault to this)
# 
id:3:initdefault:
  • 執(zhí)行/etc/inittab叶骨,/etc/init/*.conf:centos6的配置文件在/etc/init目錄下所有以.conf結(jié)尾的文件中。
每行定義一種action以及與之對應的process
    id:runlevels:action:process 
        id:一個任務的標識符祈匙;
        runlevels:在哪些級別啟動此任務忽刽;#,###夺欲,也可以為空跪帝,表示所有級別;
        action:在什么條件下啟動此任務些阅;
        process:任務伞剑;
                            
action:
    wait:等待切換至此任務所在的級別時執(zhí)行一次;
    respawn:一旦此任務終止市埋,就自動重新啟動之黎泣;
    initdefault:設定默認運行級別;此時缤谎,process省略抒倚;
    sysinit:設定系統(tǒng)初始化方式,此處一般為指定/etc/rc.d/rc.sysinit腳本坷澡;
                            
例如:
    id:3:initdefault: 
    si::sysinit:/etc/rc.d/rc.sysinit
    l0:0:wait:/etc/rc.d/rc  0
    l1:1:wait:/etc/rc.d/rc  1
    …………
    l6:6:wait:/etc/rc.d/rc  6
  • 設定默認運行級別:根據(jù)系統(tǒng)的設定來啟動系統(tǒng)要進入的運行級別托呕,默認的運行級別有7種,可以用runlevel命令查看當前的運行級別频敛,init #命令可以切換當前的運行級別项郊,默認運行級別不能設置成0和6級別中的任何一個級別,這7種運行級別分別代表如下:
運行級別:為了系統(tǒng)的運行或維護等目的而設定的機制斟赚;
    0-6:7個級別着降;
        0:關機, shutdown
        1、單用戶模式(single user)汁展,root用戶鹊碍,無須認證;維護模式食绿;
        2侈咕、多用戶模式(multi user),會啟動網(wǎng)絡功能器紧,但不會啟動NFS耀销;維護模式;
        3铲汪、多用戶模式(mutli user)熊尉,完全功能模式罐柳;文本界面;
        4狰住、預留級別:目前無特別使用目的张吉,但習慣以同3級別功能使用;
        5催植、多用戶模式(multi user)肮蛹, 完全功能模式,圖形界面创南;
        6伦忠、重啟,reboot
[root@localhost ~]# runlevel
N 3        # N:表示 系統(tǒng)啟動時就進入3級別   3:目前系統(tǒng)的運行級別
[root@localhost ~]# init 5
[root@localhost ~]# runlevel
3 5        # N:由3級別切換到5級別運行
  • 系統(tǒng)初始化腳本:
    系統(tǒng)初始化腳本:/etc/rc.d/rc.sysinit配置文件中稿辙,主要進行如下的操作:
    (1) 設置主機名昆码;
    (2) 設置歡迎信息;
    (3) 激活udev和selinux邻储;
    (4) 掛載/etc/fstab文件中定義的所有文件系統(tǒng)赋咽;
    (5) 檢測根文件系統(tǒng),并以讀寫方式重新掛載根文件系統(tǒng)芥备;
    (6) 設置系統(tǒng)時鐘冬耿;
    (7) 根據(jù)/etc/sysctl.conf文件來設置內(nèi)核參數(shù);
    (8) 激活lvm及軟raid設備萌壳;
    (9) 激活swap設備;
    (10) 加載額外設備的驅(qū)動程序日月;
    (11) 清理操作袱瓮;
#!/bin/bash
#
# /etc/rc.d/rc.sysinit - run once at boot time
#
# Taken in part from Miquel van Smoorenburg's bcheckrc.
#

HOSTNAME=$(/bin/hostname)

set -m

if [ -f /etc/sysconfig/network ]; then
    . /etc/sysconfig/network
fi
if [ -z "$HOSTNAME" -o "$HOSTNAME" = "(none)" ]; then
    HOSTNAME=localhost
fi

if [ ! -e /proc/mounts ]; then
        mount -n -t proc /proc /proc
        mount -n -t sysfs /sys /sys >/dev/null 2>&1
fi
if [ ! -d /proc/bus/usb ]; then
        modprobe usbcore >/dev/null 2>&1 && mount -n -t usbfs /proc/bus/usb /proc/bus/usb
    . /etc/sysconfig/network
fi
if [ -z "$HOSTNAME" -o "$HOSTNAME" = "(none)" ]; then
    HOSTNAME=localhost
fi

if [ ! -e /proc/mounts ]; then
        mount -n -t proc /proc /proc
        mount -n -t sysfs /sys /sys >/dev/null 2>&1
fi
if [ ! -d /proc/bus/usb ]; then
        modprobe usbcore >/dev/null 2>&1 && mount -n -t usbfs /proc/bus/usb /proc/bus/usb
else
        mount -n -t usbfs /proc/bus/usb /proc/bus/usb
fi

#remount /dev/shm to set attributes from fstab #669700
mount -n -o remount /dev/shm >/dev/null 2>&1
#remount /proc to set attributes from fstab #984003
mount -n -o remount /proc >/dev/null 2>&1

. /etc/init.d/functions
  • 關閉或啟動對應級別下的服務:意味著去啟動或關閉/etc/rc.d/rc#.d/目錄下的服務腳本所控制服務;
    K:要停止的服務;K##爱咬,優(yōu)先級尺借,數(shù)字越小,越是優(yōu)先關閉精拟;依賴的服務先關閉燎斩,而后關閉被依賴的;
    S:要啟動的服務;S##蜂绎,優(yōu)先級栅表,數(shù)字越小,越是優(yōu)先啟動师枣;被依賴的服務先啟動怪瓶,而依賴的服務后啟動;
    同一個服務的K腳本數(shù)值小時,S的腳本數(shù)值就應該比K的數(shù)值大践美,相反的洗贰,如果S數(shù)值小找岖,則K的數(shù)值要比S的數(shù)值要大。
chkconfig命令:管控/etc/init.d/每個腳本在各級別下的啟動或關閉狀態(tài):
查看該服務在各級別下的開啟或關閉狀態(tài):chkconfig  --list   [name]
添加該服務在各級別下的開啟或關閉狀態(tài):chkconfig  --add  name
    能被添加的服務的腳本定義格式之一:
        #!/bin/bash
        #
        # chkconfig: LLL  NN1 NN2
            LL: 運行級別(runlevel)
            NN1:啟動優(yōu)先級
            NN2:關閉優(yōu)先級       
        # description:  表明此配置文件的作用

刪除指定服務在各級別下的開啟或關閉狀態(tài):chkconfig  --del  name
修改指定的鏈接類型:
    chkconfig  [--level  LEVELS]  name <on|off|reset>
        --level LEVELS:指定要控制的級別敛滋;默認為2345许布;
[root@localhost ~]# chkconfig --list crond
crond           0:關閉    1:關閉    2:啟用    3:啟用    4:啟用    5:啟用    6:關閉
[root@localhost ~]# chkconfig --level 23 crond off
[root@localhost ~]# chkconfig --list crond
crond           0:關閉    1:關閉    2:關閉    3:關閉    4:啟用    5:啟用    6:關閉

注意:正常級別下,最后啟動的一個服務S99local沒有鏈接至/etc/init.d下的某腳本绎晃,而是鏈接至了/etc/rc.d/rc.local (/etc/rc.local)腳本蜜唾;因此,不便或不需寫為服務腳本的程序期望能開機自動運行時箕昭,直接放置于此腳本文件中即可灵妨。

在3級別下的服務有:
[root@localhost ~]# ls /etc/rc.d/rc3.d
K10saslauthd    K89netconsole    S07iscsid     S10network  S13iscsi             S25netfs      S80postfix
K87multipathd   K89rdisc         S08ip6tables  S11auditd   S15mdmonitor         S26udev-post  S90crond
K87restorecond  S02lvm2-monitor  S08iptables   S12rsyslog  S25blk-availability  S55sshd       S99local

  • 啟動終端:最后mingetty會調(diào)用login程序。

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

grub是目前最廣泛linux啟動管理程序落竹,其配置文件為:/boot/grub/grub.conf泌霍,此目錄其實是/etc/grub.conf的符號鏈接

[root@localhost ~]# ll /etc | grep grub.conf
lrwxrwxrwx.  1 root root     22 9月   6 01:57 grub.conf -> ../boot/grub/grub.conf

注意:此處grub.conf僅限centos5和centos6版本,而centos7的grub的配置文件在/boot/grub2/grub.cfg中

[root@localhost ~]# cat /boot/grub/grub.conf
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd0,0)
#          kernel /vmlinuz-version ro root=/dev/mapper/VolGroup-lv_root
#          initrd /initrd-[generic-]version.img
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
password --md5 $1$E7rO20$rqSROpSM6VCDdjlra727I1
title CentOS 6 (2.6.32-754.el6.i686)
    root (hd0,0)
    kernel /vmlinuz-2.6.32-754.el6.i686 ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS rd_NO_MD rd_LVM_LV=VolGroup/lv_swap crashkernel=auto LANG=zh_CN.UTF-8 rd_LVM_LV=VolGroup/lv_root  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
    initrd /initramfs-2.6.32-754.el6.i686.img

配置項:
default=#: 設定默認啟動的菜單項述召;落單項(title)編號從0開始朱转;
timeout=#:指定菜單項等待選項選擇的時長;
splashimage=(hd#,#)/PATH/TO/XPM_PIC_FILE:指明菜單背景圖片文件路徑积暖;
hiddenmenu:隱藏菜單藤为;
password [--md5] STRING: 菜單編輯認證;
title TITLE:定義菜單項“標題”, 可出現(xiàn)多次夺刑;
root (hd#,#):grub查找stage2及kernel文件所在設備分區(qū)缅疟;為grub的“根”;
kernel /PATH/TO/VMLINUZ_FILE [PARAMETERS]:啟動的內(nèi)核
initrd /PATH/TO/INITRAMFS_FILE.img: 內(nèi)核匹配的ramfs文件;
password [--md5] STRING: 啟動選定的內(nèi)核或操作系統(tǒng)時進行認證遍愿;

grub界面支持命令行接口 存淫,在界面輸入e、b沼填、c等命令可以進入對應的命令編輯桅咆,在對應的“title”中輸入c進入命令模式


grub界面.png

grub的命令行界面.png

grub的help信息.png

為了防止他人隨意進入grub對系統(tǒng)造成破壞(修改root密碼等操作)可以在grub配置文件文件中加入密碼來防止他人隨意進入。

  1. 使用grub-md5-crypt命令來生成加密的密碼
[root@localhost ~]# grub-md5-crypt
Password: 
Retype password: 
$1$94MZ20$VEC6jrQzic0nYg3CgFxaD.
  1. 在配置文件中一個或某一個title添加password --md5 ***********格式的密碼保護編輯模式
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd0,0)
#          kernel /vmlinuz-version ro root=/dev/mapper/VolGroup-lv_root
#          initrd /initrd-[generic-]version.img 
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
password --md5 $1$94MZ20$VEC6jrQzic0nYg3CgFxaD.                  #此處password可以對grub界面加密坞笙,使用的就是上面得到的加密的密碼
title CentOS 6 (2.6.32-754.el6.i686)
        root (hd0,0)
        kernel /vmlinuz-2.6.32-754.el6.i686 ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS rd_NO_MD rd_LVM_LV=VolGroup/lv_swap crashkernel=auto LANG=zh_CN.UTF-8 rd_LVM_LV=VolGroup/lv_root  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
        initrd /initramfs-2.6.32-754.el6.i686.img
        password --md5 $1$94MZ20$VEC6jrQzic0nYg3CgFxaD.          #此處password可以對進入系統(tǒng)之前加密 

加密后回到grub界面提示按p輸入密碼解鎖下一步設置或環(huán)境

加密后的grub界面.png

按p后提示輸入密碼
grub提示輸入密碼.png

輸入密碼后按c可以進入編輯模式岩饼,在編輯模式下可以進行find來查看grub第一和第二階段所有的硬盤位置,具體的命令可以通過help來獲取幫助:
grub命令界面.png

實現(xiàn)kickstart文件制作與光盤鏡像制作

kickstart只能在圖形界面下運行并先安裝kickstart薛夜,命令如下:

定制kickstart文件:
    # yum install  system-config-kickstart
    # system-config-kickstart
kickstart配置界面.png
  1. 制作kickstart文件配置安裝方法


    安裝方法.png
  2. 配置分區(qū)


    分區(qū)信息.png
  3. 配置網(wǎng)絡


    網(wǎng)絡配置.png
  4. 配置防火墻


    防火墻e.png
  5. 配置圖形界面


    圖形界面配置.png
  6. 配置包組


    軟件包選擇.png
  7. 保存并檢驗


    保存.png
[root@localhost ~]# ksvalidator ks.cfg
[root@localhost ~]# 

kickstart文件格式

kickstart配置文件由命令段,程序包段,腳本段等一個分段內(nèi)容組成

  • 命令段:指定各種安裝前配置選項籍茧,如鍵盤類型等
    必備命令
    authconfig:認證方式配置
        authconfig  --enableshadow  --passalgo=sha512
    bootloader:定義bootloader的安裝位置及相關配置
        bootloader  --location=mbr  --driveorder=sda  --append="crashkernel=auto rhgb quiet"
    keyboard:設置鍵盤類型
        keyboard us
    lang:語言類型
        lang  zh_CN.UTF-8
    part:分區(qū)布局;
        part  /boot  --fstype=ext4  --size=500
        part  pv.008002  --size=51200        #pv后面的數(shù)字是pv的id號
    clearpart:清除分區(qū)
        clearpart  --none  --drives=sda:清空磁盤分區(qū)却邓;
    volgroup:創(chuàng)建卷組
        volgroup  myvg  --pesize=4096  pv.008002
    logvol:創(chuàng)建邏輯卷
        logvol  /home  --fstype=ext4  --name=lv_home  --vgname=myvg  --size=5120
    rootpw:管理員密碼
        rootpw   --iscrypted  $6$4Yh15kMGDWOPtbbW$SGax4DsZwDAz4201.O97WvaqVJfHcISsSQEokZH054juNnoBmO/rmmA7H8ZsD08.fM.Z3Br/67Uffod1ZbE0s.
        生成加密密碼的方式:
        ~]# openssl  passwd  -1  -salt `openssl rand -hex 4`
    timezone:時區(qū)
        timezone  Asia/Shanghai
    
    可選命令
    install  OR  upgrade:安裝或升級硕糊;
    text:安裝界面類型,text為tui,默認為GUI
    network:配置網(wǎng)絡接口
        如:network  --onboot yes  --device eth0  --bootproto dhcp  --noipv6
    firewall:防火墻 
        如:firewall  --disabled
    selinux:SELinux
        如:selinux --disabled
    halt简十、poweroff或reboot:安裝完成之后的行為檬某;
    repo:指明安裝時使用的repository;
        如:repo  --name="CentOS"   --baseurl=cdrom:sr0  --cost=100
    url: 指明安裝時使用的repository螟蝙,但為url格式恢恼;
        如:url --url=http://...省略
    
  • 程序包段:指明要安裝程序包,以及包組胰默,也包括不安裝的程序包
%packages            包安裝的開始標識符
@group_name          包要安裝的包組
package              要安裝的單個包
-package             不需要安裝的包
%end                 包安裝的結(jié)束標識符
  • 腳本段:指明要運行的腳本,分為linux安裝前的腳本和安裝后腳本
%pre:安裝前腳本
    運行環(huán)境:運行安裝介質(zhì)上的微型Linux系統(tǒng)環(huán)境场斑;
%post:安裝后腳本
    運行環(huán)境:安裝完成的系統(tǒng)
  • ks:指明kickstart文件的位置,主要有以下幾種格式,其中http,ftp和https三種形式引導kickstart時要保證系統(tǒng)能連接網(wǎng)絡
ks=
    DVD drive: ks=cdrom:/PATH/TO/KICKSTART_FILE
    Hard Drive: ks=hd:/DEVICE/PATH/TO/KICKSTART_FILE
    HTTP Server: ks=http://HOST[:PORT]/PATH/TO/KICKSTART_FILE
    FTP Server:  ks=ftp://HOST[:PORT]/PATH/TO/KICKSTART_FILE
    HTTPS Server:   ks=https://HOST[:PORT]/PATH/TO/KICKSTART_FILE

以下是系統(tǒng)安裝完成之后在/root目錄下根據(jù)用戶選擇生成的kickstart的配置文件信息

[root@localhost ~]# cat anaconda-ks.cfg 
# Kickstart file automatically generated by anaconda.

#version=DEVEL
install
cdrom
lang zh_CN.UTF-8
keyboard us
network --onboot yes --device eth0 --bootproto dhcp --noipv6
rootpw  --iscrypted $6$Ka7MzfgRm5CS9N22$cMgIl.79/xGrzOG4jWCfWHnsbl0fuPIfI5zhfCEC.PKlAr18gJR7auJp8smR1MI73i9Hl3XV2Aa5tFMQ4/j9i0
firewall --service=ssh
authconfig --enableshadow --passalgo=sha512
selinux --enforcing
timezone Asia/Shanghai
bootloader --location=mbr --driveorder=sda --append="nomodeset crashkernel=auto rhgb quiet"
# The following is the partition information you requested
# Note that any partitions you deleted are not expressed
# here so unless you clear all partitions first, this is
# not guaranteed to work
#clearpart --none
#volgroup MYVG --pesize=4096 pv.008002
#logvol / --fstype=ext4 --name=lv_ --vgname=MYVG --size=10240
#logvol /home --fstype=ext4 --name=lv_home --vgname=MYVG --size=5000
#logvol swap --name=lv_swap --vgname=MYVG --size=2000
#logvol /usr --fstype=ext4 --name=lv_usr --vgname=MYVG --size=15000
#logvol /var --fstype=ext4 --name=lv_var --vgname=MYVG --size=10000

#part /boot --fstype=ext4 --size=500
#part pv.008002 --size=60000


repo --name="CentOS"  --baseurl=cdrom:sr0 --cost=100

%packages --nobase
@core
%end

對于修改的kickstart配置文件如果有語法錯誤可以使用檢查語法錯誤命令: ksvalidator

[root@localhost ~]# ksvalidator anaconda-ks.cfg 
[root@localhost ~]# 
#如果有錯誤會有提示

引導光盤鏡像制作及kickstart文件安裝系統(tǒng)

1. 創(chuàng)建目錄并復制isolinux目錄:
引導光盤僅需要isolinux即可,并把配置好的kickstart文件復制到創(chuàng)建目錄中

[root@localhost ~]# mount /dev/cdrom /media
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@localhost ~]# mkdir /tmp/myiso
[root@localhost ~]# cp -r /media/isolinux/ /tmp/myiso/
[root@localhost ~]# ls /tmp/myiso/isolinux/
boot.cat  grub.conf   isolinux.bin  memtest     TRANS.TBL     vmlinuz
boot.msg  initrd.img  isolinux.cfg  splash.jpg  vesamenu.c3
[root@localhost ~]# cp ks.cfg /tmp/myiso/isolinux

2. 創(chuàng)建iso文件系統(tǒng):
使用mkisofs命令來創(chuàng)建,格式如下:
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 myiso/

[root@localhost ~]# cd /tmp
[root@localhost tmp]# mkisofs -R -J -T -v --no-emul-boot --boot-load-size 4 --boot-info-table -V "CentOS 7 x86_64 boot" -c isolinux/boot.cat -b isolinux/isolinux.bin -o /root/boot.iso myiso/
I: -input-charset not specified, using utf-8 (detected in locale settings)
genisoimage 1.1.9 (Linux)
Scanning myiso/
Scanning myiso/isolinux
Excluded by match: myiso/isolinux/boot.cat
Excluded: myiso/isolinux/TRANS.TBL
Writing:   Initial Padblock                        Start Block 0
Done with: Initial Padblock                        Block(s)    16
Writing:   Primary Volume Descriptor               Start Block 16
Done with: Primary Volume Descriptor               Block(s)    1
Writing:   Eltorito Volume Descriptor              Start Block 17
Size of boot image is 4 sectors -> No emulation
Done with: Eltorito Volume Descriptor              Block(s)    1
Writing:   Joliet Volume Descriptor                Start Block 18
Done with: Joliet Volume Descriptor                Block(s)    1
Writing:   End Volume Descriptor                   Start Block 19
Done with: End Volume Descriptor                   Block(s)    1
Writing:   Version block                           Start Block 20
Done with: Version block                           Block(s)    1
Writing:   Path table                              Start Block 21
Done with: Path table                              Block(s)    4
Writing:   Joliet path table                       Start Block 25
Done with: Joliet path table                       Block(s)    4
Writing:   Directory tree                          Start Block 29
Done with: Directory tree                          Block(s)    2
Writing:   Joliet directory tree                   Start Block 31
Done with: Joliet directory tree                   Block(s)    2
Writing:   Directory tree cleanup                  Start Block 33
Done with: Directory tree cleanup                  Block(s)    0
Writing:   Extension record                        Start Block 33
Done with: Extension record                        Block(s)    1
Writing:   The File(s)                             Start Block 34
 21.94% done, estimate finish Tue Oct  9 19:30:39 2018
 43.79% done, estimate finish Tue Oct  9 19:30:39 2018
 65.71% done, estimate finish Tue Oct  9 19:30:39 2018
 87.57% done, estimate finish Tue Oct  9 19:30:39 2018
Total translation table size: 4701
Total rockridge attributes bytes: 1438
Total directory bytes: 2654
Path table size(bytes): 26
Done with: The File(s)                             Block(s)    22659
Writing:   Ending Padblock                         Start Block 22693
Done with: Ending Padblock                         Block(s)    150
Max brk space used 0
22843 extents written (44 MB)
-----------------------------------------------------------------------------------------
[root@localhost ~]# ls
ab               download.cgi  hostname            line      sum       公共的  文檔
anaconda-ks.cfg  filename      idsum               linesum   user      模板    下載
boot.iso         foo.sh        install.log         linesum2  useradd   視頻    音樂
dead.letter      hadoop        install.log.syslog  menu      wordlist  圖片    桌面

3. 使用FTP工具將boot.iso傳到主機上:

將boot.iso發(fā)送到主機.png

4. 配置虛擬機并啟動:
光盤要選擇boot.iso這個文件

虛擬機配置.png

5. 開機啟動并配置kickstart文件:

啟動界面.png

在以上界面按下ESC后進入boot牵署,并輸入ks.cfg的路徑

boot界面.png

最后敲入命令即可進入自動引導安裝了.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末漏隐,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子奴迅,更是在濱河造成了極大的恐慌青责,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,113評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件取具,死亡現(xiàn)場離奇詭異脖隶,居然都是意外死亡,警方通過查閱死者的電腦和手機暇检,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評論 2 381
  • 文/潘曉璐 我一進店門产阱,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人块仆,你說我怎么就攤上這事构蹬。” “怎么了悔据?”我有些...
    開封第一講書人閱讀 153,340評論 0 344
  • 文/不壞的土叔 我叫張陵怎燥,是天一觀的道長。 經(jīng)常有香客問我蜜暑,道長,這世上最難降的妖魔是什么策肝? 我笑而不...
    開封第一講書人閱讀 55,449評論 1 279
  • 正文 為了忘掉前任肛捍,我火速辦了婚禮,結(jié)果婚禮上之众,老公的妹妹穿的比我還像新娘拙毫。我一直安慰自己,他們只是感情好棺禾,可當我...
    茶點故事閱讀 64,445評論 5 374
  • 文/花漫 我一把揭開白布缀蹄。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪缺前。 梳的紋絲不亂的頭發(fā)上蛀醉,一...
    開封第一講書人閱讀 49,166評論 1 284
  • 那天,我揣著相機與錄音衅码,去河邊找鬼拯刁。 笑死,一個胖子當著我的面吹牛逝段,可吹牛的內(nèi)容都是我干的垛玻。 我是一名探鬼主播,決...
    沈念sama閱讀 38,442評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼奶躯,長吁一口氣:“原來是場噩夢啊……” “哼帚桩!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起嘹黔,我...
    開封第一講書人閱讀 37,105評論 0 261
  • 序言:老撾萬榮一對情侶失蹤账嚎,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后参淹,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體醉锄,經(jīng)...
    沈念sama閱讀 43,601評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,066評論 2 325
  • 正文 我和宋清朗相戀三年浙值,在試婚紗的時候發(fā)現(xiàn)自己被綠了恳不。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,161評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡开呐,死狀恐怖烟勋,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情筐付,我是刑警寧澤卵惦,帶...
    沈念sama閱讀 33,792評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站瓦戚,受9級特大地震影響沮尿,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜较解,卻給世界環(huán)境...
    茶點故事閱讀 39,351評論 3 307
  • 文/蒙蒙 一畜疾、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧印衔,春花似錦啡捶、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽彤敛。三九已至,卻和暖如春了赌,著一層夾襖步出監(jiān)牢的瞬間墨榄,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評論 1 261
  • 我被黑心中介騙來泰國打工揍拆, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留渠概,地道東北人。 一個月前我還...
    沈念sama閱讀 45,618評論 2 355
  • 正文 我出身青樓嫂拴,卻偏偏與公主長得像播揪,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子筒狠,可洞房花燭夜當晚...
    茶點故事閱讀 42,916評論 2 344

推薦閱讀更多精彩內(nèi)容