[提供可行性脚本] RHEL 7/CentOS 7/Fedora28 重命名网卡名称
实验说明:
在许多自动化任务中,脚本往往是通过读取配置文件来获取信息的,红帽系的系统自升级之后(CentOS7/RHEL7),网卡命名采用“一致性网络设备接口”的命名方法,导致不同设备的不同网卡名称各不相同。为了统一网卡名称,方便配置文件的书写,不得不修改网卡名称。
实验环境:
宿主机系统 :Fedora 28 WorkStation
虚拟机管理器 :Virtual-Box 5.2.16
虚拟机配置 :系统:CentOS 7.2 1511 (minimal)
网络:enp0s3 Host-Only 192.168.56.0/24
enp0s8 Host-Only 192.168.56.0/24
enp0s9 Host-Only 192.168.56.0/24
enp0s10 Host-Only 192.168.56.0/24
实验步骤:
查看当前网卡设备数目及名称
[root@localhost ~]$ ls -l /etc/sysconfig/network-scripts | awk '/ifcfg-e/ {print $9}'
ifcfg-enp0s10
ifcfg-enp0s3
ifcfg-enp0s8
ifcfg-enp0s9备份系统默认网卡配置文件
[root@localhost ~]$ cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]$ nic_list=`ls -l /etc/sysconfig/network-scripts|awk '/ifcfg-e/ {print $9}'`
[root@localhost network-scripts]$ for nic_name in $nic_list; do
> cp $nic_name $nic_name.bak; done重命名网卡配置文件名
[root@localhost network-scripts]$ i=0
[root@localhost network-scripts]$ nic_list=`ls -l /etc/sysconfig/network-scripts|awk '/ifcfg-e/ {print $9}'`
[root@localhost network-scripts]$ for nic_name in $nic_list; do
> mv $nic_name ifcfg-eth${i};
> i=$(expr $i + 1);
> done修改网卡配置文件
[root@localhost network-scripts]$ for new_nic_name in $new_nic_list; do
> name=$(echo $new_nic_name|cut -b 7-);
> sed -i "s/NAME=.*/NAME=$name/g" $new_nic_name;
> sed -i "s/DEVICE=.*/DEVICE=$name/g" $new_nic_name;
> sed -i 's/ONBOOT=no/ONBOOT=yes/g' $new_nic_name
> done修改/etc/default/grub文件,禁用biosdevname程序
[root@localhost network-scripts]$ sed -i '/GRUB_CMDLINE_LINUX=/d' /etc/default/grub
[root@localhost network-scripts]$ echo 'GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/root \
> rd.lvm.lv=centos/swap crashkernel=auto \
> net.ifnames=0 biosdevname=0 rhgb quiet"' \
> >> /etc/default/grub重新生成GRUB配置并更新内核参数
[root@localhost network-scripts]$ grub2-mkconfig -o /boot/grub2/grub.cfg
重启
[root@localhost ~]$ reboot now
查询网卡信息
[root@localhost ~]$ ip a | grep eth[0-9]
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
inet 192.168.56.114/24 brd 192.168.56.255 scope global dynamic eth0
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
inet 192.168.56.115/24 brd 192.168.56.255 scope global dynamic eth1
4: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
inet 192.168.56.116/24 brd 192.168.56.255 scope global dynamic eth2
5: eth3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
inet 192.168.56.117/24 brd 192.168.56.255 scope global dynamic eth3
PS:CentOS7 修改默认网卡名称脚本 (change_default_nic_name.sh),直接拷贝就可使用。
#!/usr/bin/bash
#this script will change default ifcfg-enoxxxx/ifcfg-enpxxxx to ifcfg-ethx ls -l /etc/sysconfig/network-scripts|awk '/ifcfg-eno[0-9]*/ {print $9}' > default_nic_name.txt
i=0
cat default_nic_name.txt| while read line
do
cd /etc/sysconfig/network-scripts
name=$(echo $line|cut -b 7-)
cp $line ${line}.bak
sed -i "s/$name/eth${i}/g" $line
sed -i 's/ONBOOT=no/ONBOOT=yes/g' $line
mv $line ifcfg-eth${i}
i=$(expr $i + 1) done sed -i '/GRUB_CMDLINE_LINUX=/d' /etc/default/grub
echo 'GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/root rd.lvm.lv=centos/swap crashkernel=auto net.ifnames=0 biosdevname=0 rhgb quiet"' >> /etc/default/grub
grub2-mkconfig -o /boot/grub2/grub.cfg
reboot
[提供可行性脚本] RHEL 7/CentOS 7/Fedora28 重命名网卡名称的更多相关文章
- [提供可行性脚本] RHEL/CentOS 7 多节点SSH免密登陆
实验说明: 在自动化部署时,会经常SSH别的机器去操作,然而每次的密码认证却很令人烦躁,尤其是很长的密码,因此SSH免密登陆就显得必不可少: 在机器数目很多的时候,使用更过的往往是Ansible分发并 ...
- Linux CentOS删除或重命名文件夹和文件的办法
Linux.CentOS操作系统下如何删除和重命名文件夹呢?办法如下: 一.Linux.CentOS下重命名文件和文件夹 mv:move 用移动文件命令就可以了,因为linux系统没有专门的重命名命令 ...
- 配置 CentOS 7 的网络,及重命名网卡名
Centos 安装时应配置网络,如果当时没配置好,则装完系统后, 也可通过修改配置文件并重启网络服务进行配置. 说明:CentOS 7.0默认安装好之后是没有自动开启网络连接的! cd /etc/sy ...
- CentOS 7命令行修改网卡名称
在CentOS学习中,配置多个网卡,配置独立的IP地址,为网卡设置新的名称等,已经是必备技能,经小编亲测,以下方法能修改系统的网卡名称,操作步骤和截图一并和小伙伴们分享, 希望对大家的学习和使用有所帮 ...
- 如何在RHEL7或CentOS 7系统下修改网卡名称(亲测有效~!)
亲测有效的更改RHEL7或CentOS 7的网卡名称的方法, 按照以下4步来操作就可以实现! Step 1 :网卡配置文件名称重命名为eth0[root@localhost ~]# ifconfige ...
- [图文][提供可行性脚本] CentOS 7 Fencing+Pacemaker三节点搭建高可用集群
实验说明: 实验环境: 宿主机系统 :Fedora 28 WorkStation 虚拟机管理器 :Virt-Manager 1.5.1 虚拟机配置 :ha1 CentOS 7.2 1511 ...
- [图文]RHEL 7/CentOS 7/Fedora28 联网初始化
实验说明: 入门Linux,一般会遇到以下几个问题: 从哪里获取LInux镜像? 如何通过镜像文件安装Linux系统? 安装实体机还是虚拟机? 安装完系统如何配置网络? 虚拟机的网络配置与实体机有何不 ...
- windows聚焦图片文件重命名bash脚本
win10聚焦路径为: %localappdata%\Packages\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy\LocalStat ...
- CentOS 7修改网卡名称
CentOS 7 修改网卡名为eth0 标签: linux 笔者Q:972581034 交流群:605799367.有任何疑问可与笔者或加群交流 CentOS7的网卡名称太长,这不符合我们的使用习惯, ...
随机推荐
- ==和equals方法
Java程序中测试两个变量时否相等有两种方法: == 和 equals. ==判断 当使用==来判断两个变量是否相等时,如果两个变量是基本类型变量,且都是数字类型(不一定要求数据类型严格相同),则只要 ...
- atcoder square869120Contest#3 F 寿司
省选round1的时候dalao的推荐——atcoder的题目码量不大,但很巧妙,题目比较难找,挂个链冷静一下:http://s8pc-3.contest.atcoder.jp/tasks/s8pc_ ...
- 不可见类有抽象父类,spring配置子类bean,注入父类,aop就可以切父类的方法
public class TestBeanChild { int b = 1; public TestBean createDefault() { return new TestBeanDefault ...
- dot watch
dot watch+vs code提升asp.net core开发效率 在园子中,已经又前辈介绍过dotnet watch的用法,但是是基于asp.net core 1.0的较老版本来讲解的,在asp ...
- Core 事件总
NET Core 事件总线,分布式事务解决方案:CAP 背景 相信前面几篇关于微服务的文章也介绍了那么多了,在构建微服务的过程中确实需要这么一个东西,即便不是在构建微服务,那么在构建分布式应用的过程中 ...
- Unity3d Attribute 总结(转)
举两个例子,在变量上使用[SerializeFiled]属性,可以强制让变量进行序列化,可以在Unity的Editor上进行赋值. 在Class上使用[RequireComponent]属性,就会 ...
- jdk1.6与jdk1.7list集合排序区别与算法
源码分析: 在Collections.sort中: public static <T extends Comparable<? super T>> void sort(L ...
- C# 指定WebBrowser 的 User Agent 版本
今天用WebBrowser 打开网页,本机ie是ie9 可是WebBrowser 显示的效果明显不是ie9 ,百度查资料才知道,其实是因为直接用IE跟使用WebBrowser 运行的是不同的User ...
- Linux环境 Java内存快速查看
最近生产环境遇到内存老是占用很大的情况,16G的内存Free的内存只剩100多M,仿佛一颗定时炸弹一般,说不定就服务Down了.于是开始网上不断的找查看内存使用的方法.现学现卖,以下通过一个例子来演示 ...
- AngularJS(五):表单及输入验证
本文也同步发表在我的公众号“我的天空” 表单基础 表单是HTML中很重要的一个部分,基本上我们的信息录入都依靠表单,接下来我们学习如何在AngularJS中使用表单,首先看以下示例代码: <bo ...