当前位置: 首页 > news >正文

Kickstart无人值守安装

系统部署准备

[root@Mikey ~]# cat /etc/redhat-release 
CentOS Linux release 7.4.1708 (Core)
[root@Mikey ~]# uname -r 
3.10.0-693.el7.x86_64 
[root@Mikey ~]# getenforce ##Selinux 
Disabled
[root@Mikey ~]# systemctl status firewalld.service 
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:firewalld(1)
[root@Mikey ~]# hostname -I 
10.0.0.200 172.16.1.200
[root@mikey ~]# cat /etc/hosts 
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.11.200 mirrors.aliyun.com

本次系统要用到的服务

syslinux dhcp httpd tftp-server

一、DHCP服务

1、安装DHCP服务
yum install -y dhcp

[root@mikey CentOS]# vim /etc/dhcp/dhcpd.conf

subnet 172.16.1.0 netmask 255.255.255.0 {
range 172.16.1.100 172.16.1.199;
option subnet-mask 255.255.255.0;
default-lease-time 21600;
max-lease-time 43200;
next-server 172.16.1.200;
filename "/pxelinux.0";
}

第一列:所指定的网段
第二列:指网络主机的范围
第三列:网段里的子网掩码
第四列:获取地址的默认时间
第五列:对大的租约时间
第六列:下一个要找的服务地址
第七列:要找的文件(配置文件)

2、开启DHCP服务

二、TFTP服务

1、安装TFTP服务
yum install -y tftp-server

2、启动服务
[root@Mikey ~]# systemctl start tftp.socket 
[root@Mikey ~]# systemctl status tftp.socket 
● tftp.socket - Tftp Server Activation Socket
Loaded: loaded (/usr/lib/systemd/system/tftp.socket; disabled; vendor preset: disabled)
Active: active (listening) since 一 2018-01-08 09:50:51 CST; 6s ago
Listen: [::]:69 (Datagram)

1月 08 09:50:51 Mikey systemd[1]: Listening on Tftp Server Activat....
1月 08 09:50:51 Mikey systemd[1]: Starting Tftp Server Activation ....
Hint: Some lines were ellipsized, use -l to show in full.

三、syslinux安装

yum install -y syslinux

拷贝必要的
[root@Mikey tftpboot]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ 
[root@Mikey tftpboot]# ll
总用量 28
-rw-r--r-- 1 root root 26764 1月 8 10:14 pxelinux.0

四、HTTP服务

1、安装HTTP

yum install -y httpd

2、启动服务:(所有操作完毕后重启服务)
[root@mikey CentOS]#systemctl start httpd.service 
[root@mikey CentOS]# systemctl status httpd.service 
● httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
Active: active (running) since 一 2018-01-08 16:25:30 CST; 1h 1min ago
Docs: man:httpd(8)
man:apachectl(8)
Main PID: 16530 (httpd)
Status: "Total requests: 34; Current requests/sec: 0; Current traffic: 0 B/sec"
CGroup: /system.slice/httpd.service
├─16530 /usr/sbin/httpd -DFOREGROUND
├─16531 /usr/sbin/httpd -DFOREGROUND
├─16532 /usr/sbin/httpd -DFOREGROUND
├─16533 /usr/sbin/httpd -DFOREGROUND
├─16535 /usr/sbin/httpd -DFOREGROUND
├─16538 /usr/sbin/httpd -DFOREGROUND
├─16539 /usr/sbin/httpd -DFOREGROUND
├─16540 /usr/sbin/httpd -DFOREGROUND
├─16541 /usr/sbin/httpd -DFOREGROUND
├─16542 /usr/sbin/httpd -DFOREGROUND
└─16543 /usr/sbin/httpd -DFOREGROUND

1月 08 16:25:24 mikey systemd[1]: Starting The Apache HTTP Server...
1月 08 16:25:30 mikey httpd[16530]: AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using fe80::...s message
1月 08 16:25:30 mikey systemd[1]: Started The Apache HTTP Server.
Hint: Some lines were ellipsized, use -l to show in full.

3、创建目录并挂载

[root@mikey CentOS]# mkdir -p /var/www/html/CentOS
[root@mikey tftpboot]# mount /dev/sr0 /var/www/html/CentOS
mount: /dev/sr0 写保护,将以只读方式挂载
[root@mikey CentOS]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/sda3 98G 1.8G 97G 2% /
devtmpfs 479M 0 479M 0% /dev
tmpfs 489M 0 489M 0% /dev/shm
tmpfs 489M 6.7M 482M 2% /run
tmpfs 489M 0 489M 0% /sys/fs/cgroup
/dev/sda1 1014M 120M 895M 12% /boot
tmpfs 98M 0 98M 0% /run/user/0
/dev/sr0 4.3G 4.3G 0 100% /var/www/html/CentOS

测试:登录本机的IP地址或是部署的服务地址(证明HTTP服务一切正常)

五、其他配置操作:

1、在FTP服务器上创建目录
[root@mikey CentOS]# mkdir /var/lib/tftpboot/pxelinux.cfg

2、将镜像内的isolinux下的所有东西都考到tftpboot下
[root@mikey CentOS]# cp /var/www/html/CentOS/isolinux/* /var/lib/tftpboot/

3、再将isolinux.cfg拷给pxelinux.cfg下命名为default
[root@mikey CentOS]# cp /var/lib/tftpboot/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default

修改配置 vim /var/lib/tftpboot/pxelinux.cfg/default

[root@mikey CentOS]# vim /var/lib/tftpboot/pxelinux.cfg/default

61 label linux
62 menu label ^Install CentOS 7
63 kernel vmlinuz
64 #append initrd=initrd.img inst.stage2=hd:LABEL=CentOS\x207\x20x86_64 quiet
65 append initrd=initrd.img inst.repo=http://172.16.1.200/CentOS/

