
Linux的系统启动分为几个阶段,由于运行中的系统分为用户空间层面和内核空间层面,所以一个完整的系统启动也是先启动内核文件,然后在启动用户层面的各种应用程序。Linux系统的设计属于单内核设计,但是各功能模块却支持动态的装载和卸载,极大的压缩了内核的体积,让内核的启动也更加快捷和迅速。
过程简述:
1.POST(加电自检) :主要负责检测系统外围关键设备(如:CPU、内存、显卡、I/O、键盘鼠标等)是否正常。
2.boot sequence(选择启动设备) :按次序查找各引导设备,第一个有引导程序的设备即为本次启动要用到的设备;
上述两个功能都由BIOS来完成,BIOS(Basic Input / Output System),又称基本输入输出系统,是一个固化在ROM中的软件,是 *** 作系统输入输出管理系统的一部分。
3.bootloader(引导加载器):
Linux下的引导加载器有grub leancy和grub2两种,Cenos6中使用的是前者。
MBR(主引导记录):
MBR的共由512字节组成,前446字节存放的即是bootloader。所以在选定启动设备后,收件是读取MBR中的bootloader,打开grub菜单。
grub:
功能:提供一个菜单,允许用户选择要启动的系统或不同的内核版本; 把用户选定的内核装载到RAM中的特定空间中,解压、展开,而后把系统控制权移交给内核;
gurb的实现共有3个阶段:
1st stage:位于MBR的BootLoader中,用来加载2nd stage到内存中。
1.5 stage:1和2的桥梁,用来驱动文件系统来使1阶段过渡到2阶段。
2nd stage:grub核心,/boot/grub,存放在磁盘分上,用于加载内核文件。
4.加载内核
分四个步骤:
探测可识别到的所有硬件设备;
加载硬件驱动程序;(有可能会借助于ramdisk加载驱动)
以只读方式挂载根文件系统;即rootfs
运行用户空间的第一个应用程序:/sbin/init。
内核文件:/boot//vmlinuz-VERSION-release,ramdisk文件/boot/initramfs-VERSION-release.img。
在上述的内核启动后,后续的 *** 作都交给init程序来完成。/sbin/init程序是用户空间的第一个程序,主要完成系统初始化,步骤如下:
设置默认运行级别:
运行级别的配置文件为/etc/inittab,共0-6七个运行级别,可以在该文件中自主定义,下次启动默认进入指定的运行级别。
运行系统初始化脚本:
/etc/rc.d/rc.sysinit即为系统的初始化脚本,系统通过自动执行该脚本,从而完成对系统的设置和信息的初始化。
关闭对应级别下需要停止的服务,启动对应级别下需要开启的服务:
这里主要是指通过chkconfig所配置的开机自动启动或者关闭的各类服务。
设置登录终端:
启动图形终端:级别5需要启动
GRand Unified Bootloader,系统启动后会首先打开一个grub菜单,上图所示,可以自主选择内核、定制内核参数。grub由三个阶段组成,1st stage,1_5stage以及stage2,stage2和内核文件等通常放置于一个基本磁盘分区。
grub有自己的命令行接口:
配置文件说明:/boot/grub/grub.conf
kickstart是什么
许多系统管理员愿意使用自动化的安装方法来安装linux系统。为了满足这种需要,红帽公司建立了kickstart安装方法。使用kickstart自动化安装,系统管理员可以创建一个ks文件,该文件包含了在典型的安装过程中所遇到的问题的答案。
Kickstart文件可以存放在一个固定的位置上,在安装过程中被独立的机器所读取。这个安装方法可以支持使用单一kickstart文件在多台机器上安装Linux系统,这对于网络和系统管理员来说是个理想的选择。
如何执行kickstart安装
kickstart 安装可以使用本地光盘,本地硬盘驱动器,或通过 NFS、FTP、HTTP 来执行。
要使用 kickstart,必须:
1.创建一个正确的kickstart文件。
2.创建有kickstart文件的引导介质或者让主机可以通过网络访问该文件。
3.筹备安装过程。
4.开始kickstart安装。
创建kickstart配置文件的方式:
1. 文本编辑器编辑生成:vim
2. 用图形化界面配置:system-config-kickstat(需要安装system-config-kickstart.noarch包)
步骤:
创建光盘根目录
复制光盘下的isolinux目录到根目录下
赋予isolinux里的所有文件和目录写权限(这样就可以自定义isolinux.cfg文件)
复制修改好的ks文件到myboot目录下(这里myboot目录相当于光盘的根目录)
建立镜像
配置kickstart脚本的方法###############################################################
#
# Sample Kickstart Configuration File
#
###############################################################
###############################################################
#
# point to a local installation server, or use “cdrom”
#
###############################################################
url --url http://rha-server/pub/rhel5/
#cdrom
rootpw RedHat
bootloader --location=mbr --password=redhat
###############################################################
#
# partitioning
#
###############################################################
zerombr yes
clearpart --all --initlabel
part /boot --fstype ext3 --size 128
part / --fstype ext3 --size 1 --grow
part swap --recommended
###############################################################
#
# network configuration
# - the following is for the “recommended solution” outlined
# in the Red Hat Academy Instructor‘s Guide
#
###############################################################
network --bootproto=dhcp --device=eth0
firewall --disabled
#network --bootproto=static --ip=192.168.0.254 --netmask=255.255.255.0
--device=eth0
#firewall --medium --http --port=https:tcp
###############################################################
#
# environment
#
###############################################################
lang zh_CN.UTF-8
timezone Asia/Shanghai
###############################################################
#
# hardware
#
###############################################################
keyboard us
xconfig --startxonboot
###############################################################
# misc
###############################################################
key --skip # skip install number
authconfig --enableshadow --enablemd5
reboot # reboot automatically when done
install # instead of “upgrade”
###############################################################
#
# Software
#
###############################################################
%packages --resolvedeps
@admin-tools
@editors
@text-internet
@gnome-desktop
@core
@base
@base-x
@chinese-support
@sound-and-video
@graphical-internet
emacs
kexec-tools
device-mapper-multipath
xorg-x11-utils
xorg-x11-server-Xnest
-sysreport
%post
###############################################################
#
# Post Script - the following script runs on the newly
# installed machine, immediately after installation
#
###############################################################
echo “nameserver 192.168.0.254” 》》 /etc/resolv.conf
rpm -ivh ftp://rha-server/rha/autoupdate/rha-base*.rpm
#rpm -Fvh ftp://Kickstart.example.com/pub/9/i386/updates/*.rpm
#curl http://rha-server/rha/xorg.conf 》 /etc/X11/xorg.conf
#curl http://rha-server/rha/station.cfg | tar xvzf -
for i in elvis blondie prince madonnado
useradd $i
echo redhat | passwd --stdin $i
done
Kickstart 脚本设计
Kickstart 脚本通常有三个不同的部分。
: 命令部分
: 软件包部分
: 安装后脚本部分
Anaconda 会忽略Kickstart 脚本中所有以“#”开始的行和空行。
命令部分
从文件的最开始直到出现以%packages 开始的行,这一部分都属于命令部分。命令行必须以可识别的关键字开始,并且所有与该关键字有关的参数都必须出现在同一行中。命令部分是用来指定安装程序需要的除软件选项外的所有标准信息。关键字在命令部分可以以任意次序出现。
软件包部分(%packages)
软件包部分是用来指定需要安装的软件。这部分从以%packages 开头的行开始,直到下
一个以“%”字符开始的行为止。这一部分通常采用以下两种格式之一。
: @Component Name
: package-name
第一种格式是用软件组来指定软件,在这里一定要注意正确拼写软件组名称,并注意大小写。
第二种格式是用来指定要安装的软件包的具体名称。如果%packages 行包含额外的--resolvedeps 参数,那么也会安装解决相依性的软件包。
安装后脚本部分(%post)
后处理部分是在没有 Anaconda 安装程序参与下,执行所有新安装系统的机器的自定义过程。执行这部分内容与在新安装系统的机器的环境下运行 Bash Shell 脚本的效果是一样的。如果是网络安装,那么执行前面提到作为实例的脚本也可以激活网络配置。
上面就是kickstart脚本配置的方法介绍了,可以知道,kickstart脚本主要分为三个部分,需要对命令、软件包、安装后脚本这三个部分进行处理。
Kickstart 1.9.8怎么用您可以按照以下步骤使用它:1. 下载Kickstart 1.9.8的安装文件并将其保存到Amiga计算机的硬盘上。
2. 打开Amiga计算机并启动AmigaDOS *** 作系统。
3. 进入Kickstart 1.9.8的安装目录,运行安装程序。按照屏幕上的提示进行安装,并将Kickstart 1.9.8安装到Amiga计算机的内存中。
4. 安装完成后,重新启动Amiga计算机。此时,Kickstart 1.9.8将自动加载并运行。
5. 您可以使用Kickstart 1.9.8来安装其他的Amiga *** 作系统,或者进行系统的维护和修复工作。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)