[无人值守安装操作系统]__RHEL6__FTP+TFTP+DHCP+Kickstart+PXE
实验环境
1.实验平台:VMware Workstation 10
2.实验OS:RHEL6
3.服务器A:
(1) 10.0.10.158
(2) DHCP/FTP/TFTP
(3) 有可使用的yum源
(4) 关闭防火墙和SELinux
4.服务器B:
(1) 为RHEL6被安装端
(2) 设置为网络引导安装
(3) 在VM中设置A和B连接在同一个LAN segement
准备工作
生成ks.cfg 文件需要system-config-kickstart 工具,而此工具依赖于X Windows。所以我们需要在服务器A安装X Windows 和Desktop(图形界面支持):
# yum groupinstall Desktop
# yum groupinstall "X Window System"
# startx ----->#可启动图形界面
FTP的安装与配置
# yum install vsftp* -y ------>#安装ftp
# service vsftpd start ------>#启动ftp服务
# chkconfig vsftpd on ------>#设置为开机自动启动
注意:FTP的配置,一定要保证anonymous匿名用户可以登录!
TFTP的安装与配置
1.安装tftp服务
# yum install tftp -y
# yum install tftp-server -y
2.修改配置文件中13、14行的内容
# vim /etc/xinetd.d/tftp
1 # default: off
2 # description: The tftp server serves files using the trivial file transfer \
3 # protocol. The tftp protocol is often used to boot diskless \
4 # workstations, download configuration files to network-aware printers, \
5 # and to start the installation process for some operating systems.
6 service tftp
7 {
8 socket_type = dgram
9 protocol = udp
10 wait = yes
11 user = root
12 server = /usr/sbin/in.tftpd
13 server_args = -s /tftpboot #修改
14 disable = no #修改
15 per_source = 11
16 cps = 100 2
17 flags = IPv4
18 }
3.重启xinetd服务,检查端口(xinetd本来就是开机自启的),则TFTP服务可正常启动了
# /etc/init.d/xinetd start
# lsof -i:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
xinetd root 5u IPv4 0t0 UDP *:tftp
DHCP的安装与配置
1.安装DHCP,修改配置文件
# yum install dhcp -y
# vim /etc/dhcp/dhcpd.conf
ddns-update-style none;
ignore client-updates;
log-facility local7;
default-lease-time 3600;
max-lease-time 72000;
subnet 10.0.10.0 netmask 255.255.255.0 {
range 10.0.10.1 10.0.10.200;
option routers 10.0.10.158;
option subnet-mask 255.255.255.0;
}
filename "pxelinux.0"; ------>#这是网络引导必须有的配置
next-server 10.0.10.158; ------>#这是网络引导必须有的配置
2.重启服务,设置为开机自启
# service dhcpd restart
# chkconfig dhcpd on
配置Kicksart
# mkdir /tftpboot ------>#这对应了我们之前在xinetd.d/tftp配置文件中的设置(13行)
# mkdir /tftpboot/pxelinux.cfg
# yum install system-config-kickstart.noarch –y
# cp /usr/share/syslinux/pxelinux.0 /tftpboot/ ------>#要安装system-config-kickstart.noarch才找得到syslinux这个目录的
# mount /dev/sr0 /mnt ------>挂载光盘到/mnt下,就可以拷贝光盘中需要的文件了
# cp /mnt/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default
# cp /mnt/images/pxeboot/initrd.img /tftpboot/
# cp /mnt/images/pxeboot/vmlinuz /tftpboot/
# chmod 644 /tftpboot/pxelinux.cfg/default
# vim /tftpboot/pxelinux.cfg/default
1 default linux ------>#修改这里为linux,表示寻找18行的label linux
2 #prompt 1
3 timeout 600
4
5 display boot.msg
6
7 menu background splash.jpg
8 menu title Welcome to Red Hat Enterprise Linux 6.4!
9 menu color border 0 #ffffffff #00000000
10 menu color sel 7 #ffffffff #ff000000
11 menu color title 0 #ffffffff #00000000
12 menu color tabmsg 0 #ffffffff #00000000
13 menu color unsel 0 #ffffffff #00000000
14 menu color hotsel 0 #ff000000 #ffffffff
15 menu color hotkey 7 #ffffffff #ff000000
16 menu color scrollbar 0 #ffffffff #00000000
17
18 label linux
19 menu label ^Install or upgrade an existing system
20 menu default
21 kernel vmlinuz
22 append initrd=initrd.img ks=ftp://10.0.10.158/ks.cfg ------>#修改这里(我们后面会生成ks.cfg这个文件的)------>如果要做成有人值守安装这行应该注释掉
23 label vesa
24 menu label Install system with ^basic video driver
25 kernel vmlinuz
26 append initrd=initrd.img xdriver=vesa nomodeset
27 label rescue
28 menu label ^Rescue installed system
29 kernel vmlinuz
30 append initrd=initrd.img rescue
31 label local
32 menu label Boot from ^local drive
33 localboot 0xffff
34 label memtest86
35 menu label ^Memory test
36 kernel memtest
37 append -
制作无人值守安装文件
1.在图形界面下,打开终端输入system-config-kickstart,弹出界面
(1)基本配置:
设置下默认安装的语言,时区,根口令,然后勾选下面的安装后重新引导
(2).安装方法:
选择执行新安装,配置ftp服务器的安装方法。
(3).引导程序选项(漏截了盗个图)
(4).分区信息
根据需要规划分区大小
(5).网络配置
选择DHCP方式
(6).验证
(7).防火墙配置
根据需求选择开启或关闭防火墙和SELinux
(8).显示配置(再次盗图...)
(9).软件包选择
根据需求选择
(10).预安装脚本和安装后脚本
根据需求配置
2.左上角file,点击保存,命令为ks.cfg
最后一点步骤~
1.记得我们的在/tftpboot/pxelinux.cfg/default文件的22行中写过:
append initrd=initrd.img ks=ftp://10.0.10.158/ks.cfg
我们告诉了被安装机子要去哪里找这个安装文件,所以得把ks.cfg这个安装文件放到/var/ftp下,让它到时候可以去FTP服务器下载到这个安装文件
# cp /root/ks.cfg /var/ftp
2.记得我们在制作安装文件ks.cfg时,对于第(2)安装方法的配置吗。我们的安装源设置成了FTP方式,目录写了/pub
所以,要把光盘挂到/var/ftp/pub下,被安装机子需要的安装光盘里面的内容,就是到这里去找的
# mount /dev/sr0 /var/ftp/pub
补充
1.可以查看一下安装文件ks.cfg的内容,会发现实质就是我们在制作过程中选择的那些设置
#platform=x86, AMD64, or Intel EM64T
#version=DEVEL
# Firewall configuration
firewall --disabled
# Install OS instead of upgrade
install
# Use network installation
url --url="ftp://10.0.10.158/pub"
# Root password
rootpw --iscrypted $1$4mwMdVVg$x40MwRz3xD13hzBGOIwUs0
# System authorization information
auth --useshadow --passalgo=md5
# Use graphical install
graphical
firstboot --disable
# System keyboard
keyboard us
# System language
lang zh_CN
# SELinux configuration
selinux --disabled
# Installation logging level
logging --level=info
# Reboot after installation
reboot
# System timezone
timezone Africa/Abidjan
# Network information
network --bootproto=dhcp --device=eth0 --onboot=on
# System bootloader configuration
bootloader --location=mbr
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart --all --initlabel
# Disk partitioning information
part /boot --fstype="ext4" --size=200
part /home --fstype="ext4" --size=500
part swap --fstype="swap" --size=1024
part / --fstype="ext4" --grow --size=1 %packages
@additional-devel
@base
@basic-desktop
@chinese-support
@console-internet
@desktop-debugging
@desktop-platform
@development
@emacs
@fonts
@general-desktop
@graphical-admin-tools
@graphics
@input-methods
@internet-applications
@internet-browser
@kde-desktop
@network-tools
@nfs-file-server
@office-suite
@remote-desktop-clients
@system-admin-tools
@system-management
@system-management-snmp
@system-management-wbem
@tex
@x11
git
ftp
tftp
wget
xsettings-kde
-ibus-table-cangjie
-ibus-table-erbi
-ibus-table-wubi
%end
%post
chkconfig NetworkManager off ------>#所以可以在其中添加一些脚本来实现一些自定义的设置
sed -i '/NM/s/yes/no/' /etc/sysconfig/network-scripts/ifcfg-eth0
mkdir /myfile
wget ftp://10.0.0.254/pub/service.txt -O /myfile
chmod 600 /myfile/service.txt
useradd user01
echo "aixocm" | passwd --stdin user01
%end
2.实验过程遇到的错误
见博文:http://www.cnblogs.com/snsdzjlz320/p/5630268.html
[无人值守安装操作系统]__RHEL6__FTP+TFTP+DHCP+Kickstart+PXE的更多相关文章
- [无人值守安装操作系统]_FTP+TFTP+DHCP+Kickstart+PXE_中遇到的错误
本篇记录的是实验 http://www.cnblogs.com/snsdzjlz320/p/5629127.html 过程出现的问题 问题一: PXE-E11:ARP timeout TFTP c ...
- PXE+Kickstart+DHCP+TFTP实现无人值守安装操作系统
PXE+Kickstart+DHCP+TFTP实现无人值守安装操作系统 PXE + Kickstart PXE的工作流程及配置文件 Kickstart的配置文件 Linux安装大致可以分为2个阶段 第 ...
- centos 6.x下pxe+tftp+http+kickstart无人值守安装操作系统
1.1 什么是PXE PXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过 ...
- [转]CentOS 6.4下PXE+Kickstart无人值守安装操作系统
一.简介 1.1 什么是PXE PXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持 ...
- CentOS 6.4下PXE+Kickstart无人值守安装操作系统 转
一.简介 1.1 什么是PXE PXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持 ...
- RHEL7下PXE+NFS+Kickstart无人值守安装操作系统
RHEL7下PXE+NFS+Kickstart无人值守安装操作系统 1.配置yum源 vim /etc/yum.repos.d/development.repo [development] name= ...
- RHEL7下PXE+Apache+Kickstart无人值守安装操作系统
RHEL7下PXE+Apache+Kickstart无人值守安装操作系统 1.配置yum源 vim /etc/yum.repos.d/development.repo [development] na ...
- CentOS 6.6下PXE+Kickstart无人值守安装操作系统
一.简介 1.1 什么是PXE PXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持 ...
- 【转载】CentOS 6.4下PXE+Kickstart无人值守安装操作系统
[转载]CentOS 6.4下PXE+Kickstart无人值守安装操作系统 转自:CentOS 6.4下PXE+Kickstart无人值守安装操作系统 - David_Tang - 博客园 http ...
随机推荐
- 理解python先编译后解释的特点
1. CPython默认的标准解释器编译器.JPython支持Java集成,可以生成Java字节码并在JVM中解释执行.IronPython支持.NET集成. 2. 下次运行程序时,python自动检 ...
- Linux 下多核CPU知识
1. 在Linux下,如何确认是多核或多CPU: #cat /proc/cpuinfo 如果有多个类似以下的项目,则为多核或多CPU: processor : 0 ...... processor ...
- HTTP长连接200万尝试及调优
对于一个server,我们一般考虑他所能支撑的qps,但有那么一种应用, 我们需要关注的是它能支撑的连接数个数,而并非qps,当然qps也是我们需要考虑的性能点之一.这种应用常见于消息推送系统,也称为 ...
- leetcode 27
27. Remove Element Given an array and a value, remove all instances of that value in place and retur ...
- MySQL的20条基本优化 加参考资料
mysql的性能优化包罗甚广:索引优化,查询优化,查询缓存,服务器设置优化,操作系统和硬件优化,应用层面优化(web服务器,缓存)等等.这里的记录的优化技巧更适用于开发人员,都是从网络上收集和自己整理 ...
- Ninject在mvc中的简单配置
前言 Ninject是一款开源的轻量级的依赖注入插件.从接触ioc以来,一直都是使用这个,感觉用起来还是不错的,配置起来也很方便简单.在mvc中更是基本傻瓜式的配置. 开发前的准备 新建一个mvc3项 ...
- 【Winform】DataTable绑定到ComboBox
我们从数据库中查询出来的数据存放在Datatable中 1.DataTable绑定到ComboBox上 cmbRole.DataSource = datatable; cmbRole.DisplayM ...
- c语言学习的第四天2
上图显示了float和double的精度,精度:就是指数值的精确程度,浮点类型可表示的数值范围很大,但只有几位是精确的,可以通过小 数所占的位数来获取,float小数部分最多能有7位有效数字,但绝对能 ...
- mac里边配置android开发环境,intellij开发工具:
1 在android的官网下载 android sdk的mac版 http://developer.android.com/sdk/index.html 选择mac的版本 下载后打开sdk-mana ...
- javascript变量和对象要注意的点
js对象和变量,对象本身是没有名称的,之所以使用变量是为了通过某个名称来称呼这样一种不具名称的对象.变量分基本变量和引用类型变量.将基本类型的的值付给变量的话,变量将这个值本身保存起来. <sc ...