簡述linux操作系統(tǒng)啟動流程
本示例流程以centos6的以MBR結(jié)構(gòu)的linux啟動流程為例:
加電自檢: 自檢要是檢查設備:如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對系統(tǒng)造成破壞(修改root密碼等操作)可以在grub配置文件文件中加入密碼來防止他人隨意進入。
- 使用grub-md5-crypt命令來生成加密的密碼
[root@localhost ~]# grub-md5-crypt
Password:
Retype password:
$1$94MZ20$VEC6jrQzic0nYg3CgFxaD.
- 在配置文件中一個或某一個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)境
按p后提示輸入密碼
輸入密碼后按c可以進入編輯模式岩饼,在編輯模式下可以進行find來查看grub第一和第二階段所有的硬盤位置,具體的命令可以通過help來獲取幫助:
實現(xiàn)kickstart文件制作與光盤鏡像制作
kickstart只能在圖形界面下運行并先安裝kickstart薛夜,命令如下:
定制kickstart文件:
# yum install system-config-kickstart
# system-config-kickstart
-
制作kickstart文件配置安裝方法
-
配置分區(qū)
-
配置網(wǎng)絡
-
配置防火墻
-
配置圖形界面
-
配置包組
-
保存并檢驗
[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傳到主機上:
4. 配置虛擬機并啟動:
光盤要選擇boot.iso這個文件
5. 開機啟動并配置kickstart文件:
在以上界面按下ESC后進入boot牵署,并輸入ks.cfg的路徑
最后敲入命令即可進入自動引導安裝了.