# 该指令码使用 guestmount 工具,可以将虚拟机器的磁碟系统挂载到真实机档案系统中
# Centos7.2 中安装 libguestfs-tools-c 可以获得 guestmount 工具
# 虚拟机器可以启动或者不启动都不影响该指令码的使用
# 将虚拟机器磁碟档案挂载到档案系统后,就可以直接读取磁碟档案中的网络卡配置档案中的资料该指令码使用 guestmount 工具,可以将虚拟机器的磁碟系统挂载到真实机档案系统中

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
30
31
32
33
34
35

#!/bin/bash
#该指令码使用 guestmount 工具,可以将虚拟机器的磁碟系统挂载到真实机档案系统中
#Centos7.2 中安装 libguestfs-tools-c 可以获得 guestmount 工具
#虚拟机器可以启动或者不启动都不影响该指令码的使用
#将虚拟机器磁碟档案挂载到档案系统后,就可以直接读取磁碟档案中的网络卡配置档案中的资料
clear
mountpoint=”/wp-content/uploads/sites/3/media/virtimage”
[ ! -d $mountpoint]&& mkdir $mountpoint
read -p “ 输入虚拟机器名称:” name
echo “ 请稍后…”
#如果有装置挂载到该挂载点,则先 umount 解除安装
if mount | grep -q”$mountpoint” ;then
       umount $mountpoint
fi
#只读的方式,将虚拟机器的磁碟档案挂载到特定的目录下,这里是/media/virtimage 目录
guestmount -r -d $name -i$mountpoint
echo
echo”——————————————–”
echo -e “33[32m$name 虚拟机器中网络卡列表如下:33[0m”
dev=$(ls /media/virtimage/etc/sysconfig/network-scripts/ifcfg-*|awk -F”[/-]” ‘{print $9}’)
echo $dev
echo”——————————————–”
 
echo
echo
echo”+++++++++++++++++++++++++++++++++++++++++++”
echo -e “33[32m 网络卡 IP 地址资讯如下:33[0m”
for i in $dev
do
       echo -n “$i:”
       grep -q “IPADDR”/media/virtimage/etc/sysconfig/network-scripts/ifcfg-$i || echo “ 未配置 IP 地址”
       awk -F= ‘/IPADDR/{print $2}’/media/virtimage/etc/sysconfig/network-scripts/ifcfg-$i
done
echo “+++++++++++++++++++++++++++++++++++++++++++”