点击返回架构师成长之路

架构师成长之路2.3-PXE+Kickstart无人值守大量部署Linux

所谓的无人值守,就是自动应答,当安装过程中需要人机交互提供某些选项的答案时(如如何分区),自动应答文件可以根据对应项自动提供答案。

但是,无人值守并不完全是无人值守,在设置bios从网卡启动是必须人为设置的,且安装完系统后设置不从网卡启动也是需要人为设置的。此处之外,其他的都可以无人值守。

要配置无人值守的系统安装,需要提供安装过程中需要的各种选择,这些选择在kickstart的配置文件中,一般正常安装完Linux系统在root用户的家目录下有一个anaconda-ks.cfg,以下是该文件中的部分内容。

[root@localhost /]# cat ~/anaconda-ks.cfg
#version=DEVEL
# System authorization information
auth --useshadow --enablemd5
# Install OS instead of upgrade
install
# Use CDROM installation media
cdrom
# Use graphical install
graphical
# Firewall configuration
firewall --enabled
firstboot --disable
ignoredisk --only-use=sda
# Keyboard layouts
# old format: keyboard us
# new format:
keyboard --vckeymap=us --xlayouts='us'
# System language
lang en_US.UTF-8 # Network information
network --bootproto=dhcp --device=link --activate
network --hostname=localhost.localdomain
# Reboot after installation
reboot
# Root password
rootpw --iscrypted $1$qpLCHyKc$tpgPpfZdmb/8lGsunfGWk/
# System services
services --enabled="chronyd"
# System timezone
timezone America/Los_Angeles --isUtc
# X Window System configuration information
xconfig --startxonboot
# System bootloader configuration
bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=sda
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart --all --initlabel
# Disk partitioning information
part /boot --fstype="xfs" --size=300
part swap --fstype="swap" --size=1024
part / --fstype="xfs" --size=8915 %post
/usr/sbin/adduser carlos
/usr/sbin/usermod -p '$1$qpLCHyKc$tpgPpfZdmb/8lGsunfGWk/' carlos
/usr/bin/chfn -f "Centos" carlos
mv /etc/rc.d/rc.local /etc/rc.d/rc.local.00
echo '#!/bin/bash' > /etc/rc.d/rc.local
ln -s ../rc.local /etc/rc.d/rc5.d/S99rclocal
chmod 755 /etc/rc.d/rc.local
echo 'mkdir -p /var/log/vmware' >> /etc/rc.d/rc.local
echo 'exec 1> /var/log/vmware/rc.local.log' >> /etc/rc.d/rc.local
echo 'exec 2>&1' >> /etc/rc.d/rc.local
echo 'set -x' >> /etc/rc.d/rc.local
echo 'echo Installing Open VM Tools' >> /etc/rc.d/rc.local
echo 'set -x' >> /etc/rc.d/rc.local
echo '/bin/eject sr0 || /bin/true' >> /etc/rc.d/rc.local
echo '/bin/eject sr1 || /bin/true' >> /etc/rc.d/rc.local
echo '/bin/vmware-rpctool' \'guest.upgrader_send_cmd_line_args --default\' >> /etc/rc.d/rc.local
echo '/bin/vmware-rpctool' \'upgrader.setGuestFileRoot /tmp\' >> /etc/rc.d/rc.local
echo '/bin/vmware-rpctool' \'toolinstall.installerActive 1\' >> /etc/rc.d/rc.local
echo '/bin/vmware-rpctool' \'toolinstall.installerActive 100\' >> /etc/rc.d/rc.local
echo 'rm -f /etc/rc.d/rc.local' >> /etc/rc.d/rc.local
echo 'rm -f /etc/rc.d/rc5.d/S99rclocal' >> /etc/rc.d/rc.local
echo 'mv /etc/rc.d/rc.local.00 /etc/rc.d/rc.local' >> /etc/rc.d/rc.local
/bin/echo done
%end %packages
@base
@core
@desktop-debugging
@dial-up
@directory-client
@fonts
@gnome-desktop
@guest-desktop-agents
@input-methods
@internet-browser
@java-platform
@multimedia
@network-file-system-client
@print-client
@x11
binutils
chrony
ftp
gcc
kernel-devel
kexec-tools
make
open-vm-tools
patch
python %end %addon com_redhat_kdump --enable --reserve-mb='auto' %end

上面提到,装系统时很多选项在里面都记录了。

那么,要使用kickstart来批量部署操作系统,就需要提供该文件。

yum install system-config-kickstart  #安装kickstart
 system-config-kickstart #配置kickstart  

A. 设置语言,键盘,时区,Root密码,安装完毕后重启等。

B.置安装方式,这篇文章介绍的是HTTP方式的安装,故选择HTTP

C. 安装MBR

D. 设置分区

E. 分区总览

F. 配置网络

G. 认证配置

H. SELinux 和防火墙配置

I. 图形环境配置

J. 软件包安装选择

K. 预览

L. 生成ks.cfg 文件,保存在/var/www/html/ 文件夹下

可以打开/var/www/html/ks.cfg 文件进行查看并做修改。

测试安装

自动化安装系统配置完毕,下面启动一台新的机器进行测试,网络连接模式选择NAT模式。

新建虚拟机,选择自定义(高级)

选择“稍后安装操作系统”

选择客户机操作系统类型

命名虚拟机

设置此虚拟机的内存

设置网络类型

选择I/O控制器类型

选择磁盘类型

选择磁盘

指定磁盘大小,ks.cfg 文件中,我们定义了/ 大小为8GB,swap 分区为1GB,/home 分区为2GB,所以这里的磁盘大小至少要为12GB。

而且,一定要勾选上“立即分配所有磁盘空间”,不然在后来安装的时候将提示没有磁盘空间。

