(图片来源网络,侵删)
在服务器集群中,批量安装操作系统是非常常见的操作,而CentOS作为一款免费、稳定、安全、强大的操作系统,也是运维人员的首选。手动安装一个个系统显然是非常繁琐、耗时的,因此我们需要一种批量安装CentOS的方法。
在进行批量安装CentOS之前,我们需要准备以下工作:
1. 一台装有CentOS系统的服务器,作为安装服务器。
2. CentOS镜像文件,可以从官方网站下载。
3. 安装服务器上安装DHCP、TFTP、HTTP等服务,以便于客户端通过网络引导安装。
DHCP服务是用来分配IP地址的服务,我们需要配置DHCP服务器来为客户端分配IP地址。在安装服务器上安装DHCP服务,并配置DHCP服务的配置文件/etc/dhcp/dhcpd.conf,添加以下内容:
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200;
option subnet-mask 255.255.255.0;
option routers 192.168.1.1;
option broadcast-address 192.168.1.255;
default-lease-time 600;
max-lease-time 7200;
next-server 192.168.1.10;
filename "pxelinux.0";
}
subnet表示子网地址,range表示IP地址分配范围,option表示其他选项,next-server表示TFTP服务器地址,filename表示引导文件名。
TFTP服务是用来通过网络传输文件的服务,我们需要配置TFTP服务器来传输引导文件和镜像文件。在安装服务器上安装TFTP服务,并配置TFTP服务的配置文件/etc/xinetd.d/tftp,添加以下内容:
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /var/lib/tftpboot
disable = no
per_source = 11
cps = 100 2
server_args表示TFTP服务器的根目录。
HTTP服务是用来传输镜像文件的服务,我们需要配置HTTP服务器来传输镜像文件。在安装服务器上安装HTTP服务,并配置HTTP服务的配置文件/etc/httpd/conf/httpd.conf,添加以下内容:
Alias /centos /var/www/html/centos
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
Alias表示URL别名,Directory表示目录权限。
我们需要配置引导文件,以便于客户端通过网络引导安装。在安装服务器上创建目录/var/lib/tftpboot/pxelinux.cfg,并创建文件default,添加以下内容:
default linux
prompt 0
timeout 300
display boot.msg
label linux
kernel vmlinuz
append initrd=initrd.img ks=
prompt表示是否显示提示,timeout表示超时时间,display表示显示的信息,kernel表示内核文件名,append表示内核参数,ks表示Kickstart文件。
Kickstart文件是用来自动化安装系统的文件,我们需要创建Kickstart文件,以便于自动化安装CentOS系统。在安装服务器上创建文件/var/www/html/centos/ks.cfg,添加以下内容:
#platform=x86, AMD64, or Intel EM64T
#version=DEVEL
# Install OS instead of upgrade
install
# Use network installation
url --url
# Use graphical install
graphical
# Run the Setup Agent on first boot
firstboot --enable
# System language
lang en_US.UTF-8
# Keyboard layouts
keyboard us
# Root password
rootpw --iscrypted $1$01234567$89abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef
# System timezone
timezone Asia/Shanghai
# Network information
network --bootproto=dhcp --device=eth0 --onboot=yes
# Firewall configuration
firewall --enabled --service=ssh
# Do not configure the X Window System
skipx
# System services
services --enabled="chronyd"
# Reboot after installation
reboot
url表示镜像文件的URL,rootpw表示root密码,network表示网络配置,firewall表示防火墙配置,services表示系统服务配置。
我们需要启动客户端,并在启动时通过网络引导安装。在客户端启动时按F12进入引导菜单,选择网络引导,等待自动化安装完成即可。
在Ubuntu系统中,我们可以通过apt-get命令来安装软件,但是如果要删除软件,我们需要使用apt-get remove命令,这只会删除软件本身,不会删除软件的配置文件和依赖包。如果要彻底删除软件,我们需要使用apt-get purge命令,这会删除软件本身、配置文件和依赖包。建议在删除软件时使用apt-get purge命令。
CentOS、批量安装、DHCP、TFTP、HTTP、Kickstart、Ubuntu、apt-get、purge