PXE装机之自动设置网卡名称、主机名、配置网卡bond。

之前使用pxe装机时,只是单纯的安装系统,安装完系统后还要使用显示器对每台设备进行网卡名称更改、主机名更改、配置网卡bond等等,要是单纯的一台机器还可以,如果机器的数量多了起来,那么这个工作也变得重复性非常高了,对于重复性高的工作,如果不简化流程,是很浪费时间的。

仅在Dell服务器和Centos7.6系统上测试成功,其他设备和系统未测试。

为了节省这个时间,我在pxe的中做了一些手脚:通过脚本进行初始化配置。

1.PXE-server部分

a.修改ks文件

首先,在KS文件中的%post代码区,添加如下参数:

echo "localhost.localdomain" > /etc/hostname
cd /home
wget http://172.16.0.100:88/test/message.txt
wget http://172.16.0.100:88/test/auto-by.sh
chmod 777 auto-by.sh
sh auto-by.sh

b.在pxe的html目录下创建一个test的文件夹,然后将下面两个脚本放进去。

auto-by.sh

#!/bin/bash
systemctl stop firewalld.service
systemctl disable firewalld.service
systemctl stop NetworkManager
systemctl disable NetworkManager


#将所有网卡名称复制到文本中
ip a |awk '{print $2}'|grep "em"|awk -F ':' '{print $1}' > netname.txt
#赋予变量

net1=`awk -F ' ' '{print $1}' netname.txt | awk 'NR==1'`
mac1=`ip a |grep "ether" | awk '{print $2}'|awk 'NR==1'`

net2=`awk -F ' ' '{print $1}' netname.txt | awk 'NR==2'`
mac2=`ip a |grep "ether" | awk '{print $2}'|awk 'NR==2'`

net3=`awk -F ' ' '{print $1}' netname.txt | awk 'NR==3'`
mac3=`ip a |grep "ether" | awk '{print $2}'|awk 'NR==3'`

net4=`awk -F ' ' '{print $1}' netname.txt | awk 'NR==4'`
mac4=`ip a |grep "ether" | awk '{print $2}'|awk 'NR==4'`

echo -ne "
$net1,$mac1
$net2,$mac2
$net3,$mac3
$net4,$mac4
" >> n-m.txt

#依次校准网卡的名称及mac地址
m1=`cat n-m.txt |grep 'em1'|awk -F ',' '{print $2}'`
m2=`cat n-m.txt |grep 'em2'|awk -F ',' '{print $2}'`
m3=`cat n-m.txt |grep 'em3'|awk -F ',' '{print $2}'`
m4=`cat n-m.txt |grep 'em4'|awk -F ',' '{print $2}'`

#根据SN获取网卡配置信息
SN=`dmidecode -s system-serial-number 2>/dev/null | awk "/^[^#]/ { print $1 }"`
NAME=`cat /home/message.txt |grep $SN |awk -F ',' '{print $2}'`
IP=`cat /home/message.txt |grep $SN |awk -F ',' '{print $3}'`
MASK=`cat /home/message.txt |grep $SN |awk -F ',' '{print $4}'`
GATEWAY=`cat /home/message.txt |grep $SN |awk -F ',' '{print $5}'`

#将校准过的mac地址填写到需要填写mac地址的文件中
#写到网卡名与mac地址绑定的规则文件中

cat > /etc/udev/rules.d/70-persistent-net.rules <<EOF
SUBSYSTEM=="net",ACTION=="add",DRIVERS=="?*",ATTR{address}=="$m1",ATTR{type}=="1",KERNEL=="eth*",NAME="eth0"
SUBSYSTEM=="net",ACTION=="add",DRIVERS=="?*",ATTR{address}=="$m2",ATTR{type}=="1",KERNEL=="eth*",NAME="eth1"
SUBSYSTEM=="net",ACTION=="add",DRIVERS=="?*",ATTR{address}=="$m3",ATTR{type}=="1",KERNEL=="eth*",NAME="eth2"
SUBSYSTEM=="net",ACTION=="add",DRIVERS=="?*",ATTR{address}=="$m4",ATTR{type}=="1",KERNEL=="eth*",NAME="eth3"
EOF

#写到网卡配置文件中
cd /etc/sysconfig/network-scripts/
#更名
mv ifcfg-em1 ifcfg-eth0
mv ifcfg-em2 ifcfg-eth1
mv ifcfg-em3 ifcfg-eth2
mv ifcfg-em4 ifcfg-eth3
sed -i 's/em1/eth0/g' ifcfg-eth0
sed -i 's/em2/eth1/g' ifcfg-eth1
sed -i 's/em3/eth2/g' ifcfg-eth2
sed -i 's/em4/eth3/g' ifcfg-eth3

mv ifcfg-eth0{,.bak}
mv ifcfg-eth1{,.bak}

echo -ne "TYPE=Ethernet
NAME=eth0
DEVICE=eth0
HWADDR=$m1
ONBOOT=yes
MASTER=bond0
SLAVE=yes
" >> /etc/sysconfig/network-scripts/ifcfg-eth0

echo -ne "TYPE=Ethernet
NAME=eth1
DEVICE=eth1
HWADDR=$m2
ONBOOT=yes
MASTER=bond0
SLAVE=yes
" >> /etc/sysconfig/network-scripts/ifcfg-eth1

echo "HWADDR=$m3" >> /etc/sysconfig/network-scripts/ifcfg-eth2
echo "HWADDR=$m4" >> /etc/sysconfig/network-scripts/ifcfg-eth3

cat > /etc/sysconfig/network-scripts/ifcfg-bond0 <<EOF
DEVICE=bond0
BONDING_OPTS="mode=0 miimon=100"
TYPE=Bond
BONDING_MASTER=yes
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
NAME=bond0
IPADDR=$IP
NETMASK=$MASK
GATEWAY=$GATEWAY
ONBOOT=yes
EOF

modprobe --first-time bonding
######重启网卡####
sed -i 's/ONBOOT=yes/ONBOOT=no/g' ifcfg-eth2

##设置主机名
sed -i 's/localhost.localdomain/'$NAME'/g' /etc/hostname

message.txt

SN,HOSTNAME,IP,MASK,GATEWAY

注释:

#SN==================设备SN
#HOSTNAME==========主机名
#IP===================bond ip地址
#MASK================bond 掩码
#GATEWAY=============bond的网关

2.客户机部分

客户机只需要设置好pxe启动即可。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 228,030评论 6 531
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 98,310评论 3 415
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 175,951评论 0 373
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 62,796评论 1 309
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 71,566评论 6 407
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 55,055评论 1 322
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 43,142评论 3 440
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 42,303评论 0 288
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 48,799评论 1 333
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 40,683评论 3 354
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 42,899评论 1 369
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 38,409评论 5 358
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 44,135评论 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 34,520评论 0 26
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 35,757评论 1 282
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 51,528评论 3 390
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 47,844评论 2 372

推荐阅读更多精彩内容