无人值守安装(操作系统-centos7.8)
程序员文章站
2022-07-13 21:43:25
...
- 从网络引导系统的做法可以不必从硬盘、软盘或者CD-ROM光盘,而是完全通过网络来引导一台计算机。这对于安装来说很方便,因为它意味着你可以坐在桌子旁边,不必走到机器那里插入CD-ROM光盘或者软盘,就可以从网络上引导位于别处的一台机器。
- pxe 预启动安装环境 是由inter公司开发的 可以让计算机通过网络来启动操作系统(支持pxe技术)为了启动引导系统 从而启动整个操作系统,主要用于无人值守安装过程中引导客户机安装操作系统,为了启动引导系统, 从而启动整个操作系统
- kickstart (ks)无人值守安装的一种方式
工作原理:
- 就是预先将原来运维人员需要手动填写的参数,保存成一个文件(ks.cfg),在安装过程中自动执行里面的步骤
需要的服务如下:
- DHCP: 分配ip 让客户端(要安装操作系统的主机) 让两台主机能够连通,
- 客户端:客户端发送请求 服务端分配IP,ROM自启动芯片 本地是否有iso 如果没有 则通过网络安装
- TFTP:是简单文件的传输协议,则端口号是69端口,它负责传输小文件 udp传输 不需要经过任何的验证 可以直接进行传输 主要用来传输引导文件
- FTP:用来传输完整的操作系统 通过目录共享的方式来传递,
进行无人值守安装部署
- 服务分配主机如下:
服务 | IP |
---|---|
总服务器 | 192.168.20.10 |
- 进行安装
1、安装DHCP服务、
[aaa@qq.com ~]# yum -y install dhcp
[aaa@qq.com ~]# cd /etc/dhcp/
[aaa@qq.com dhcp]# vim dhcpd.conf
subnet 192.168.20.0 netmask 255.255.255.0 { #声明一个网段
range 192.168.20.50 192.168.20.100; #地址池
next-server 192.168.20.20; #tftp服务器的ip
filename "pxelinux.0"; #引导文件的第一个文件名称 (isolinux.bin)
}
pxelinux.0是通过pxe来启动引导文件 isolinux.bin是通过镜像来启动引导文件的
启动服务:
[aaa@qq.com dhcp]# systemctl start dhcpd
2、安装tftp服务和引导文件
[aaa@qq.com ~]# yum -y install tftp-server xinetd
#xinetd是tftp的管理程序
[aaa@qq.com ~]# vim /etc/xinetd.d/tftp
14 disable = yes ##改为no
14 disable = no
[aaa@qq.com ~]# yum -y install syslinux ##里面有引导文件
把需要的引导文件 放到tftp的传输目录下
[aaa@qq.com ~]# cd /var/lib/tftpboot/
[aaa@qq.com tftpboot]# cp /usr/share/syslinux/pxelinux.0 ./
[aaa@qq.com tftpboot]# mount /dev/sr0 /media/
mount: /dev/sr0 写保护,将以只读方式挂载
[aaa@qq.com tftpboot]# cp /media/images/pxeboot/vmlinuz ./ #虚拟的内核
[aaa@qq.com tftpboot]# cp /media/images/pxeboot/initrd.img ./ #虚拟的根文件系统
[aaa@qq.com tftpboot]# cp /media/isolinux/vesamenu.c32 ./ #菜单
[aaa@qq.com tftpboot]# cp /media/isolinux/splash.png ./ #背景图片
[aaa@qq.com tftpboot]# cp /media/isolinux/boot.* ./ #提示信息
[aaa@qq.com tftpboot]# mkdir pxelinux.cfg #创建引导程序的配置文件的目录
[aaa@qq.com tftpboot]# cp /media/isolinux/isolinux.cfg pxelinux.cfg/default #引导程序默认的配置文件
因为要让程序自动安装 所以要选择默认的安装配置 只能创建一个目录 让其加载default的配置文件
[aaa@qq.com tftpboot]# vim pxelinux.cfg/default
1 default vesamenu.c32 改为default linux #把菜单选择成默认安装linux的选项
64 append initrd=initrd.img inst.stage2=hd:LABEL=CentOS\x207\x20x86_64 quiet
改为:append initrd=initrd.img inst.stage2=ftp://192.168.20.30/centos ks=ftp://192.168.20.30/centos/ks.cfg quiet #指定ftp服务器的地址和kickstart配置文件的地址
启动服务
[aaa@qq.com tftpboot]# systemctl start xinetd
[aaa@qq.com tftpboot]# systemctl start tftp
3、安装ftp
[aaa@qq.com ~]# yum -y install vsftpd
[aaa@qq.com tftpboot]# cd /var/ftp
[aaa@qq.com ftp]# mkdir centos
[aaa@qq.com ftp]# cp -r /media/* ./ #把整个镜像文件 复制到共享目录下 有可能会出现空间分配不足的问题 新添加一块硬盘 重启虚拟机 将添加的硬盘分成一个分区 挂载到 /var/ftp就可以了
1.复制本身主机上面的文件
2.可以通过图形化界面来生成
1.直接复制
[aaa@qq.com centos]# cp /root/anaconda-ks.cfg ./ks.cfg #复制本机的kickstart文件
[aaa@qq.com centos]# chmod +r ks.cfg
[aaa@qq.com centos]# vim ks.cfg
5 url --url=ftp://192.168.2.10/centos #从ftp中获取完整的操作系统
25 timezone Asia/Shanghai --isUtc #时间同步
最后一行进行添加添加:
68 reboot #重启
69 eula --agreed #自动同意协议文件
启动服务
[aaa@qq.com centos]# systemctl start vsftpd
验证:
客户端:
新建一台虚拟机 网络适配器 两边必须一致 vnet5
主机内存必须是2G以上
不用指定镜像
开启虚拟机
出现的框 直接关掉
接着根据自己所需进行安装
安装完成之后
完成后挂载磁盘进行使用
2. 可以通过图形化界面生产
前面和之前的操作一致 不过是ks.cfg是通过图形化界面生成的
图形化界面工具 图形化界面生成ks.cfg的文件
使用system-config-kickstart来配置ks.cfg文件,但是在软件包选择这里,却显示"由于下载软件包信息失败,软件包选择被禁止"
重新修改yum名字
[aaa@qq.com pengjie]# cd /etc/yum.repos.d/
[aaa@qq.com yum.repos.d]# mkdir yincang
[aaa@qq.com yum.repos.d]# mv C* yincang/
[aaa@qq.com yum.repos.d]# ls
yincang
[aaa@qq.com yum.repos.d]# vim a.repo
[aaa@qq.com yum.repos.d]# ls
a.repo yincang
[aaa@qq.com yum.repos.d]# cat a.repo
[a]
name=a
baseurl=file:///cdrom
enabled=1
gpgcheck=0
[aaa@qq.com yum.repos.d]# mv a.repo development.repo
[aaa@qq.com yum.repos.d]# vim development.repo
[aaa@qq.com yum.repos.d]# ls
development.repo yincang
[aaa@qq.com yum.repos.d]# cat development.repo
[development]
name=a
baseurl=file:///cdrom
enabled=1
gpgcheck=0
[aaa@qq.com ~]# yum -y install system-config-kickstart
开始进行配置
[aaa@qq.com ~]# system-config-kickstart
基础配置
在这里插入图片描述
安装方法
引导程序需要pxe的引导文件
重新制定分区
也可以保留现在的分区
添加分区
添加/boot
添加/
防火墙
安装的图形界面
保存 可以出现路径 选择文件系统 —找到 var --找到ftp—找到centos–保存的名字 ks.cfg
aaa@qq.com ~]# cd /var/ftp/centos
[aaa@qq.com centos]# vim ks.cfg
[aaa@qq.com centos]# cat ks.cfg
%packages
@gnome-desktop
@x11
initial-setup
initial-setup-gui
%end
user --name=test --password=123.com #创建普通用户
eula --agreed #同意协议
完事后重启服务 之后的操作就一致了
上一篇: 无人值守自动安装Linux操作系统
下一篇: MySQL集群高可用架构之MHA