指定磁盘文件

虚拟机总览

正在创建磁盘,过程会很慢,虚拟机需要产生一个20GB的文件。

启动虚拟机,选择从网卡启动,DHCP 服务器正在给客户机分配IP地址。

开始下载vmlinuz 和initrd.img

安装过程...

安装过程...

............

架构师成长之路2.3-PXE+Kickstart无人值守大量部署Linux的更多相关文章

  1. 架构师成长之路6.4 DNS服务器搭建(部署主从DNS)

    点击返回架构师成长之路 架构师成长之路6.3 DNS服务器搭建(部署主从DNS)  部署主DNS : 点击 部署从DNS : 如下步骤 1.与主DNS一样,安装bind yum -y install ...

  2. 架构师成长之路6.3 DNS服务器搭建(部署单台DNS)

    点击返回架构师成长之路 架构师成长之路6.3 DNS服务器搭建(部署单台DNS) 1.安装bind yum -y install bind-utils bind bind-devel bind-chr ...

  3. 架构师成长之路1.1-系统监控工具htop

    点击返回架构师成长之路 架构师成长之路1.1-系统监控工具htop htop 是Linux系统中的一个互动的进程查看器,一个文本模式的应用程序(在控制台或者X终端中),需要ncurses. 与Linu ...

  4. 架构师成长之路3.1-Cobber原理及部署

    点击返回架构师成长之路 架构师成长之路3.1-Cobber原理及部署 Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的方式来快速安装.重装物理服务器和虚拟机,同时还可以管理 ...

  5. 架构师成长之路2.2-PXE+Kickstart安装部署

    点击返回架构师成长之路 架构师成长之路2.2-PXE+Kickstart安装部署 系统测试环境: 实验环境:VMware Workstation 12 系统平台:CentOS Linux releas ...

  6. 架构师成长之路2.1-PXE+Kickstart原理

    点击返回架构师成长之路 架构师成长之路2.1-PXE+Kickstart原理 PXE+Kickstart 主要用于在公司内网批量安装新服务器系统,这极大地简化了用光盘重复安装Linux操作系统的过程, ...

  7. 架构师成长之路7.1 CDN理论

    点击返回架构师成长之路 架构师成长之路7.1 CDN理论 CDN,Content Distribute Network,内容分发网络:CDN解决的是如何将数据快速可靠从源站传递到用户的问题.用户获取数 ...

  8. 架构师成长之路6.6 DNS服务器搭建(构建企业级DNS)

    点击返回架构师成长之路 架构师成长之路6.6 DNS服务器搭建(构建企业级DNS) 采用LVS-DR模式负载均衡,多IDC,多套DNS集群,通过master-slave技术保证dns配置的一致性. 1 ...

  9. 架构师成长之路6.5 DNS服务器搭建(添加记录、负载均衡、DNS视图)

    点击返回架构师成长之路 架构师成长之路6.5 DNS服务器搭建(添加记录.负载均衡.DNS视图)  部署主DNS : 点击 部署从DNS : 点击 1.添加A记录.CNAME记录.MX记录.PTR记录 ...

  10. 架构师成长之路6.2 DNS配置文件

    点击返回架构师成长之路 架构师成长之路6.2 DNS 配置文件 /etc/hosts 主机的一个文件列表 ,添加记录如:111.13.100.92   www.baidu.com 对于简单的主机名解析 ...

随机推荐

  1. Luogu3350 ZJOI2016 旅行者 最短路、分治

    传送门 题意:给出一个$N \times M$的网格图,边有边权,$Q$组询问,每组询问$(x_1,y_1)$到$(x_2,y_2)$的最短路.$N \times M \leq 2 \times 10 ...

  2. Mybatis中 collection 和 association 的区别?

    public class A{ private B b1; private List<B> b2;} 在映射b1属性时用association标签,(一对一的关系) 映射b2时用colle ...

  3. BugkuCTF web3

    前言 写了这么久的web题,算是把它基础部分都刷完了一遍,以下的几天将持续更新BugkuCTF WEB部分的题解,为了不影响阅读,所以每道题的题解都以单独一篇文章的形式发表,感谢大家一直以来的支持和理 ...

  4. 个人博客作业_week14

    M1/M2阶段总结 我在M1阶段负责后端代码的开发,以及协助PM,在M2阶段负责PM,在为期将近一学期的团队软件开发过程中,我深刻体会到了团队协作的重要性,以及合理分配任务的重要性,没有一个好的时间规 ...

  5. 安装python包时报错

    pip install numpy  时  报错: Traceback (most recent call last):  File "d:\学习\python\python-3.6.5\l ...

  6. 利用ThreadLocal管理事务

    package com.itheima.util; import java.sql.Connection; import java.sql.SQLException; //封装了所有与事务有关的方法 ...

  7. const修饰符与函数

    一.用const修饰函数的参数 函数参数类型前加const指明该参数为常量,在函数内部不可改变. void func(const int x) { //x不可以在内部进行赋值等操作. } 注:当参数为 ...

  8. 项目引入android-support-v7-appcompat遇到的问题,no resource found that matches the given name 'android:Theme.AppCompat.Light'

    一.问题 今天准备使用v7包中的ToolBar来用,但是在styles.xml中引入Theme.AppCompat.Light的时候,报错“no resource found that matches ...

  9. Jquery 组 radio控与tr变色

    <!DOCTYPE html><html lang="zh-cn"><head> <meta charset="utf-8&qu ...

  10. 金蝶特性配置(超级BOM)

    特性配置 特性物料 物料和特性的对应关系 自动新增物料的系统设置 特性物料自动新增 自动新增的特性配置方案 相关表 ICPlan_CharacteristicEntry