自动安装部署Linux

----吾情灬小屁孩

QQ:8651060

下面为大家做一个可以无人值守安装rHat6。

需要:两台电脑。一台做为服务器,一台客户机。

YUM源(安装包)

我们需要安装以下几个程序包:

1、ftp服务程序 yum install -y vsftpd*

2、tftp服务程序yum install -y tftp*

3、dhcp服务程序yum install -y dhcp*

4、syslinux服务程序 yum install -y syslinux

首先。我们进入Linux系统

配置IP

Vim /etc/sysconfig/network-scripts/ifcfg-eth0

(以我的IP做试验,我把我的IP截图给大家做参考)

配置YUM。

我用的是光盘所以用光盘给大家试验:

cd /etc/yum.repos.d(有时候这个文件夹下会自动生成以packagekit开头的配置文件,一般我们把它删掉。不然yum安装的时候容易报错。)

Vim cdrom.repo(名字随便起,不过后缀要是.repo)

写好了以后按ESC

:wq(保存退出)

mkdir /mnt/cdrom

mount /dev/cdrom /mnt/cdrom

准备工作做好后。要注意的是自己电脑的iptables和selinux设置

在本次实验中我们不需要所以我就禁用了。(如果需要自己查找资料进行设置)

service iptables stop

chkconfig iptables on

setenforce 0

安装程序包:

yum install -y dhcp

yum install -y tftp*

yum install -y vsftpd*

yum install -y syslinux

配置DHCP服务:

vim /etc/dhcp/dhcpd.conf

打开编辑发现没什么东西额.....

好吧,其实它是让我们自己写的~~

ddns-update-style interim;

//是否允许服务器端的自动更新,意思就是可以让服务器自动往客户端里推送系统更新。这里的意思是表示忽略

ignore client-updates;

//是否允许客户端的自动更新

subnet 192.168.3.0 netmask 255.255.255.0{

//声明负责的网段、子网掩码,注意*DHCP服务器自己必须在这个设置的网段内。

option routers 192.168.3.254;

//分配给客户端的网关(试验中我就直接指向我自己啦~~)

option subnet-mask 255.255.255.0;

//分配给客户端的子网掩码

option domain-name-servers 192.168.3.254;

//分配给客户端的DNS

range dynamic-bootp 192.168.3.100 192.168.1.120;

//指定DHCP分配地址池的范围

filename "pxelinux.0";

//指定pxe 驱动文件的文件名字

(PXE是用来通过网络部署系统的)

next-server 192.168.3.254;

//指定驱动位置。(告诉客户机当分配IP以后去哪个机器找驱动.)

default-lease-time 21600;

max-lease-time 43200;

//DHCP分配的IP地址的默认和最大的租约时间。

}

//千万不要忘记这个右中括号哦!

写好了以后按ESC

:wq(保存退出)

重启DHCP服务

设置开机启动

配置TFTP 服务:

vim /etc/xinetd.d/tftp

修改:

server_args = -s /tftpboot

//TFTP主目录的位置(可以不改,这里为了方便我就改到根目录下,作为引导文件的目录.)

disable = no

//disable不启用、消失的意思。所以改成no就是不消失。启用的意思了哦。

写好了以后按ESC

:wq(保存退出)

启动tftp服务,设置开机启动:

接下来我们要去建立一个文件夹去放自动安装部署的程序软件包:

在ftp的pub 目录下新建一个dvd的文件夹来放我们的程序软件包。

mkdir /var/ftp/pub/dvd

因为是想让所有人都能用能下载软件包嘛,所以权限要改大一些。

chmod 755 /var/ftp/pub/dvd

因为我是用光盘安装软件包。所以下面试验我要把光盘里的东西挂到dvd里。

(如果自己有需要的包的可以直接放到dvd里的.)

mount /dev/cdrom /var/ftp/pub/dvd

现在我们到“/”目录下去创建我们配置文件里的那个主目录:

mkdir /tftpboot

我们在tftpboot下再创建一个pxelinux.cfg目录

这个目录没有什么命名规则,这么起名字是为了我们以后的排错。

mkdir /tftpboot/pxelinux.cfg

然后我们需要拷贝系统引导需要的驱动文件到我们的tftpboot目录下:

cp /usr/share/syslinux/pxelinux.0 /tftpboot

再拷贝系统启动所需要的一些默认的服务和配置文件等信息到刚才我们建立的pxelinux.cfg下并重命名为default:

cp /var/ftp/pub/dvd/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default

为了让它都能使用。还要保证安全所以我们需要改它的权限:

