shell脚本:不登陆KVM虚拟机,修改虚拟机网卡IP地址

简介:

# Author:丁丁历险(Jacob) 

# 该脚本使用 guestmount 工具,Centos7.2 中安装 libguestfs-tools-c 可以获得 guestmount 工具 

# 脚本在不登陆虚拟机的情况下,修改虚拟机的 IP 地址信息 

# 在某些环境下,虚拟机没有 IP 或 IP 地址与真实主机不在一个网段 

# 真实主机在没有 virt-mange 图形的情况下,远程连接虚拟机很麻烦 

# 该脚本可以解决类似的问题


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/bin/bash
#Author:丁丁历险(Jacob)
#该脚本使用guestmount工具,Centos7.2中安装libguestfs-tools-c可以获得guestmount工具
#脚本在不登陆虚拟机的情况下,修改虚拟机的IP地址信息
#在某些环境下,虚拟机没有IP或IP地址与真实主机不在一个网段
#真实主机在没有virt-mange图形的情况下,远程连接虚拟机很麻烦
#该脚本可以解决类似的问题
read  -p  "请输入虚拟机名称:"  name
if  virsh domstate $name| grep  -q running ; then
        echo  "修改虚拟机网卡数据,需要关闭虚拟机"
        virsh destroy $name
fi
mountpoint= "/media/virtimage"
[ ! -d $mountpoint]&&  mkdir  $mountpoint
echo  "请稍后..."
if  mount  grep  -q "$mountpoint"  ; then
        umount  $mountpoint
fi
guestmount  -d $name -i $mountpoint
read  -p  "请输入需要修改的网卡名称:"  dev
read  -p  "请输入IP地址:"  addr
#判断原本网卡配置文件中是否有IP地址,有,就修改该IP,没有,就添加一个新的IP地址
if  grep  -q "IPADDR"   $mountpoint /etc/sysconfig/network-scripts/ifcfg- $dev; then
    sed  -i  "/IPADDR/s/=.*/=$addr/"   $mountpoint /etc/sysconfig/network-scripts/ifcfg- $dev
else
    echo  "IPADDR=$addr"  >>  $mountpoint /etc/sysconfig/network-scripts/ifcfg- $dev
fi
#如果网卡配置文件中有客户配置的IP地址,则脚本提示修改IP完成
awk  -F= - v  x=$addr  '$2==x{print "完成..."}'  $mountpoint /etc/sysconfig/network-scripts/ifcfg- $dev

























本文转自丁丁历险51CTO博客,原文链接:http://blog.51cto.com/manual/1961344  ,如需转载请自行联系原作者

相关文章
|
8月前
|
域名解析 API PHP
VM虚拟机全版本网盘+免费本地网络穿透端口映射实时同步动态家庭IP教程
本文介绍了如何通过网络穿透技术让公网直接访问家庭电脑,充分发挥本地硬件性能。相比第三方服务受限于转发带宽,此方法利用自家宽带实现更高效率。文章详细讲解了端口映射教程,包括不同网络环境(仅光猫、光猫+路由器)下的设置步骤,并提供实时同步动态IP的两种方案:自建服务器或使用三方API接口。最后附上VM虚拟机全版本下载链接,便于用户在穿透后将服务运行于虚拟环境中,提升安全性与适用性。
439 7
|
监控 网络协议 Shell
ip和ip网段攻击拦截系统-绿叶结界防火墙系统shell脚本
这是一个名为“小绿叶技术博客扫段攻击拦截系统”的Bash脚本,用于监控和拦截TCP攻击。通过抓取网络数据包监控可疑IP,并利用iptables和firewalld防火墙规则对这些IP进行拦截。同时,该系统能够查询数据库中的白名单,确保合法IP不受影响。此外,它还具备日志记录功能,以便于后续分析和审计。
269 6
|
KVM 虚拟化
KVM虚拟机的桥接网络
文章主要介绍了KVM虚拟机的NAT和桥接网络类型的工作原理、配置方法以及如何进行网络模式的切换。
624 3
KVM虚拟机的桥接网络
|
KVM 虚拟化
KVM虚拟机的克隆
这篇文章介绍了如何使用KVM虚拟机进行完整克隆和链接克隆,包括手动克隆和使用virt-clone工具克隆的方法,以及如何编写脚本来实现自动化克隆和删除虚拟机。
467 3
KVM虚拟机的克隆
|
KVM 虚拟化
KVM虚拟机的热迁移
这篇文章详细介绍了KVM虚拟机的热迁移过程,包括临时迁移和永久迁移的步骤,以及可能遇到的故障和解决方案。
625 1
KVM虚拟机的热迁移
|
KVM 虚拟化 数据安全/隐私保护
KVM虚拟机安装实战
本文讲述了如何创建并使用VNC连接KVM虚拟机的详细教程,包括安装图解和命令行参数说明。
454 8
|
KVM 虚拟化
KVM虚拟机的冷迁移
这篇文章详细描述了KVM虚拟机的冷迁移过程,包括无依赖环境迁移、有链接克隆虚拟机迁移、多块磁盘迁移的案例,以及可能遇到的错误和解决方案。
540 3
|
3月前
|
Oracle 关系型数据库 虚拟化
在VMware的Win10虚拟机中安装使用ENSP
本文介绍了在Windows 10虚拟机上安装ENSP及相关软件的全过程,包括VirtualBox、WinPcap、Wireshark、VLC和ENSP的安装步骤,并提供图文演示,帮助用户顺利完成配置与测试。
964 134
|
2月前
|
Linux 虚拟化 iOS开发
VMware Remote Console 13.0.1 for macOS, Linux, Windows - vSphere 虚拟机控制台的桌面客户端
VMware Remote Console 13.0.1 for macOS, Linux, Windows - vSphere 虚拟机控制台的桌面客户端
511 0
VMware Remote Console 13.0.1 for macOS, Linux, Windows - vSphere 虚拟机控制台的桌面客户端