centos启动流程:
POST–>BootSquence(BIOS)–>Bootloader(MBR)–>kernel(ramdisk)–>rootfs(switch_root)–>/sbin/init(/etc/inittab,/etc/init/*.conf,/usr/lib/systemd/system/)–>默认运行级别,系统初始化、关闭及启动服务、启动终端(图形终端)
grub启动引导程序配置及命令行接口详解
GRUB(boot loader)
grub:grand unified bootloader
grub 0.x:grub legacy
grub 1.x:grub2
grub legacy:
stage1:mbr
stage1_5:mbr之后的扇区,让stage1中的bootloader能设别stage2所在的分区上的文件系统;
stage2:磁盘分区(/boot/grub/)
配置文件:/boot/grub/grub.conf <–/etc/grub.conf
stage2及内核通常放置于一个基本磁盘分区:
功用:
(1)提供菜单,并提供交互式接口
e:编辑模式,用于编辑菜单
c:命令模式,交互式接口;
(2)加载用户选择的内核或操作系统
允许传递参数给内个
可隐藏此菜单
(3)为菜单提供了保护机制
为编辑菜单进行认证
为启用内核或操作系统进行认证
如何设别设备
(hd#,#),
hd#:磁盘编号,用数字表示
#:分区编号,用0开始编号
(hd0,0)
grub的命令行接口
help:获取帮助列表
help KEYWORD:详细帮助信息
find (hd#,#)/PATH/TO/SOMEFILE;
root (hd#,#)
kernel /PATH/TO/KERNEL_FILE:设定本次启动时用到的内核文件;额外还可以添加许多内核支持使用的cmdline参数;
initrd /PATH/TO/INITRAMFS_FILE:设定为选定的内核提供额外的文件的ramdisks;
boot:引导启动选定的内核;
手动在grub命令行接口启动系统;
grub> root (hd#,#)
grub> kernel /vmliuz-VERSION-RELEASE ro root=/dev/DEVICE
grub> initrd /initramfs-VERSION-RELEASE.img
grub> boot
配置文件:/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/VMLIMUZ_FILE [PARAMETERS]:启动的内核
initrd /PATH/TO/INITRAMFS_FILE:内核匹配的ramfs文件;
password [–md5] STRING;启动选定的内核或操作系统时进行认证;
grub-md5-crypt命令:
进入单用户模式:
(1)编辑grub菜单(选定要编辑的title,而后使用e命名);
(2)在选定的kernel后附加
1,s,S,或single都可以;
(3)在kernel所在行,键入“b”命令;
安装grub:
(1)grub-install
grub-install –root-directory=ROOT /dev/DISK
(2)grub
grub> root (hd#,#)
grub> setup (hd#)
实现kickstart文件制作与光盘镜像制作
安装引导选项:
ks:指明kickstart文件的位置;
ks=
DVD dirive:ks=cdrom:/PATH/TO/KICKSTART_FILE
Hard dirive: 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
kickstart文件的格式
命令段:
指定各种安装前配置选项,如键盘类型等;
必备命令
可选命令
程序包段:
指明要安装程序包,以及包组,也包括
%packages
@group_name
package
-package
%end
脚本段:
%pre:安装前脚本
运行环境:运行安装介质上的卫星linux系统环境;
%post:安装后脚本
运行环境:安装完成的系统
命令段中的必备命令:
authconfig:认证方式配置
authconfig –enableshadow –passaigo=sha512
bootloader:定义bootloader的安装位置及相关配置
bootloader –location=mbr –driveorder=sda –sppend=”crashkernel=auto rhgb quiet”
keyboard:设置键盘类型
keyboard US
lang:语言类型
lang zh_CN.UTF-8
part:分区布局:
part /boot –fstype=ext4 –size=500
part pv.008002 –size=51200
rootps:管理员密码
timezone:指定时区
timezone Asia/Shanghai
补充:分区相关的其它指令
clearpart:清除分区
clearpart –none –drives=sda;清空磁盘分区;
volgroup:创建卷组
volgroup myvg –pesize=4096 pv.oo8002
logvol:创建逻辑卷
logvol /home –fstype=ext4 –name=lv_home –vgname=myvg –size=5120
生成加密密码的方式:
openssl password -1 -salt ‘openssl rand -hex4’
可选命令:
install OR upgrade:安装或升级;
text:安装界面类型,text为tul,默认为GUI
network:配置网络接口
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格式:
系统安装完成之后禁用防火墙:
centos 6
service iptables stop
chkconfig iptables off
centos 7
systemctl stop firewalld
systemctl disable firewalld
系统安装后禁用selinux
编辑 /etc/sysconfig/selinux或/etc/selinux/config文件,修改selinux参数的值为下面其中之一:
permissive
disabled
立即生效:
getenforce
setenforce 0
定制kickstart文件:
yum install system-config-kickstart
system-config-kickstart
检查语法错误:
ksvalidator
创建光盘镜像:
mkisofs:
mkisofs -R -j -T -v -no-emul-boot –boot-load-size 4 –boot-info-table -V “CentOS6 x86_64 boot” -c isolinux/boot.cat -b isolinux/isolinux.bin -o /root/boot.iso /PATH/TO/myboot/
本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/104529
评论列表(1条)
赞,很棒的总结。继续加油。