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

# Author:丁丁历险(Jacob)

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

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

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

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

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

#!/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
时间: 2024-10-16 23:29:10

shell脚本:不登陆KVM虚拟机,修改虚拟机网卡IP地址的相关文章

Shell脚本 使用sed流编辑器一键修改CentOS网卡IP地址

在linux系统中,有时需要修改网卡的IP地址.很多情况下,我们对linux系统的维护都是通过远程(SSH)管理的,这样在IP地址更改后,我们和服务器之间的连接将会断开. 有人可能会说我们可以再次连接修改后的IP地址,因为linux的IP地址在配置文件中更改后可能需要我们重启网卡,新的IP地址才会生效. 而我们此时和服务器之间是断开的,这就需要我们在本地(可能是机房里)登录系统,重启网卡.显然这样效率很低下,我列举一种用脚本解决上述问题的措施:比如希望把网卡eth3的IP地址修改为192.168

shell 脚本创建虚拟机 并配置网卡ip地址(两个脚本)

#######################脚本1:创建虚拟机kvm##########################!/bin/bashqcow2_dir=/var/lib/libvirt/imagesread -p "请输入虚拟机号码:" num #主机号if [ $num -lt 9 ];thennum=0$num ##主机号fiif [ -z "$num" ];thenecho "错误输出"exit 1fikvm_name=host$

shell脚本:查看KVM虚拟机中的网卡信息(不需要进入启动或进入虚拟机)

# Author:丁丁历险(Jacob) # 该脚本使用guestmount工具,可以将虚拟机的磁盘系统挂载到真实机文件系统中 # Centos7.2中安装libguestfs-tools-c可以获得guestmount工具 # 虚拟机可以启动或者不启动都不影响该脚本的使用 # 将虚拟机磁盘文件挂载到文件系统后,就可以直接读取磁盘文件中的网卡配置文件中的数据该脚本使用guestmount工具,可以将虚拟机的磁盘系统挂载到真实机文件系统中 #!/bin/bash #Author:丁丁历险(Jaco

Microsoft Azure系列之十 为Azure虚拟机配置静态内部 IP 地址 (DIP)

Azure虚拟机的默认内部IP地址由DHCP分配,并且当VM关闭,资源收回之后如果再次启动该VM,则这台VM的内部IP地址可能会发生变化,这对于迁移到Azure的本地系统而言是一个比较大的挑战,另外,对于一些向其他虚拟机提供服务的系统而言则更为严峻,比如DNS服务器,如果重新启动之后其内部IP地址发生变化的话,无疑会对整个系统造成非常大的影响. 借助最新的 PowerShell 版本,您现在能够定义和配置特定的内部 IP 地址,该地址可以静态分配给部署在虚拟网络中的 IaaS 虚拟机.使用此功能

【原创】如何设置Virtual Box虚拟机CentOS7为静态IP地址

如何设置Virtual Box虚拟机CentOS7为静态IP地址 最近要搭建一个Kubernetes集群,需要设置虚拟机为静态IP地址不变.翻了一些资料,参差不齐,有些也比较过时了.自己实测总结了一下,整理如下,供有需要的同学参考. 1.虚拟机设置,"网卡1"选择"桥接网卡"  2.ip addr查看虚拟机网卡地址 3.修改网卡配置文件 /etc/sysconfig/network-scripts/ifcfg-enp0s3 此处我虚拟机网卡是enp0s3,其它虚拟机

修改Windows系统IP地址的快捷脚本

修改Windows系统IP地址的快捷脚本,以后再也不用为来回改地址发愁了!!! @echo off cls color 0A Echo ******************************************************************************* Echo           正在修改IP地址为174.16.4.125,请耐心等待---- Echo **************************************************

Azure 中国篇—(4)为 Azure虚拟机配置静态内部 IP 地址 (DIP)

在大多数情况下,你不需要为虚拟机指定静态内部 IP 地址 (DIP).虚拟网络中的 VM 会自动接收你指定的范围内的内部 IP 地址.但在某些情况下,为特定 VM 指定静态 IP 地址是有意义的.例如,如果你的 VM 要运行 DNS 或者将作为域控制器.或者,如果你有一个在某一时刻打算停止/取消设置的 VM,但希望在重新设置它时保留其 DIP.静态 DIP 在 VM 中保持不变,即使在停止/取消设置状态下也是如此.你可以在创建 VM 时使用 PowerShell 指定静态 DIP,也可以更新现有

在android程序中怎么执行ifconfig命令来修改android 的ip地址,

1.引入: import android.provider.Settings; import android.content.ContentResolver; ps:在Setting.System中有以下标志 WIFI_USE_STATIC_IP WIFI_STATIC_IP WIFI_STATIC_NETMASK WIFI_STATIC_GATEWAY WIFI_STATIC_DNS1 and WIFI_STATIC_DNS2 2.在AndroidManifest中加入<uses-permis

写一个交互脚本,实现能够定义主机名及IP地址

写一个交互脚本,实现能够定义主机名及IP地址 脚本内容↓ [[email protected] scripts]# cat xiugaizhuji.sh #!/bin/bash ############################################################# # File Name: jiaohu.sh # Version: V1.0 # Author: clsn # Organization: http://blog.znix.top # Create