14.2、centos系统安装

前端之家收集整理的这篇文章主要介绍了14.2、centos系统安装前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

1、anaconda(安装linux的工具,运行在内核上的)

anaconda的界面:

tui:基于cureses的文本配置窗口

gui:图形界面


bootloader(有可能在光盘上也有可能在u盘上)--->加载指定内核(vmlinuz),也可能借助initrd,注意initrd中有rootfs--->anaconda(完成系统安装)




2、centos的安装过程启动流程介绍:

第一阶段:

bootloader引导程序,放在设备的第一个扇区(即MBR中),光盘上的bootloader是:boot.cat文件(光盘引导加载器,可以认为是改装的grub)。

光盘中的boot.cat的位置:/isolinux/boot.cat

如:

[root@localhost isolinux]# ll boot.cat

-r--r--r--. 1 root root 2048 Dec 5 2016 boot.cat

[root@localhost isolinux]#

第二阶段:

isolinux目录下的isolinux.bin //提供类似grub的安装界面(配置菜单

isolinux.bin的配置文件:isoliunx/isolinux.cfg


isolinux.cfg配置文件中对应的菜单

加载内核:isolinux/vmlinuz

向内核传递参数:append initrd=initrd.img //initrd是参数,initrd.img是参数值,可以认为initrd.img中自带anaconda程序。

装载根文件系统(位于initrd.img中),并启动anaconda。


注意:安装程序都位于isolinux这一个目录下。

[root@localhost isolinux]# ls ../isolinux/

boot.cat grub.conf isolinux.bin memtest TRANS.TBL vmlinuz

boot.msg initrd.img isolinux.cfg splash.png vesamenu.c32

[root@localhost isolinux]#


注意:anaconda默认界面是图形界面,内存需要大于512MB,

如需要指定启动tui接口,向启动内核传递一个参数“text”即可。

在启动界面敲入ESC键(有的是tab键),此时会弹出一个窗口,输入如下:

boot:linux text //linux是指isolinux.cfg配置文件中的label,将text补在append initrd=initrd.img后面;label的作用是调用它下面的所有参数,此时如果加一个“text”,表示向label为linux的启动项中,传递text参数,以tui启动。


以上内容一般位于引导设备,例如可通过光盘、u盘或网络等;后续的anaconda及其安装用到的程序包等可以来自于程序包仓库,此仓库可位置可以为:本地光盘、本地硬盘、ftpserver、httpserver、nfsserver;


安装过程中如果不想用光盘中的软件源而想手动指定安装仓库,敲入ESC键在boot提示符下输入如下:boot:linux method //method

的作用是让用户选择安装方法


这些起来之后,交给anaconda进行安装系统




3、anaconda的工作过程:分两阶段

第一阶段:安装前配置阶段(如何分区、时钟设置、等),有两种配置方式

第二阶段:安装阶段

第三阶段:首次启动(已经与anaconda无关了),且只会出现一次。

3.1、anaconda第一阶段:

安装前配置阶段:(经常配置的选项有如下:)

①、选择安装过程中使用的语言

②、选择键盘类型

③、选择安装目标存储设备

basic storage:本地磁盘存储

special storage:iscsi网络存储

④、设定主机名

⑤、配置网络接口

⑥、设置时区

⑦、设置管理员密码

⑧、设置分区方式及mbr的安装位置,注意分区可能会清空磁盘中的数据;大多数程序会装在/usr目录下,因此如果单独分区要分的大一些,/var刚开始是空的,随系统的使用会逐渐增大。

⑨、创建一个普通用户(系统安装完成后,不建议使用管理员,权限太大)

⑩、选定要安装的程序包


3.2、安装阶段:

①、在目标磁盘创建分区并执行格式化

②、将选定的程序包安装至目标位置

③、安装bootloader(如果需要可以安装执行脚本在②之前被称为安装前脚本,在③之后被称为安装后脚本)


3.3、首次启动:(去掉安装介质,入弹出光盘)

①、配置iptables 关闭

②、配置selinux 关闭

③、开启core dump(核心转储功能,意思是内核崩溃时,将运行内存中的数据创建一个文件保存在磁盘上,用于分析崩溃的原因;注意:core dump对内存大小有要求。)





4、anaconda的配置方式:

①、交互式配置方式

②、支持通过读取配置文件中事先定义好的配置项自动完成配置,遵循特定的语法格式,此文件即为kickstart文件,注意:光盘中的文件不支持修改,如果要实现此目的,配置文件可以放在别处,因此anaconda的安装文件和此文件可能不在同一地方。