chmod 644 /tftpboot/pxelinux.cfg/default

然后再拷贝syslinux服务生成的一些系统启动时需要的文件到/tftpboot下:

cp /var/ftp/pub/dvd/isolinux/* /tftpboot/

以上都做好了以后就只剩下最重要的自动安装功能啦~~

因为要自动安装。我们需要创建一个脚本。

这里我自己写一个给大家.

在pub目录下编辑一个脚本文件。命名为ks.cfg

vim/var/ftp/pub/ks.cfg

firewall --disabled

//在安装时关闭防火墙

Install

//现在开始安装系统

url --url="ftp://192.168.3.254/pub/dvd"

//指定需要安装相关软件包的路径

rootpw --iscrypted $1$uXz1B1$8SU3qIbh994/ECpAh4wva1

//输入管理员的密码。后面字符串是加密的密码

(加密密码的方法:

grup-md5-crypt然后输入两次密码就自动生成加密字符串啦.)

auth --useshadow --passalgo=sha512

//认证身份信息

text

//用文本安装模式

firstboot --disable

//启动的时候采用的模式

keyboard us

//键盘语言

lang en_US

//语言种类(尽量别选中文,容易报错)

selinux --enforcing

//SElinux 是什么模式

skipx

//跳过检测

logging --level=info

//保存的日志级别(info代表所有)

Reboot

//重新启动

timezone Asia/Shanghai

//时区 ,我先得是上海可以选别的

Network //配置网卡信息

--bootproto=static //静态信息

--device=eth0 //哪个网卡

--gateway=192.168.3.254

//网关

--ip=192.168.3.120

//IP地址(IP范围,最大的多少写多少)

--nameserver=192.168.3.254

//DNS服务器地址

--netmask=255.255.255.0 //子网掩码

--onboot=yes

//是否启用网卡

--hostname=xiaopihai

//主机名

bootloader --location=mbr

//启动信息保存到mbr分区表

zerombr

//清空分区表

clearpart --all

//清空现有所有分区

part /boot --fstype="ext4" --size=200

//创建一个ext4的分区,挂载到/boot,大小为200M

part pv.01 --size=1 --grow

//创建第一个PV分区,所以是01,使用所有可用空间

volgroup vg0 pv.01

//创建一个VG,名字为vg0,包含第一个PV分区

logvol / --vgname=vg0 --size=3048--name=root

//创建一个LV,挂载到/ ,从vg0中创建,大小为2048M,LV的名字是root

logvol swap --vgname=vg0 --size=1024 --name=swap

//创建一个LV,是swap,从vg0中创建,大小为1024M,LV的名字是swap

logvol /home --vgname=vg0 --size=1--grow --name=home

//创建一个LV,挂载到/home,从vg0中创建,使用所有可用空间,LV的名字是home

%packages

//在下面写要安装的包

vim

gcc

make

kernel-devel

lftp

%post

//结束

useradd xiaopihai

//创建用户

echo redhat |passwd --stdin xiaopihai

//添加密码

rm -rf /etc/yum.repos.d/*

//删除yum.repos.d下的所有文件免得系统自动生成配置文件对我们的yum配置文件有影响。

touch /etc/yum.repos.d/cdrom.repo

//建立配置文件。

echo [cdrom] > /etc/yum.repos.d/cdrom.repo

echo name=cdrom >> /etc/yum.repos.d/cdrom.repo

echo baseurl="ftp://192.168.3.254/pub/dvd" >> /etc/yum.repos.d/cdrom.repo

echo enabled=1 >> /etc/yum.repos.d/cdrom.repo

echo gpgcheck=0 >> /etc/yum.repos.d/cdrom.repo

//上面都是需要写入cdrom.repo配置文件里面的内容。

写好了以后按ESC

:wq(保存退出)

现在我们去指定文件路径

vim /tftpboot/pxelinux.cfg/default

在append initrd=initrd.img后添加:

ks=ftp://192.168.3.254/pub/ks.cfg

好啦。这样就完成啦~

现在就让我们启动服务器和客户端来检验自己的成果吧!

*如果用虚拟机试验注意真机的防火墙阻隔哦,需要让自动安装部署服务器和客户机单独在一个网段内哦!

linux系统安装报firstboot错,自动安装部署LINUX相关推荐

  1. xml配置linux启动脚本,linux中利用Shell脚本实现自动安装部署weblogic服务

    身在物流行业,临近618和双十一,都需要进行系统压力测试,今年也不例外.这个时候需要随时切换自己开发和压测的身份,一面要完成新需求的开发任务,另一面要完成压测任务:虽然4月刚开始,但是压测任务已经排上 ...

  2. Kickstart+HTTP+DHCP+TFTP全自动批量安装部署Linux系统

    说明: Kickstart服务器系统:CentOS 6.5 64位 IP地址:192.168.0.250 需要安装部署的Linux系统:CentOS 6.5 64位 eth0(第一块网卡,用于外网)I ...

  3. Linux系统安装和相关编程环境安装

    Linux系统安装和相关编程环境安装 文章目录 Linux系统安装和相关编程环境安装 一.安装Linux系统 二.配置网关 三.安装jdk 四.安装MySQL 五.使用linux系统配置Tomcat ...

  4. linux中实现pxe的自动安装

    linux中实现pxe的自动安装 什么是PXE PXE(preboot execute environment)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站 ...

  5. 自动打包linux,使用Jenkins如何自动打包部署linux

    使用Jenkins如何自动打包部署linux 发布时间:2020-11-25 14:47:07 来源:亿速云 阅读:86 作者:Leah 使用Jenkins如何自动打包部署linux?很多新手对此不是 ...

  6. linux系统安装(CentOS 7) 和软件安装(mysql,tomcat,jdk)

    linux系统安装(CentOS 7) 和软件安装(mysql,tomcat,jdk) 目录 linux系统安装(CentOS 7) 和软件安装(mysql,tomcat,jdk) 软件准备 ## 系 ...

  7. 老毛桃U盘工具,自由更换系统,方便快捷,全面兼容新旧配置,自制引导盘和光驱无法更新系统,老毛桃引导盘用户可以自由替换系统,支持GHOST与原版系统安装,方便快捷,自动安装。支持双显卡笔记本的引导进PE

    老毛桃U盘工具,自由更换系统,方便快捷,全面兼容新旧配置,自制引导盘和光驱无法更新系统,老毛桃引导盘用户可以自由替换系统,支持GHOST与原版系统安装,方便快捷,自动安装.支持双显卡笔记本的引导进PE ...

  8. Win7SP1官方原版系统安装VMtools出现无法自动安装驱动程序

    问题:Win7SP1系统安装VMtools出现无法自动安装驱动程序 今天在使用Win7系统做实验的时候,因为好久没用过win7了,就下载了个win7sp1的系统去安装,发现安装VMtools的时候安装 ...

  9. linux 下mysql忘记密码或者安装好linux后不知道mysql初始密码解决方案

    linux 下mysql忘记密码或者安装好linux后不知道mysql初始密码解决方案 参考文章: (1)linux 下mysql忘记密码或者安装好linux后不知道mysql初始密码解决方案 (2) ...

最新文章

  1. List和ObservableCollection的相互转化
  2. 小撒、金晨都想拥有!百度全球首款汽车机器人亮相,车内躺着看星星
  3. 中国AI专利申请量超美国,百度居国内首位
  4. 百度广告管家帮助站长“管好家”
  5. 传统的线性降维方法效果不佳。_高压断路器机械故障诊断与定位的新思路:KPCA-SoftMax诊断方法...
  6. mongo数据库单节点搭建
  7. Service Mesh 初体验
  8. Python中的Dask数组
  9. 演示一个简单的Redis队列
  10. 第六章 应用层[练习题+课后习题]
  11. Unity3D之FingerGestures使用
  12. requireJS,rjs,gulp简易实现
  13. 关于java导出Excel 并设置密码权限
  14. 企业参加社保须知(缴费比例表)
  15. HDU - 最大报销额(01背包|贪心)
  16. 实现Linux下的cp命令
  17. the specified license key not be verified as belonging to this host
  18. SpringBoot+Vue(一)商品管理系统 模式介绍 、项目改造
  19. 算法学习FFT系列(2):快速数论变换NTT bzoj3992: [SDOI2015]序列统计例题详解
  20. 线上线下效果一致性杂谈

热门文章

  1. iOS之常用第三方库的介绍
  2. DSP F2803x中CLA模块介绍
  3. 3.罗马数字转整数(JS)
  4. 英语初级语法--句子成分(词性)(名词)
  5. [BZOJ 3811]玛里苟斯(线性基)尽量理解的题解
  6. 深度学习入门笔记(十五):深度学习框架(TensorFlow和Pytorch之争)
  7. CMD设置代理 注册表设置IE代理
  8. mysql myisam表分区_MySQL 表分区详解MyiSam引擎和InnoDb 区别(实测)
  9. 采用Tagged Pointer的字符串
  10. 【Java】java格式化时间到毫秒