无人值守安装Linux系统操作版

操作之前,建议关闭防火墙以及SELinux。

PS:

  1. 查看防火状态:systemctl status firewalld

  2. 暂时关闭防火墙:systemctl stop firewalld

  3. 永久关闭防火墙:systemctl disable firewalld

  4. 永久关闭SELinux方法 – 需要重启服务器

    打开/etc/selinux/config文件中,设置SELINUX=disabled ,然后重启服务器。

  5. 使用命令setenforce 0;临时关闭SELinux。

实验环境:

1.在一台CentOs7版本的Linux系统上部署无人值守系统。(ip:192.168.78.8)
2.一台未安装系统的客户机。

如果没有挂载好光盘的,需要先去挂载光盘。

  • 创建一个挂载点:

        mkdir /mnt/cdrom
    
  • 将我们镜像挂载到新创建的挂载点上。

        mount -t iso9660 -o loop /dev/sr0 /mnt/cdrom
    
  • 实现开机自动挂载:

      /dev/sr0 /mnt/cdrom iso9660 defaults 0 0
    

一、安装以及配置DHCP

1.安装DHCP

[root@hello ~]# yum install -y dhcp
已加载插件:fastestmirror
base                                                              | 3.6 kB  00:00:00
Loading mirror speeds from cached hostfile
epel/primary_db                                                   | 6.9 MB  00:00:01
软件包 12:dhcp-4.2.5-79.el7.centos.x86_64 已安装并且是最新版本
无须任何处理  (由于我已经安装过了,所以无需安装。)
[root@hello ~]#

2.配置DHCP(通过它指定PXE方式)

