无人值守装车系统

无人值守装车系统系统安装过程 开机系统 bios 自检 然后通过 bootloader 加载 isolinux 相当于吧光盘当作根文件系统挂在起来 加载的过程中会需要 initrd 机制 在内存中挂在一个临时根文件系统 把根文件系统需要的驱动加载出来 之后再把真正的根文件系统挂载上来 然后运行 anaconda 程序 Anaconda 简介

系统安装过程

开机系统bios自检,然后通过bootloader加载isolinux相当于吧光盘当作根文件系统挂在起来,加载的过程中会需要initrd机制,在内存中挂在一个临时根文件系统,把根文件系统需要的驱动加载出来,之后再把真正的根文件系统挂载上来。然后运行anaconda程序。

Anaconda

简介

Anaconda是Red Hat Enterprise Linux、CentOS、Fedora等操作系统的安装管理程序。它以Python及C语言写成,以图形的PyGTK和文字的python-newt接口写成。它可以用来自动安装配置,使用户能够以最小的监督运行。 Anaconda安装管理程序应用在RHEL,Fedora和其他一些项目,Anaconda提供纯文字模式和GUI模式,用户可以安装在各种各样的系统

Anaconda工作过程

安装前配置阶段

  • 安装过程使用的语言;
  • 键盘类型
  • 安装目标存储设备
  • Basic Storage:本地磁盘
  • Special Storage: iSCSI
  • 设定主机名
  • 配置网络接口
  • 时区
  • 管理员密码
  • 设定分区方式及MBR的安装位置;
  • 创建一个普通用户;
  • 选定要安装的程序包;

安装阶段

  • 在目标磁盘创建分区并执行格式化;
  • 将选定的程序包安装至目标位置;
  • 安装bootloader;

首次启动

  • iptables
  • selinux
  • core dump

Anaconda的配置方式

  • 交互式配置方式:开机页面之后手动安装
  • 自动化安装:在kickstart文件中吧配置项都设置好,让anaconda读取kickstart配置文件自动化安装

安装引导选项

系统安装菜单页面的时候,按下键盘ESC即可进入文本页面输入命令

boot:

  • text:文本安装方式
  • method:手动指定使用的安装方法

与网络相关的引导选项:

  • ip=IPADDR
  • netmask=MASK
  • gateway=GW
  • dns=DNS_SERVER_IP

远程访问功能相关的引导选项

  • vnc
  • vncpassword=‘PASSWORD’

启动紧急救援模式:

  • rescue

装载额外驱动:

  • dd

ks:指明kickstart文件的位置;

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_FILEftp
  • HTTPS Server: ks=https://HOST[:PORT]/PATH/TO/KICKSTART_FILE

ks示例文件

firewall --disabled #关闭防火墙 install #安装操作系统 url --url="https://mirrors.aliyun.com/centos/6/os/x86_64/" #采用网络源安装 rootpw --iscrypted $1$.EaLyDeQ$FujxZcce.b3ZpI1MI9JWR0 #加密后的root密码 auth --useshadow --passalgo=sha512 #认证方式,默认 graphical #图形化界面安装 keyboard us #键盘布局 lang en_US #系统默认语言 selinux --disabled #关闭selinux skipx logging --level=info #安装过程日志等级 reboot #安装结束后重启 timezone Asia/Shanghai #设置时区 network --bootproto=static --device=eth0 --gateway=192.168.253.2 --ip=192.168.253.181 --nameserver=192.168.253.2 --netmask=255.255.255.0 --onboot=on #网络相关设置 bootloader --location=mbr #bootloader安装在mbr上 zerombr clearpart --all --initlabel #分区信息 part /boot --fstype="ext4" --size=150 part swap --fstype="swap" --size=2048 part / --fstype="ext4" --grow --size=1 #需要安装的包 %packages @base @development %end 

kickstart文件格式

命令段:指定各种安装前配置选项,如键盘类型等;

  • authconfig:认证方式配置 (默认,一般不改动)

示例: authconfig --enableshadow --passalgo=sha512 

  • bootloader:定义bootloader的安装位置及相关配置

示例: bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet" #--location=mbr --driveorder=sda:bootloader优先装在sda磁盘的mbr上。 #crashkernel=auto rhgb quiet:表示内核一旦崩溃,auto自动处理一般是核心转储,quiet安静模式,不输出 #rhgb:红帽自带的参数 

  • keyboard:设置键盘类型

例子: keyboard us 

  • lang:语言类型

例子:设置语言英文 lang en_US.UTF-8 

  • part:分区布局;

标准分区例子:part /boot --fstype=ext4 --size=500 lvm例子: part pv.008002 --size=51200 

  • rootpw:管理员密码

例子: rootpw --iscrypted STRING 

  • timezone:时区

例子: timezone Asia/Shanghai 

  • network:配置网络接口

例子: network --onboot yes --device eth0 --bootproto dhcp --noipv6 

  • firewall:防火墙

例子: firewall --disabled 

  • selinux:SELinux

例子: selinux --disabled 

  • repo:指明安装时使用的repository;

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

  • install OR upgrade:安装或升级;
  • text:安装界面类型,text为tui,默认为GUI
  • halt、poweroff或reboot:安装完成之后的行为;
  • url: 指明安装的网络源地址

程序包段: 指明要安装程序包,以及包组,也包括不安装的程序包;

%packages : 程序包段 @group_name : 指定安装包组 package : 安装某包 -package : 指定不安装某包不一定真的不安装,因为依赖关系也可能被安装上去 %end 表示结束 

脚本段:

%pre:安装前脚本 ,运行环境是运行安装介质上的微型Linux系统环境; %post:安装后脚本 ,运行环境是安装完成的系统; 

KS文件制作

一般制作有两种方法

  • 手动编写
  • 利用程序生成

主要介绍这种system-config-kickstart生成ks文件的方法,需要使用linux的图形化桌面环境,需要注意一点,如果用CentOS6生成CentOS7的ks文件可能会出问题。

#这里默认已经在图形化桌面环境中了
第一步:安装system-config-kickstart程序
yum install system-config-kickstart -y
第二步:命令行打开输入system-config-kickstart

第三步:配置

基础配置
在这里插入图片描述
安装方法配置
这里使用光盘
在这里插入图片描述

bootloader选项
在这里插入图片描述

分区配置
这里的分了3个分区
1./boot 文件系统ext4 150mb
2.swap交换分区 文件系统ext4 2048mb
3./ 文件系统ext4 余下所有空间

在这里插入图片描述

网络配置
在这里插入图片描述

认证方法
在这里插入图片描述

防火墙配置
在这里插入图片描述

使用图形化界面安装
在这里插入图片描述

程序包选择
选择要安装的程序包
在这里插入图片描述

后面是安装前执行的脚本与安装后执行的脚本

第四步:保存
在这里插入图片描述
保存在了root目录下
在这里插入图片描述

[root@localhost ~]# cat /root/ks.cfg #platform=x86, AMD64, or Intel EM64T #version=DEVEL # Firewall configuration firewall --disabled # Install OS instead of upgrade install # Use CDROM installation media cdrom # Root password rootpw --iscrypted $1$YVbYBc7a$.jggXcp4crZtutzwm9f4E. # System authorization information auth --useshadow --passalgo=sha512 # Use graphical install graphical # System keyboard keyboard us # System language lang en_US # SELinux configuration selinux --disabled # Do not configure the X Window System skipx # Installation logging level logging --level=info # Reboot after installation reboot # System timezone timezone Asia/Shanghai # Network information network --bootproto=static --device=eth0 --gateway=192.168.253.2 --ip=192.168.253.180 --nameserver=192.168.253.2 --netmask=255.255.255.0 --onboot=on # System bootloader configuration bootloader --location=mbr # Clear the Master Boot Record zerombr # Partition clearing information clearpart --all --initlabel # Disk partitioning information part /boot --fstype="ext4" --size=150 part swap --fstype="swap" --size=2048 part / --fstype="ext4" --grow --size=1 

这里使用http方式获取ks文件

 yum install httpd -y  #安装httpd
 cp /root/ks.cfg /var/www/html/ks.cfg  #复制ks文件到站点目录
 /etc/init.d/httpd start  #启动httpd服务

在这里插入图片描述

启动新的虚拟机
在这里插入图片描述
在这里按下ESC进入命令行
在这里插入图片描述
命令行启动指定ks文件,就可以自动安装了。
在这里插入图片描述
然后回车就可以自动化安装了

自定义CentOS6镜像文件

第二步:复制光盘的isolinux目录
#如果没有挂载光盘需要先挂载一下光盘
#mount -r /dev/cdrom /media
cp -r /media/isolinux/ /root/myboot/

修改文件/root/myboot/isolinux/isolinux.cfg

[root@localhost ~]# cat /root/myboot/isolinux/isolinux.cfg default vesamenu.c32 #prompt 1 timeout 600 display boot.msg menu background splash.jpg menu title Welcome to CentOS 6.9! menu color border 0 #ffffffff #00000000 menu color sel 7 #ffffffff #ff000000 menu color title 0 #ffffffff #00000000 menu color tabmsg 0 #ffffffff #00000000 menu color unsel 0 #ffffffff #00000000 menu color hotsel 0 #ff000000 #ffffffff menu color hotkey 7 #ffffffff #ff000000 menu color scrollbar 0 #ffffffff #00000000 label linux menu label ^Install or upgrade an existing system menu default kernel vmlinuz append initrd=initrd.img ip=192.168.253.181 netmask=255.255.255.0 gateway=192.168.253.2 ks=cdrom:/ks.cfg 

第三步:放置ks文件到myboot目录

[root@localhost ~]# cat /root/myboot/ks.cfg #platform=x86, AMD64, or Intel EM64T #version=DEVEL # Firewall configuration firewall --disabled # Install OS instead of upgrade install # Use network installation url --url="https://mirrors.aliyun.com/centos/6/os/x86_64/" # Root password rootpw --iscrypted $1$.EaLyDeQ$FujxZcce.b3ZpI1MI9JWR0 # System authorization information auth --useshadow --passalgo=sha512 # Use graphical install graphical # System keyboard keyboard us # System language lang en_US # SELinux configuration selinux --disabled # Do not configure the X Window System skipx # Installation logging level logging --level=info # Reboot after installation reboot # System timezone timezone Asia/Shanghai # Network information network --bootproto=static --device=eth0 --gateway=192.168.253.2 --ip=192.168.253.181 --nameserver=192.168.253.2 --netmask=255.255.255.0 --onboot=on # System bootloader configuration bootloader --location=mbr # Clear the Master Boot Record zerombr # Partition clearing information clearpart --all --initlabel # Disk partitioning information part /boot --fstype="ext4" --size=150 part swap --fstype="swap" --size=2048 part / --fstype="ext4" --grow --size=1 %packages @base @development %end 

在这里插入图片描述
这个文件就是镜像文件,上传到window然后导入虚拟机即可。

导入虚拟机之后
在这里插入图片描述
回车就可以了自动化安装了

知秋君
上一篇 2024-11-05 13:36
下一篇 2024-11-09 20:48

相关推荐