说明:要修改默认64行输入下面的任意2行中的一个即可

append initrd=initrd.img method=http://172.16.1.200/CentOS/
append initrd=initrd.img inst.repo=http://172.16.1.200/CentOS/
重要:修改配置 vim /var/lib/tftpboot/pxelinux.cfg/default (直接追加)
default ks
prompt 0

label ks
kernel vmlinuz
append initrd=initrd.img ks=http://172.16.1.201/ks_config/CentOS7-ks.cfg net.ifnames=0 biosdevname=0 ksdevice=eth1

重要:自动应答配置文件 vim /var/www/html/ks_config/CentOS7-ks.cfg

Kickstart Configurator for CentOS

install
url --url="http://172.16.1.200/CentOS7/"
text
lang en_US.UTF-8
keyboard us
zerombr
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"
network --bootproto=static --device=eth0 --gateway=10.0.0.254 --ip=10.0.0.202 --nameserver=223.5.5.5 --netmask=255.255.255.0 --activate
network --bootproto=static --device=eth1 --ip=172.16.1.202 --netmask=255.255.255.0 --activate
network --hostname=Cobbler
#network --bootproto=dhcp --device=eth1 --onboot=yes --noipv6 --hostname=CentOS7 
timezone --utc Asia/Shanghai
authconfig --enableshadow --passalgo=sha512
rootpw --iscrypted $6$X20eRtuZhkHznTb4$dK0BJByOSAWSDD8jccLVFz0CscijS9ldMWwpoCw/ZEjYw2BTQYGWlgKsn945fFTjRC658UXjuocwJbAjVI5D6/
clearpart --all --initlabel
part /boot --fstype xfs --size 1024
part swap --size 1024
part / --fstype xfs --size 1 --grow
firstboot --disable
selinux --disabled
firewall --disabled
logging --level=info
reboot

%packagesbr/>@^minimal
@compat-librariesbr/>@debugging
@development
tree
nmap
sysstat
lrzsz
dos2unix
telnet
wget
vim
bash-completion
%end

%post
systemctl disable postfix.service
%end

说明:上面的设置网络的是前两个是指定的IP地址,后面的是自动获取。


本文转自 游骑兵vtx 51CTO博客,原文链接:http://blog.51cto.com/qibingtuan/2058760


相关文章:

  • mysql 备份脚本
  • vsftp安装与下载
  • Walle代码发布练习
  • Nagios Cacti
  • TCP的TIME_WAIT快速回收与重用
  • 学习笔记 八: web服务
  • 告警系统
  • 改造了房屋布线
  • ORA-12547:TNS:lost contact 问题分析思路
  • gulp与webpack的区别
  • 5. Pycharm 安装、设置、运行
  • 3. Mac 下安装python
  • jQuery的弹出窗口插件colorbox
  • 在TreeCtrl中使用Edit功能
  • 每个分类取最新的几条的SQL实现
  • 【译】JS基础算法脚本:字符串结尾
  • [NodeJS] 关于Buffer
  • 2017-09-12 前端日报
  • js算法-归并排序(merge_sort)
  • MySQL-事务管理(基础)
  • Python 基础起步 (十) 什么叫函数?
  • Python实现BT种子转化为磁力链接【实战】
  • react-native 安卓真机环境搭建
  • Spring Boot MyBatis配置多种数据库
  • 工程优化暨babel升级小记
  • 互联网大裁员:Java程序员失工作,焉知不能进ali?
  • 浅析微信支付:申请退款、退款回调接口、查询退款
  • 专访Pony.ai 楼天城:自动驾驶已经走过了“从0到1”,“规模”是行业的分水岭| 自动驾驶这十年 ...
  • ​io --- 处理流的核心工具​
  • #Linux杂记--将Python3的源码编译为.so文件方法与Linux环境下的交叉编译方法
  • #中国IT界的第一本漂流日记 传递IT正能量# 【分享得“IT漂友”勋章】
  • (2/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  • (二)【Jmeter】专栏实战项目靶场drupal部署
  • (分布式缓存)Redis哨兵
  • (每日持续更新)jdk api之StringBufferInputStream基础、应用、实战
  • (南京观海微电子)——COF介绍
  • (南京观海微电子)——I3C协议介绍
  • (提供数据集下载)基于大语言模型LangChain与ChatGLM3-6B本地知识库调优:数据集优化、参数调整、Prompt提示词优化实战
  • (一一四)第九章编程练习
  • .form文件_一篇文章学会文件上传
  • .NET框架
  • .pings勒索病毒的威胁:如何应对.pings勒索病毒的突袭?
  • /bin、/sbin、/usr/bin、/usr/sbin
  • @ResponseBody
  • @transaction 提交事务_【读源码】剖析TCCTransaction事务提交实现细节
  • [ solr入门 ] - 利用solrJ进行检索
  • [ vulhub漏洞复现篇 ] GhostScript 沙箱绕过(任意命令执行)漏洞CVE-2019-6116
  • [AIGC] Nacos:一个简单 yet powerful 的配置中心和服务注册中心
  • [android学习笔记]学习jni编程
  • [Angular] 笔记 18:Angular Router
  • [BUG] Hadoop-3.3.4集群yarn管理页面子队列不显示任务
  • [bzoj4010][HNOI2015]菜肴制作_贪心_拓扑排序
  • [codevs 1296] 营业额统计
  • [Docker]十二.Docker consul集群搭建、微服务部署,Consul集群+Swarm集群部署微服务实战
  • [JavaScript]_[初级]_[关于forin或for...in循环语句的用法]