CentOS系统安装
系统启动流程:
bootloader-->kernel(initramfs)-->rootfs-->/sbin/init
anaconda: 系统安装程序
tui: 基于图形库curses的文本窗口
gui:图形窗口
安装程序启动过程
①MBR:boot.cat
②stage2: isolinux/isolinux.bin
配置文件:isolinux/isolinux.cfg
每个对应的菜单选项:
加载内核:isolinuz/vmlinuz
向内核传递参数:append initrd=initrd.img...
③装载根文件系统,并启动anaconda
默认启动GUI接口
若是显式指定使用TUI接口:向内核传递text参数即可
(1)按tab键,在后面增加text
(2)按ESC键:boot: linux text
anaconda工作过程
Anaconda安装系统分成三个阶段:
①安装前配置阶段
安装过程使用的语言
键盘类型
安装目标存储设备
Basic Storage:本地磁盘
特殊设备:iSCSI
设定主机名
配置网络接口
时区
管理员密码
设定分区方式及MBR的安装位置
创建一个普通用户
选定要安装的程序包
②安装阶段
在目标磁盘创建分区,执行格式化操作等
将选定的程序包安装至目标位置
安装bootloader和initramfs
③首次启动后有时会需要一些简单的配置
如:
iptables
selinux
core dump
系统安装
启动安装过程一般应位于引导设备;后续的anaconda及其安装用到的程序包等可来自下面几种方式:
本地光盘
本地硬盘
ftp server: yum repository
http server: yum repostory
nfs server
如果想手动指定安装源:
Esc键:boot: linux askmethod 或 tab键:后跟上askmethod
指明路径,继续安装即可
anaconda的配置方式:
(1) 交互式配置方式
(2) 通过读取事先给定的配置文件自动完成配置;
按特定语法给出的配置选项;
kickstart文件
安装boot引导选项:boot:
text: 文本安装方式
askmethod: 手动指定使用的安装方法
与网络相关的引导选项:
ip=IPADDR
netmask=MASK
gateway=GW
dns=DNS_SERVER_IP
ifname=NAME:MAC_ADDR
与远程访问功能相关的引导选项:
vnc
vncpassword=‘PASSWORD‘
指明kickstart文件的位置:ks=
DVD drive: ks=cdrom:/PATH/TO/KICKSTART_FILE
Hard drive: ks=hd:device:/directory/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
NFS server:ks=nfs:host:/path/to/KICKSTART_FILE
启动紧急救援模式:
rescue
官方文档:《Installation Guide》
kickstart文件的格式
①命令段:指明各种安装前配置,如键盘类型等;
②程序包段:指明要安装的程序包组或程序包,不安装的程序包等;
%packages
@group_name
package (安装的包)
-package (指定不安装的包)
%end
③脚本段:
%pre: 安装前脚本
运行环境:运行于安装介质上的微型Linux环境
%post: 安装后脚本
运行环境:安装完成的系统
命令段中的命令:
必备命令
authconfig: 认证方式配
authconfig--useshadow--passalgo=sha512
bootloader:bootloader的安装位置及相关配置
bootloader --location=mbr--driveorder=sda–
append="crashkernel=auto rhgbquiet"
keyboard: 设定键盘类型
lang: 语言类型
part: 创建分区
rootpw: 指明root的密码
timezone: 时区
可选命令
install OR upgrade
text: 文本安装界面
network
firewall
selinux
halt
poweroff
reboot
repo
user:安装完成后为系统创建新用户
url: 指明安装源
key –skip 跳过安装号码,适用于rhel版本
kickstart文件创建
创建kickstart文件的方式:
(1) 直接手动编辑;
依据某模板修改
(2) 可使用创建工具:system-config-kickstart
检查ks文件的语法错误:ksvalidator
# ksvalidator/PATH/TO/KICKSTART_FILE
制作引导光盘和U盘
创建引导光盘:
#cp/media/cdrom/isolinux/ /tmp/myiso/
#vi /tmp/myiso/isolinux/isolinux.cfg
initrd=initrd.imgtext ks=cdrom:/myks.cfg
#cp/root/myks.cfg/tmp/myiso/
#cd /tmp
# mkisofs -R -J -T -v --no-emul-boot --boot-load-size 4 --boot-info-table -V "CentOS boot" -b isolinux/isolinux.bin -c isolinux/boot.cat -o /root/boot.isomyiso/
创建U盘启动盘
#dd if=/dev/sr0 of=/dev/sdb