vim /etc/dhcp/dhcpd.conf
default-lease-time 86400;
max-lease-time 86400;
log-facility local7;
subnet 192.168.8.0 netmask 255.255.255.0 { #根据自身所在的网段设置range 192.168.8.180 192.168.8.253;option routers 192.168.8.2;next-server 192.168.8.78; #添加tftp服务器,我是将自己设置成了TFTP服务器。#default-lease-time 86400;#max-lease-time 86400;#log-facility local7;#bootstarpfilename="pxelinux.0";}

3.开启DHCP

[root@hello ~]# systemctl restart dhcpd #重启
[root@hello ~]# systemctl enable dhcpd  #开机自启动

二、安装和配置TFTP和守护进程

1.安装TFTP和守护进程

[root@hello ~]# yum install -y xinetd tftp-server
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
软件包 2:xinetd-2.3.15-14.el7.x86_64 已安装并且是最新版本
软件包 tftp-server-5.2-22.el7.x86_64 已安装并且是最新版本
无须任何处理 #我之前已经安装过了。

TFTP是一种轻量级服务,我们需要通过xinetd它的配置文件去控制它。

2.修改配置文件

[root@hello ~]# vim /etc/xinetd.d/tftp
# default: off
# description: The tftp server serves files using the trivial file transfer \
#       protocol.  The tftp protocol is often used to boot diskless \
#       workstations, download configuration files to network-aware printers, \
#       and to start the installation process for some operating systems.
service tftp
{socket_type             = dgramprotocol                = udpwait                    = yesuser                    = rootserver                  = /usr/sbin/in.tftpdserver_args             = -s /var/lib/tftpbootdisable                 = no #这里需要更改为noper_source              = 11cps                     = 100 2flags                   = IPv4
}

3.开启服务

systemctl restart xinetd
systemctl restart tftp
systemctl enable xinetd
systemctl enable tftp

三、安装和配置syslinux

1.安装syslinux

[root@hello ~]# yum install -y syslinux
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
软件包 syslinux-4.05-15.el7.x86_64 已安装并且是最新版本
无须任何处理

2.拷贝引导文件 pxelinux 0,在/uer/share/syslinux里。

[root@hello ~]# cp -a /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/

四、复制镜像之安装和配置Apache HTTP

1.安装HTTP

[root@hello ~]# yum install -y httpd
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
软件包 httpd-2.4.6-93.el7.centos.x86_64 已安装并且是最新版本
无须任何处理
[root@hello ~]#

2.启动服务

[root@hello ~]#  systemctl restart httpd
[root@hello ~]#  systemctl enable httpd

3.复制镜像文件

[root@hello ~]# mkdir /var/www/html/inst #创建储存点
[root@hello ~]# cp -r /mnt/cdrom/* /var/www/html/inst/ #拷贝镜像文件

五、拷贝和配置内核文件

1.获取和配置default

①、获取

[root@hello ~]# mkdir /var/lib/tftpboot/pxelinux.cfg #创建pxelinux.cfg文件夹
[root@hello ~]# cp /mnt/cdrom/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default 3 #获取isolinux.cfg文件

②、配置default文件

default vesamenu.c32
timeout 600
display boot.msg
menu background splash.png
menu title CentOS 7
label linuxmenu label ^Install or upgrade an PXE systemmenu defaultkernel vmlinuzappend initrd=initrd.img  ks=http://192.168.8.78/ks.cfg (由前面设置的地址而定)
menu end

2.拷贝内核文件

[root@hello ~]# cp /mnt/cdrom/images/pxeboot/{initrd.img,vmlinuz} /var/lib/tftpboot/
[root@hello ~]# cp /mnt/cdrom/isolinux/{boot.msg,vesamenu.c32,splash.jpg} /var/lib/tftpboot/

六、获取和配置ks.cfg文件

1.拷贝ks.cfg文件,顺便把权限改了

[root@hello ~]# cp ~/anaconda-ks.cfg /var/www/html/ks.cfg
[root@hello ~]# chmod -R 777 /var/www/html/ks.cfg

2.配置ks.cfg文件

注:autopart命令不能和part/partition, raid, volgroup 或者 logvol 命令存在与同一kickstart文件里。

install #默认安装方式
url --url=http://192.168.8.78/inst/ #指明yum源路径,网络安装
keyboard --vckeymap=us --xlayouts='us'  #键盘布局,必填项,--vckeymap指定键盘模式,--xlayouts指定X布局
lang en_US.UTF-8 --addsupport=zh_CN.UTF-8 #系统默认语言US英文,--addsupport添加附加CN中文支持
firewall --disabled #防火墙,关闭/enable为打开
network --onboot yes --device ens33 --bootproto dhcp  --noipv6 #网络配置 --onboot 是否在引导时启用设备(是) --device 指定要配置的设备(ens33) --bootproto 获取IP的方式(dhcp自动获取) --noipv6 禁用IPv6
auth --enableshadow --passalgo=sha512 #--enableshadow 影子密码 --passalgo=sha512 SHA-512哈希算法
rootpw --iscrypted #root用户密码 --iscrypted 使用影子密码$6$eiTil1AiBvhGu1sK$dJ19uOalO48CCFsRI2Im4xC4DTIWazF7bXZuDu0GoiCOzvY9y9ku5llW4X.gR4tplBENgjtgS5utSnOyUCnVi.
reboot #安装好后重启
timezone Asia/Shanghai #时区,中国上海
selinux --disabled #selinux 关闭/enable为启动
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"  #bios引导分区 --location 指定引导记录写入位置 --append 指定内核参数
clearpart --all #清理所有的磁盘分区
part biosboot --fstype=biosboot --size=1
part /boot --fstype=ext4 --asprimary --size=512
part swap --size=2048
part pv.01 --size 1 --grow #--grow 让逻辑卷使用所有可用空间
volgroup vg0  --reserved-percent=1 pv.01
logvol / --fstype=ext4 --name=root --vgname=vg0  --percent=99
repo --name="CentOS-7" --baseurl=http://192.168.8.78/inst/ --cost=100 #配置yum源
text #我们是基于字符串界面安装,基于光盘就是cdrom
zerombr #全自动安装,没有人机交互
%packages #自定义安装软件包(适用于最小化安装)
@^minimal
@core
%end
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
"/var/www/html/ks.cfg" 26L, 877C                                       7,1          全部

3.检验ks.cfg文件

[root@hello ~]# ksvalidator /var/www/html/ks.cfg

一切准备就绪之后,我们就可以创建一个新的虚拟机测试一下

ps:不需要选择光盘。


接下来它就开始了自己安装

看到这个界面,我们就已经安装成功了。

Linux系统自动化安装(二)相关推荐

  1. 案例详解-如何在 Linux 系统中安装和使用 7zip 以及 7zip的脚本编程使用教程(非p7zip,而是官方版本7zip for linux)附deb包下载链接

    如何在 Linux 系统中安装和使用 7zip 李俊才(jcLee95) 的个人博客 邮箱 :291148484@163.com CSDN 主页:https://blog.csdn.net/qq_28 ...

  2. Kili Linux系统的安装及组件环境配置

    Kili Linux攻防系统介绍: Kali Linux是一个基于Debian的Linux发行版,包含很多安全和取证方面的相关工具.它主要被设计用于数字取证和渗透测试.KaliLinux预装了许多渗透 ...

  3. Redis进阶实践之二如何在Linux系统上安装安装Redis

    2019独角兽企业重金招聘Python工程师标准>>> Redis进阶实践之二如何在Linux系统上安装安装Redis 一.引言 上一篇文章写了"如何安装VMware Pr ...

  4. windows配置gitlab秘钥并测试_你了解多少Linux系统GitLab安装与环境配置?

    Linux系统GitLab安装与环境配置 注意:虚拟机的内存至少2G以上 一. 从GitLab官网获取安装方法和步骤: https://about.gitlab.com/installation/#c ...

  5. 【Ubuntu】Linux系统( ubuntu )安装方案

    [Ubuntu]Linux系统( ubuntu )安装方案 1.光驱安装 这种方法安装比较简便,但linux发行版升级频繁,市场上很难买到最新的版本,而且许多电脑并没有光驱.如果用这种方法安装,安装的 ...

  6. Linux系统如何安装VMware(虚拟机)

    Linux系统如何安装VMware(虚拟机) 一.软件下载 官网下载安装包: https://my.vmware.com/cn/web/vmware/info/slug/desktop_end_use ...

  7. linux中ftp的工作原理,Linux系统学习 十二、VSFTP服务—简介与原理

    1.简介与原理 互联网诞生之初就存在三大服务:WWW.FTP.邮件 FTP主要针对企业级,可以设置权限,对不同等级的资料针对不同权限人员显示. 但是像网盘这样的基本没有权限划分. 简介: FTP(Fi ...

  8. qt-sdk-linux,在linux系统上安装qt-sdk步骤.doc

    在linux系统上安装qt-sdk步骤 在Linux系统上使用SDK安装Qt软件 在Linux上使用SDK安Qt是比较简单的,按照下面的安装步骤提示,一步一步下来即可完成,但是其中有些要注意的地方.下 ...

  9. jemter在linux上怎么安装_【JMeter之一】在linux系统下安装jmeter

    Apache JMeter是Apache组织开发的基于Java的压力测试工具,因此首先需要安装的是JDK 目前JMeter3.0需要的在JDK1.7及以上版本运行这是需要注意的一点 一.下载JDK 下 ...

最新文章

  1. OSPF HELLO数据包
  2. nodejs之express -- 1
  3. 在linux+nginx+mysql+php环境下安装 phpmyadmin
  4. Ubuntu GNOME 15.10升级16.4LTS
  5. java两个长度不同数组_两组数组,长度不一样,如果其中一个数组的值在另一个中不存在,则不符合要求.怎么算?...
  6. CRNN+CTC (基于CTPN 的end-to-end OCR)
  7. matlab 频散曲线,Matlab绘制频散曲线程序代码
  8. java 数字转换人民币大写
  9. ps计算机设置,不仅要懂PS 浅谈修图电脑配置(基础篇)
  10. 网管系统测试学习——传输网下一代综合网管系统测试
  11. 我与学霸的距离计算机,你与学霸的距离,可能就差本笔记
  12. 行走的“摄影神器”三星Galaxy S21!五一出游必备
  13. android sqlite动态创建表,QT下如何实现SQLite动态创建表
  14. C++ boost 解析 Json
  15. ncm 汇集 matlab,ncm-solutions 压缩包中的文件主要是基于matlab的数值计算以及分析功能学习的很好的例程 266万源代码下载- www.pudn.com...
  16. Apache Zeppelin主要界面和基本操作
  17. NOI试题 (题目+答案)1.编程基础之输入输出
  18. 琢石成器――windows环境下32位汇编语言程序设计(第三版)笔记
  19. 互联网史-chinaren与校内
  20. 富爸爸,穷爸爸读后的一些认知

热门文章

  1. Anaconda or Miniconda windows下 cmd命令行模式创建、激活、关闭、删除虚拟环境方法步骤
  2. 【蓝天准系统 + 970M + WIN10】此nvidia驱动程序与此windows不兼容
  3. 质量管理之代码的圈复杂度
  4. 【它山之玉】博士三年发表论文回顾—科学网马臻
  5. 关于计算机重新启动处于挂起状态的问题解决
  6. Spring框架学习(四):聊一聊xml配置和Java配置
  7. web前端-javascript常用的document对象使用详解
  8. Flutter 生成 Icon 提示徽标 Widget
  9. 倾斜文档扫描与ocr识别(opencv,坐标变换)
  10. JavaScript实现简单的双向数据绑定(Ember、Angular、Vue)