5、安装过程中的安装引导选项:(boot提示符下输入的命令)

text:文本安装方式

method:手动指定使用的安装方法

与网络相关的引导选项:

ip=IPADDR

netmask=MASK

gateway=GW

dns=DNS_SERVER_IP

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

vnc

vncpassword='PASSWORD'

启动紧急救援模式:

rescue

指明加载额外驱动:

dd //drvice disk,会提示选择驱动所在的位置。

指明kickstart文件获取位置

ks=

如:

Dvddrive: ks=cdrom:/config/ks.cfg //如在光盘中config目录下的ks.cfg文件

Harddrive:ks=hd:/device/directory/ks.cfg

Httpservices: ks=http://host:port/ks.cfg

HttpsService:ks=https://host:port/ks.cfg

Ftpservice:ks=ftp://host:port/ks.cfg

参考书籍:www.redhat.com/docs《installation guide》



5、centos自动安装

5.1、安装引导选项: grub中指明ks文件的位置,ks=

Dvddrive: ks=cdrom:/config/ks.cfg //如在光盘中config目录下的ks.cfg文件

Harddrive:ks=hd:/device/directory/ks.cfg

Httpservices: ks=http://host:port/ks.cfg

HttpsService:ks=https://host:port/ks.cfg

Ftpservice:ks=ftp://host:port/ks.cfg

注意:系统安装完成后,会在root家目录下有一个anaconda-ks.cfg文件(安装准备阶段配置的相关设置),可以以此为模板。


5.2、kickstart文件的格式:

kickstart文件由三部分组成,分别是:

①、命令段部分

②、程序包段部分

③、脚本段部分

①、命令段部分:

指定各种安装前的配置选项,分为必备命令、可选命令

必备命令:

authconfig:认证方式配置

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

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

示例:bootloader --location=mbr --driceorder=sda--append=" crashkernel=auto"

keyboard:设置键盘类型:

示例:keyboard --vckeymap=us --xlayouts='us'

lang:设置语言类型

示例:lang en_US.UTF-8

part:分区布局及方式

示例:

part /boot --fstype=ext4 --size=500

part pv.008002 --size=51200 //pv表示创建的物理卷,008002是此物理卷的ID。

分区可选命令:

autopart --type=lvm

clearpart --none --initlabel

volgroup:

示例:volgroup myvg --pesize=4096 pv.008002 //myvg表示卷组名,pesize表示pe大小,pv008002表示调用哪个物理盘做卷组

logvol:

示例:logvol /home --fstype=ext4 --name=lv_home --vgname=myvg


rootpw:管理员密码设置

示例:rootpw --iscrypted $6$gdSMQrPuuwBvkjBR$GDqAFw7hr/GcsahNr4g7m2p.DPLZRUyZlwx01PjvdNEH9IDabDqb9oh3p9XY6jOXV0XK1pIb5OBQ0msu7ckTU. //不加--iscrypted可以直接跟明文密码;生成加密密码的方式:

[root@localhost ~]# openssl passwd -1 -salt openssl rand -hex 4//-1表示512加密,rand表示随机数,-hex 4表示4字节。

timezone:指定时区

示例:timezone Asia/Shanghai --isUtc --nontp


命令段中的可选命令:

install:安装(默认安装)

upgrade:升级(无需重新创建分区)

text:安装界面类型,text为tui类型,默认为gui(图形界面)

network:配置网络

示例:network --bootproto=dhcp --device=ens33 --onboot=off --ipv6=auto --no-activate

network --hostname=localhost.localdomain

firewall:设置防火墙

示例:firewall --service=ssh //表示启用了防火墙,但是对ssh放行

firewall --disabled //关闭防火墙

selinux:安全加强的selinux

示例:selinux--disabled

halt:关机,与poweroff、reboot三者选一,用于定义安装完成后的行为,关机或重启。

poweroff:关机

reboot:关机

repo:指明安装时使用的仓库(repository)

示例:repo --name="centos" --baseurl=cdrom:sr0 --cost=100 //开销,默认为1000

url:指明安装时使用的repository,但为url格式,优先级高于repo

示例:url --url=http://172.1.1.10/centos7

autopart --type=lvm

clearpart --none --initlabel

volgroup:

示例:volgroup myvg --pesize=4096 pv.008002 //myvg表示卷组名,pesize表示pe大小,pv008002表示调用哪个物理盘做卷组

logvol:

示例:logvol /home --fstype=ext4 --name=lv_home --vgname=myvg

user:安装完成后为系统创建新用户


②、程序包段部分:

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

%packages //说明程序包段的开始

@group_name //需要安装的程序包组

package //需要安装的单个程序包

-package //不安装的程序包

%end //程序包段结束

③、脚本段部分

%pre //安装前脚本,运行的脚本有限

运行环境:运行安装介质上的微型linux系统环境(initrd)

%end //安装前脚本结束

%post //安装后脚本,安装完成后,重启之前运行的脚本,用的较多

运行环境:安装完成的脚本

%end //安装后脚本结束


注意:如果安装最小环境的话,可能没有第三部分(脚本段部分。)


5.3、禁用相关服务

安装完成后禁用防火墙:

centos6:

#service iptables stop

#service iptables off

centos7:

[root@localhost ~]# systemctl stop firewalld.service

[root@localhost ~]# systemctl disable firewalld.service

安装完成后禁用selinux:

编辑文件:/etc/sysconfig/selinux或/etc/selinux/config文件修改selinux参数的值为下面其中之一:

permissive

disabled

关闭selinux使其立即生效:

#getenforce //查看是否启用“1”为启用

#setenforce 0 //关闭selinux


5.4、制作kickstart文件方式:

①、直接手动编辑,依据模板修改

②、使用创建工具:system-config-kickstart,也可以依据模板修改生成新的kickstart文件


使用工具制作kickstart文件

[root@localhost ~]# yum installsystem-config-kickstart -y //安装制作kickstart文件的工具

[root@localhost ~]# system-config-kickstart //运行此工具

[root@localhost Desktop]# ksvalidator ks.cfg //对制作的kickstart文件进行检查,查看是否有错误


5.5、用制作的kickstart文件安装系统

①、将生成的kickstart文件放在可以通过网络或本地能访问的服务器上,如本地硬盘、http、ftp、dvd上

②、启动主机,载入光驱,当出现grub选择界面的时候,敲入:"ESC"键,进入boot提示符,输入如下内容

boot:linux ip=x.x.x.x netmask=x.x.x.x gateway=x.x.x.x ks=http://x.x.x.x/ks.cfg


安装示例参考:https://www.cnblogs.com/zhenhui/p/6233285.html


自此,linux的自动安装可以通过网络上定义的kickstart文件进行安装,但是如果要想实现通过“自定义安装介质,实现自动部署”,可以制作iso镜像,并将ks文件放进去,实现自动部署,可以参考如下(5.6:自定义介质安装)实现方式


5.6、自定义安装介质安装系统:(没有服务器放置kickstart文件,但又想使用ks文件,可以自己创建一个光盘镜像,并将ks文件放进去,镜像只需要有iso目录即可)

实现步骤如下:

①、先配置好ks.cfg文件

②、[root@localhost ~]# mkdir myboot //创建目录,存放isolinux目录,把myboot当做制作光盘的根

③、[root@localhost ~]# cd myboot

④、[root@localhost myboot]# cp -r /mnt/isolinux/ ./

[root@localhost ~]# ls /root/myboot/isolinux/

boot.cat grub.conf isolinux.bin memtest TRANS.TBL vmlinuz

boot.msg initrd.img isolinux.cfg splash.png vesamenu.c32

⑤、[root@localhost myboot]# chmod +w isolinux/* //可以定制isolinux.cfg中的配置

⑥、[root@localhost myboot]# cp /root/anaconda-ks.cfg ./ks.cfg

⑦、[root@localhost ~]# mkisofs -R -J -T -v --no-emul-boot --boot-load-size 4 --boot-info-table -V "centos7 custom" -c isolinux/boot.cat -b isolinux/isolinux.bin -o /root/boot.iso myboot/ //制作光盘镜像,制作镜像时一定要退出相应的目录

⑧、将此次制作的镜像文件放入光驱(镜像文件:/root/boot.iso)

⑨、在安装选择界面(即grub选择界面,在相应安装的菜单上敲入“tab”键,在后面输入如下内容

ks=cdrom:/ks.cfg //指定ks文件的位置位于光盘根目录下,如下图

注意:以上步骤需要向内核传递参数,如果不想这样做而实现全自动安装,可以编译isolinux/isolinux.cfg,在上述第⑤步骤中直接将ks参数写在此处即可(如图:ks=cdrom:/ks.cfg),然后再制作镜像

原文链接:https://www.f2er.com/centos/374895.html

猜你在找的CentOS相关文章