首页 > 其他分享 >pxe.sh_替换/var/www/html/ks/中ks.cfg

pxe.sh_替换/var/www/html/ks/中ks.cfg

时间:2024-08-19 20:18:09浏览次数:12  
标签:www cfg cdromdir tftpdir ks html var

#!/bin/bash
osversion=kylin_HPC
cdromdir="/mnt"
tftpdir="/var/lib/tftpboot"
dhcpNet="168.7.10.0"
netMask="255.255.255.0"
dhcpRange="168.7.10.100 168.7.10.200"
nextServer="168.7.10.70"
isoimage="/root/*.iso"
httpServer=$nextServer

#-----------------------------------------------------------
function v_base(){
iptables -F || echo ""
systemctl stop firewalld
systemctl disable firewalld
sed -i '/SELINUX=/ s#enforcing#disabled#g' /etc/selinux/config
setenforce 0 || echo ""
mount $isoimage $cdromdir || echo ""
cp $cdromdir/EFI/BOOT/grubaa64.efi  $tftpdir
cp $cdromdir/EFI/BOOT/grub.cfg  $tftpdir
cp $cdromdir/images/pxeboot/* $tftpdir
cd /var/www/html || mkdir -p /var/www/html/ 
cp -r $cdromdir/* /var/www/html/
chmod 755 -R /var/www/html/
cat>/etc/yum.repos.d/${osversion}_http.repo<<EOF
[${osversion}_http]
name=${osversion}_http
baseurl=http://$nextServer
enabled=1
gpgcheck=0
EOF
yum --disablerepo="*" --enablerepo="${osversion}_http" install -y net-tools vim vsftpd tftp tftp-server dhcp 
}

function v_dhcp(){
#-- dhcp
cat>/etc/dhcp/dhcpd.conf<<EOF
subnet $dhcpNet netmask $netMask {
        range $dhcpRange;
        option subnet-mask $netMask;
        default-lease-time 21600;
        max-lease-time 43200;
        next-server $nextServer;
        filename "grubaa64.efi";
}
EOF
}

function v_tftp(){
#-- tftp
sed -i '/disable/ s#yes#no#g' /etc/xinetd.d/tftp || echo ""

systemctl start dhcpd && systemctl enable dhcpd
systemctl start tftp && systemctl enable tftp
systemctl start httpd && systemctl enable httpd

cat>$tftpdir/grub.cfg<<'EOF'
set default="1"

function load_video {
  if [ x$feature_all_video_module = xy ]; then
    insmod all_video
  else
    insmod efi_gop
    insmod efi_uga
    insmod ieee1275_fb
    insmod vbe
    insmod vga
    insmod video_bochs
    insmod video_cirrus
  fi
}

load_video
set gfxpayload=keep
insmod gzio
insmod part_gpt
insmod ext2

set timeout=3
### END /etc/grub.d/00_header ###
EOF

cat>>$tftpdir/grub.cfg<<EOF

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Install ${osversion}' --class red --class gnu-linux --class gnu --class os {
set root=(tftp,$nextServer)
 linux  /vmlinuz ro inst.geoloc=0 console=ttyAMA0 console=tty0 rd.iscsi.waitnet=0 inst.ks=http://$httpServer/ks/openEuler-ks.cfg
 initrd /initrd.img
}
EOF
}

mkdir -p /var/www/html/ks/

function v_ks(){
cat>/var/www/html/ks/${osversion}-ks.cfg<<EOF

#version=DEVEL
# Use graphical install
graphical

#---------------------------------------------------------
# Keyboard layouts
keyboard --xlayouts='us','cn (altgr-pinyin)'

#---------------------------------------------------------
# System language
lang en_US.UTF-8

#---------------------------------------------------------
# Use CDROM installation media
# 安装镜像
url --url=http://$httpServer

#---------------------------------------------------------
%packages
@^minimal-environment
@development
%end

#---------------------------------------------------------
# System timezone
timezone Asia/Shanghai --utc

#---------------------------------------------------------
# Network information
network  --hostname=localhost.localdomain
network  --bootproto=dhcp --device=enp4s0 --onboot=on  --ipv6=auto --activate
#network  --bootproto=static --device=enp4s0 --gateway=168.7.10.1 --ip=168.7.10.105 --nameserver=114.114.114.114 --netmask=255.255.255.0 --onboot=off --ipv6=off --activate

# Run the Setup Agent on first boot
firstboot --enable

# System services
services --disabled="chronyd"

# 在那块磁盘安装OS
ignoredisk --only-use=vda

#---------------------------------------------------------
# Partition clearing information
clearpart --all --initlabel

#---------------------------------------------------------
# Disk partitioning information
# 分区表
part swap --fstype="swap" --ondisk=vda --size=10240
part / --fstype="ext4" --ondisk=vda --size=174078
part /boot/efi --fstype="efi" --ondisk=vda --size=5120 --fsoptions="umask=0077,shortname=winnt"
part /tmp --fstype="ext4" --ondisk=vda --size=51200
part /boot --fstype="ext4" --ondisk=vda --size=5120
#---------------------------------------------------------
# Root password
rootpw --iscrypted $6$XpbpyyInoUzlkmbP$vCHN5jPj18a2loOIV8tZhr19xW08R7K8lpNKqU7/WhhyGo0I7E5zK01JWGTSOxDJ5Kkl7zAgF8Zdi9k5yv1M51
#---------------------------------------------------------
%addon com_redhat_kdump --disable --reserve-mb='128'
%end

%anaconda
pwpolicy root --minlen=8 --minquality=1 --strict --nochanges --notempty
pwpolicy user --minlen=8 --minquality=1 --strict --nochanges --emptyok
pwpolicy luks --minlen=8 --minquality=1 --strict --nochanges --notempty
%end
#reboot
EOF
}

############################
v_base
v_dhcp
v_tftp
v_ks
chmod 777 -R /var/lib/tftpboot/
chmod 777 -R /var/www/html/ks

systemctl restart tftp dhcpd httpd

systemctl enable tftp dhcpd httpd

 

标签:www,cfg,cdromdir,tftpdir,ks,html,var
From: https://www.cnblogs.com/vmsysjack/p/18368030

相关文章

  • 如何利用sockserver模块编程实现客户端并发
    前面用sock模块写的服务端和客户端,存在一个大问题,就是当运行多个客户端的时候,必须等一个客户端运行结束,另一个客户端才能实现与服务端的交流,这显然不符合现实中的需求。有没有什么办法解决这个问题呢?有人说没有,屁话。当然有,这就需要用到一个sockserver的模块,用定义类继承类的方式......
  • 迪杰斯特拉(Dijkstra)算法(C/C++)
    迪杰斯特拉(Dijkstra)算法是一种用于在加权图中找到单个源点到所有其他顶点的最短路径的算法。它是由荷兰计算机科学家艾兹格·迪科斯彻(EdsgerDijkstra)在1956年提出的。Dijkstra算法适用于处理带有非负权重的图。迪杰斯特拉算法主要特点是从起始点开始,采用贪心算法,每次遍历到始......
  • 深入了解SOCKS5代理:全面指南
    在现代数字世界中,互联网隐私和性能至关重要。SOCKS5代理服务器因其独特的功能和灵活性,成为提高网络安全和性能的热门选择。本文旨在深入探讨SOCKS5代理服务的工作原理、优势及其在实际应用中的表现,帮助您快速了解如何最大限度地利用这一工具。如何理解SOCKS5代理服务器SOCKS......
  • 放弃fastjson拥抱jackson
    放弃fastjson拥抱jackson背景功能强大好用;不亏是国人更懂国人;但是安全漏洞频发;生产项目总是告警勒令修改放弃使用。坑爹玩意fastjson漏洞太多直接搞了fastjson2;虽然大部分兼容远古项目还需要升级谁敢动呀。动了引发一些未知BUG那岂不是背锅侠(玩笑该干还得干挣得就是......
  • 使用SSMS操作AdventureWorks 示例数据库
    简介AdventureWorks示例数据库,官方文档:https://learn.microsoft.com/zh-cn/sql/samples/adventureworks-install-configure?view=sql-server-ver16&tabs=ssms 下载备份文件OLTP数据适用于大多数典型的联机事务处理工作负载。数据仓库(DW)数据适用于数据仓库工作负载。轻......
  • 同一个ip:port上同时开启socks5和http代理服务器
    代码如下所示:packagemainimport( "bufio" "errors" "flag" "fmt" "io" "log" "net" "net/http" "strconv" "sync")funcmain(){ addr:=flag.String(&......
  • SciTech-Mathematics-Probability+Statistics-Matlab(Mathworks Inc.): MATLAB官方文
    SciTech-Mathematics-Probability+StatisticsProbabilityDistributions:https://ww2.mathworks.cn/help/stats/probability-distributions-1.html?s_tid=CRUX_lftnavWorkingwithProbabilityDistributionsProbabilitydistributionsaretheoreticaldistributionsbas......
  • 以node / link文件表征的道路网络-----dijkstra算法yyds-----基于南京公路公开数据做
    前文已经基于公开数据,获得了南京的全域高速公路的路网数据,这些以node/link文件表征的道路网络不仅延续了osm地图中所包含的经纬度、名称、容量等信息,还包含了一个重要的道路等级字段“link_type_name”。交通部门一般以高速公路、国省干道、城市道路、乡道农路作为区分......
  • 使用 AWS EKS 部署 Easysearch
    随着企业对数据搜索和分析需求的增加,高效的搜索引擎解决方案变得越来越重要。Easysearch作为一款强大的企业级搜索引擎,可以帮助企业快速构建高性能、可扩展的数据检索系统。在云计算的背景下,使用容器化技术来部署和管理这些解决方案已经成为主流选择,而AmazonElasticKubernetes......
  • 龙之谷:发布网www.SouFu6.cn,新开龙之谷来袭!67
           龙之谷:发布网www.SouFu6.cn,新开龙之谷来袭!43       私服SF有着许多独特的品质,使其与正版游戏区别开来。首先,私服SF通常会提供大量的游戏元素和功能,比如新增的职业、装备、地图等,让玩家能够体验到更丰富的游戏内容。其次,私服SF还通常会调整......