PXE+kickstart网络安装CentOS7.4系统及过程中各种报错
环境:关闭防火墙、selinux
注意:虚拟机进行网络安装的话,7.3以后的系统是需要2G以上的内存
[root@kickstart ~]# cat /etc/redhat-release
CentOS Linux release 7.4. (Core)
[root@kickstart ~]# uname -r
3.10.-.el7.x86_64
[root@kickstart ~]# getenforce
Disabled
[root@kickstart ~]# 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()
[root@kickstart ~]# hostname -I
10.0.0.201 172.16.1.201
博主使用的是虚拟机搭建
此篇博主在搭建中的每一步都列出了会出现的错误和解决方式,如果出错了,不要着急,耐心看。
有错、排错是提升的最快方式。
kickstart的原理及组件
首先安装DHCP
yum install dhcp -y
配置DHCP配置文件
cat >>/etc/dhcp/dhcpd.conf<<EOF
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 ; ## 地址租约
max-lease-time ; ## 最大租约
next-server 172.16.1.201; ## 下一步找什么
filename "/pxelinux.0"; ## 要下载的文件(请求下载启动文件)
}
EOF
启动dhcp查看日志
systemctl start dhcpd --- 启动
systemctl status dhcpd --- 查看状态
tailf /var/log/messages --- 查看日志
dhcp相关错误须知
然后安装TFTP
yum install tftp-server -y
启动服务
[root@kickstart ~]# systemctl start tftp.socket
[root@kickstart ~]# 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 二 -- :: CST; 25s ago
Listen: [::]: (Datagram) 11月 :: kickstart systemd[]: Listening on Tftp Server Activation ...t.
11月 :: kickstart systemd[]: Starting Tftp Server Activation Socket.
Hint: Some lines were ellipsized, use -l to show in full.
tftp相关错误须知
报错是在TFTP服务的根目录找不到启动文件pxelinux.0
解决:下载安装syslinux
安装syslinux,生成/pxelinux.0文件
[root@kickstart tftpboot]# yum install syslinux -y
[root@kickstart tftpboot]# cp /usr/share/syslinux/pxelinux. /var/lib/tftpboot/
[root@kickstart tftpboot]# ll
总用量
-rw-r--r-- root root 11月 : pxelinux.
错误须知
首先排除最简单故障原因:selinux是否关闭,防火墙是否关闭
上面的错误是因为pxelinux.0这个小系统的配置文件(default)不存在,或者文件名不对
然后进行镜像挂载
检查一下虚拟机是否使用了镜像
然后进行挂载
[root@kickstart tftpboot]# mkdir -p /var/www/html/CentOS7
[root@kickstart tftpboot]# mount /dev/cdrom /var/www/html/CentOS7/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@kickstart tftpboot]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/sda3 98G .5G 97G % /
devtmpfs 479M 479M % /dev
tmpfs 489M 489M % /dev/shm
tmpfs 489M 6.8M 482M % /run
tmpfs 489M 489M % /sys/fs/cgroup
/dev/sda1 1014M 120M 895M % /boot
tmpfs 98M 98M % /run/user/
/dev/sr0 .3G .3G % /var/www/html/CentOS7
从镜像中找到相关的配置文件
[root@kickstart tftpboot]# cp -a /var/www/html/CentOS7/isolinux/* /var/lib/tftpboot/
[root@kickstart tftpboot]# mkdir -p /var/lib/tftpboot/pxelinux.cfg
[root@kickstart tftpboot]# cp /var/www/html/CentOS7/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
安装http
作用1:提供自动应答文件下载
作用2:提供安装系统所需的所有rpm包下载
下载安装
[root@kickstart tftpboot]# yum install httpd -y
启动服务
[root@kickstart tftpboot]# systemctl start httpd.service
检测
[root@kickstart tftpboot]# curl http://172.16.1.201/CentOS7/
编辑default配置文件
[root@kickstart ks_config]# cat /var/lib/tftpboot/pxelinux.cfg/default
default ks
prompt
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
自动安装(编写ks文件)
命令段
install开头,到%pre
包组段
以%packages开头,以%end结束
脚本段
以%post开头,以%end结束,在安装完系统之后执行的相关Linux命令、脚本
以%pre开头,以%end结束,在安装完系统之前执行的相关Linux命令、脚本
[root@kickstart ks_config]# cat CentOS7-ks.cfg
# Kickstart Configurator for CentOS by yao zhang
install ## 告知这是一次安装程序
url --url=http://172.16.1.201/CentOS7/ ## 通过ftp或http从远程服务器安装的地址
text ## 使用文本模式安装
lang en_US.UTF- ## 设置安装过程中使用的语言字符集
keyboard us ## 设置系统键盘类型为us
zerombr ## 清除mbr引导信息
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet" --location=mbr ## 指定引导记录被写入的位置
--driveorder=sda ## 指定在BIOS引导顺序中居首的驱动器
--append="crashkernel=auto rhgb quiet" ## 指定内核参数,要指定多个参数空格分隔,为通过网络的kickstart安装以及所安装的系统配置联网信息。
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 ## 以上是静态配置ip网络信息的写法
#network --bootproto=dhcp --device=eth1 --onboot=yes --noipv6 --hostname=CentOS7 ## 动态配置ip网络信息的写法和配置主机名
timezone --utc Asia/Shanghai ## 设置时区为亚洲上海
authconfig --enableshadow --passalgo=sha512 ## 系统认证信息,这里要是写密文密码需加 设置密码加密方式为sha512 启用shadow文件
rootpw --iscrypted $$X20eRtuZhkHznTb4$dK0BJByOSAWSDD8jccLVFz0CscijS9ldMWwpoCw/ZEjYw2BTQYGWlgKsn945fFTjRC658UXjuocwJbAjVI5D6/ ## 加密的root密码
clearpart --all --initlabel ## 清空分区,清空所有分区
part /boot --fstype xfs --size ## 为分区设置文件系统类型为xfs,size设置大小
part swap --size
part / --fstype xfs --size --grow ## grow把剩余容量都给这个分区
firstboot --disable ## 协助配置服务器的重要信息
selinux --disabled ## 关闭selinux
firewall --disabled ## 关闭防火墙
logging --level=info ## 设置日志级别
reboot ## 设置安装完成后重启,必须存在 %packages ## 这一部分是要安装的一些包
@^minimal
@compat-libraries
@debugging
@development
tree
nmap
sysstat
lrzsz
dos2unix
telnet
wget
vim
bash-completion
%end %post ## 安装后执行的命令,如果要一键化搭建集群,这里可以执行写好的shell或ansible剧本进行搭建
systemctl disable postfix.service
%end
一大坨ks文件信息
低级错误
报错原因:selinux没关
解决:关闭selinux
CentOS7.4网络安装
安装过程的常见报错
原因:CentOS6和7的default文件中的append这一行不同
解决方法:改append这一行
欢迎大家私信,不足之处请指出。
PXE+kickstart网络安装CentOS7.4系统及过程中各种报错的更多相关文章
- pxe+kickstart 无人值守安装CentOS7.1
CentOS6.6下PXE+Kickstart无人值守安装CentOS7.1操作系统 一.简介 1.1 什么是PXE Pxe(Pre-boot Execution Environment,预启动执行 ...
- PXE+Kickstart无人值守安装---CentOS7.
1.安装一台CentOS7.x桌面版本系统的服务器,关闭selinux和防火墙: 2.在服务器安装pxe+kickstart无人值守需要的软件 : yum install dhcp tftp-serv ...
- 解决 Composer-Setup.exe 安装过程中的报错
问题 在 Windows 7 执行 Composer-Setup.exe 以安装 Composer 过程中 上图中点击[Next]时,出现如下报错信息 原因分析 由上述提示信息,可推测两方面原因: 1 ...
- PXE+Kickstart 全自动安装部署CentOS7.4
一.简介 1.什么是PXE PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过 ...
- CentOS 6.5下PXE+Kickstart无人值守安装操作系统centos7.3
CentOS 6.5下PXE+Kickstart无人值守安装操作系统centos7.3 一.简介 1.1 什么是PXE PXE(Pre-boot Execution Environment,预启动执行 ...
- linux系统PXE+Kickstart自动安装系统
一.PXEPXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服 ...
- 使用PXE+Kickstart无人值守安装系统
PXE预启动执行环境(即Preboot execute environment) 是一种能够让计算机通过网络启动的引导方式,只要网卡支持PXE协议即可使用,用于在无人值守安装系统服务中引导客户机安装服 ...
- CentOS 6.6下PXE+Kickstart无人值守安装操作系统
一.简介 1.1 什么是PXE PXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持 ...
- PXE+kickstart无人值守安装CentOS 7
kickstart+cobbler系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html 本文是PXE+kickstart无人值守安装CentOS ...
随机推荐
- calc() ---一个会计算的css属性
最近这个月一直在赶项目开发,遇到的问题和学到的前端知识没有更新到博客园,现在闲了下来,就整理一下前端知识. 在项目开发中,在样式这方面花费的时间较多,因为针对于数字的变化特别多,本人不爱记数字,在看设 ...
- 记录一次参加D2前端技术论坛的杭州之行
前言 在这里,闰土首先要感谢以下两位大佬提供的门票,分别是来自新浪微博部门的H同学,以及来自小米科技的D同学. 当我周六晚上在青旅写完这篇文章过后,第二天上网发现,已经有大佬提前一步在掘金上发布了高质 ...
- QQ互联申请及配置
今天要说的只是针对QQ互联的操作,其他的互联请参考相关网站. 第一步:需要申请API接口的两码 自行登录QQ互联https://connect.qq.com/index.html,然后按照要求申请就O ...
- jenkins+github持续集成中的坑
1.前言 刚开始开发自己的独立博客的时候,每次发布都要手动打包,上传服务器,杀tomcat进程,重启,来回这么重复性工作,很快就有点不耐烦了.如果能自动化的东西,就绝不要手动了,所以自己搭建了个持续集 ...
- JAVA设计模式之:命令模式
*通常情况下:行为请求者与实现者通常呈现一种高度耦合状态.有时要对行为进行变更处理处理.高度耦合方式就显得不合适. * 将行为请求者与行为实现者解耦,将一组行为抽象为对象.实现二者之间的松耦合. 这就 ...
- 《Deep Learning》译文 第一章 前言(中) 神经网络的变迁与称谓的更迭
转载请注明出处. 第一章 前言(中) 1.1 本书适合哪些人阅读? 能够说本书的受众目标比較广泛,可是本书可能更适合于例如以下的两类人群.一类是学习过与机器学习相关课程的大学生们(本科生或者研究生). ...
- Triangle LeetCode |My solution
Given a triangle, find the minimum path sum from top to bottom. Each step you may move to adjacent n ...
- [Shell]crontab 运行任务调用shell脚本,相对路径无法找到
问题出现的场景大概就是 1 cron调用一个python脚本 2 python脚本中调用一个shell脚本(对日志分析)获取shell输出然后发送邮件 类似一个监控任务. 直接运行python脚本 ...
- xml基本语法(2)
本节要点: 了解XML的文档声明 了解XML的元素.命名规则.属性.元素内容.处理指令等概念 1 XML文档声明 表示该文档是一个XML文档,以及遵循哪个XML版本的规范. 规范:<?xml 版 ...
- jmeter的使用---web测试
jmeter的使用---web测试 url:http://127.0.0.1:1080/WebTours/ 1.通过badboy录制脚本 1.1输入url点击右侧的跳转按钮,随后右侧显示url界面 1 ...