1.系统环境
节点 | IP地址 |
---|
CentOS 7 服务端 | 192.168.143.145 | 测试端 | 自动获取 |
2. 准备工作
准备一台虚拟机(桌面版因为一会需要用到,没有最小化也可以但是需要装桌面的包) 关闭防火墙和selinux 安装epel源 准备一个centos7的镜像
在服务器中,生成ks.cfg 文件需要system-config-kickstart 工具,而此工具依赖于X Windows,所以我们需要安装X Windows 和Desktop 并重启系统。startx命令开启桌面化。
//查看组包列表
[root@localhost ~]# yum grouplist
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.cn99.com
* epel: mirrors.bfsu.edu.cn
* extras: mirrors.ustc.edu.cn
* updates: mirrors.aliyun.com
Installed Environment Groups:
KDE Plasma Workspaces
Available Environment Groups:
Minimal Install
Compute Node
Infrastructure Server
File and Print Server
Cinnamon Desktop
MATE Desktop
Basic Web Server
Virtualization Host
Server with GUI
GNOME Desktop
Development and Creative Workstation
Available Groups:
Cinnamon
Compatibility Libraries
Console Internet Tools
Development Tools
Educational Software
Electronic Lab
Fedora Packager
General Purpose Desktop
Graphical Administration Tools
Haskell
LXQt Desktop
Legacy UNIX Compatibility
MATE
Milkymist
Scientific Support
Security Tools
Smart Card Support
System Administration Tools
System Management
TurboGears application framework
Xfce
Done
[root@localhost ~]# yum -y groups install "X Window System"
[root@localhost ~]# yum -y groups install "KDE Plasma Workspaces"
3.部署过程
[root@localhost ~]# yum install -y dhcp vsftpd tftp tftp-server syslinux xinetd
[root@localhost ~]# mkdir -p /var/ftp/dvd
[root@localhost ~]# chown -R ftp:ftp /var/ftp/dvd/
[root@localhost ~]# mount /dev/cdrom /mnt/
[root@localhost ~]# cp -r /mnt/* /var/ftp/dvd/
[root@localhost ~]# systemctl enable --now vsftpd
浏览器访问测试能否访问到ftp的文件
图一、startx命令开启桌面化
图二、浏览器访问ftp://192.168.143.145/dvd/的结果
配置DHCP服务器
[root@localhost ~]# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
cp:是否覆盖"/etc/dhcp/dhcpd.conf"? y
[root@localhost ~]# vi /etc/dhcp/dhcpd.conf
定位27行修改如下内容
subnet 192.168.143.0 netmask 255.255.255.0 {
range 192.168.143.100 192.168.143.200; //设置dhcp分配的IP地址的范围
option routers 192.168.143.2; //设置分配的网关
next-server 192.168.143.145; //设置TFTP服务器的IP地址
filename "pxelinux.0"; //设置客户端在向TFTP服务器请求找的第一个文件名称
}
[root@localhost ~]# systemctl enable --now dhcpd
配置TFTP服务器
[root@localhost ~]# mkdir /tftpboot //创建TFTP的工作目录
[root@localhost ~]# vi /etc/xinetd.d/tftp //编辑TFTP对的配置文件
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot //修改正确的工作目录的路径
disable = no //修改为no 表示开启TFTP服务器
per_source = 11
cps = 100 2
flags = IPv4
}
[root@localhost ~]# mkdir -p /tftpboot/pxelinux.cfg
[root@localhost ~]# cp -a /var/ftp/dvd/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default
[root@localhost ~]# cp -a /usr/share/syslinux/pxelinux.0 /tftpboot/
[root@localhost ~]# chmod 644 /tftpboot/pxelinux.cfg/default
[root@localhost ~]# cp -a /var/ftp/dvd/isolinux/* /tftpboot/
[root@localhost ~]# systemctl enable --now xinetd
构建ks文件(以下操作均在图形化界面操作)
[root@localhost ~]# yum install -y system-config-kickstart //安装相应软件 安装完成以后输入以下命令进行配置ks文件 system-config-kickstart 在图形化界面输入!!!!
基本配置
安装方法
引导装载程序选项
分区信息 这里需要划分二个分区分别是:/19G /boot 1G
网络配置
防火墙配置
然后点击文件进行保存操作(保存到root的家目录下)
基本配置完成保存
修改ks.cfg文件
[root@localhost ~]# ls //默认root的家目录下存在以下文件 anaconda-ks.cfg initial-setup-ks.cfg ks.cfg [root@localhost ~]# vi /ks.cfg
//末尾添加基础base和最小化安装
%packages @base @^minimal chrony %end
[root@localhost ~]# cp ks.cfg /var/ftp/ //复制ks.cfg文件到/var/ftp目录下
修改/tftpboot/pxelinux.cfg/default 文件 添加如下内容
vi /tftpboot/pxelinux.cfg/default
....以上多行
label linux
menu label ^Install or upgrade an existing system
menu default //此行需要添加
kernel vmlinuz
append initrd=initrd.img ks=ftp://192.168.143.145/ks.cfg //指定ks.cfg文件的路径
label check
menu label Test this ^media & install CentOS 7
menu default //此行需要删除
kernel vmlinuz
append initrd=initrd.img inst.stage2=hd:LABEL=CentOS\x207\x20x86_64 rd.live.check quiet
....以下多行
//重启服务开始测试
[root@localhost ~]# systemctl restart vsftpd
效果测试
然后新建一台没有任何镜像的虚拟机 注意:硬件配置需要大于等于之前配置的20G硬盘,内存需要大于2G
开启虚拟机过了一会之后出现如下界面
安装界面如下
安装完成以后的界面如下
|