关于virt-cat命令之-c|–connect参数问题
文章目录
- 关于virt-cat命令之-c|--connect参数问题
- 0 环境:
- 1 测试:
- 2 同样,你会发现其他`virt-*`系列其他命令也是不行的:
- 3 virsh系列命令是可以的:
virt-cat
命令之-c|--connect
参数并不能正常显示远程主机上的虚拟机中的文件,除非两台主机使用共享存储,并且挂载到主机的路径也一样。同时我发现其他virt-*
系列命令也是同样的问题 ,而virsh命令没这个问题。
本来想用这个优化下KVM
虚拟机管理系统项目,现在看来只能另辟蹊径了。**zzxia-kvm-manage**项目是我10年前写的一个项目,也一直在用,虽然一直没有大更新,但基本够用,大家可以试试。他可以批量克隆、修改、删除、启动、自动启动、关闭KVM虚拟机。特别适合中小企业使用。
0 环境:
m-centos-2c4g
这个虚拟机在p-192-168-11-201
(简称:201)和p-192-168-11-202
(简称:202)上都有,虚拟机磁盘文件存放位置也一样(/zjlh/dg45/kvm-images/m-centos-2c4g.qcow2
)
virt-cat版本:
[root@p-192-168-11-201 ~]# virt-cat -V
virt-cat 1.40.2rhel=7,release=10.el7,libvirt
1 测试:
结论:在201上运行virt-cat -c 202表面上可以显示正常结果,但实际virt-cat的是本机上的虚拟机(m-centos-2c4g),因为当我把本机的虚拟机磁盘文件改名后,再次运行virt-cat -c 202就会出错,测试过程如下:
- 更名前可以正常输出:
[root@p-192-168-11-201 ~]# virt-cat -c qemu+ssh://root@192.168.11.202/system -d m-centos-2c4g /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
qemu+ssh://root@192.168.11.202/system 是连接到202的libvirt url
- 更名:
[root@p-192-168-11-201 ~]# mv /zjlh/dg45/kvm-images/m-centos-2c4g.qcow2 /zjlh/dg45/kvm-images/m-centos-2c4g.qcow2---bak
- 更名后出错
[root@p-192-168-11-201 ~]# virt-cat -c qemu+ssh://root@192.168.11.202/system -d m-centos-2c4g /etc/os-release
libguestfs: error: /zjlh/dg45/kvm-images/m-centos-2c4g.qcow2: 没有那个文件或目录
2 同样,你会发现其他virt-*
系列其他命令也是不行的:
[root@p-192-168-11-201 ~]# virt-sysprep --connect qemu+ssh://root@192.168.11.202/system \
> --copy-in /tmp/ifcfg-eth0:/etc/sysconfig/network-scripts/ \
> --hostname vv.zjlh.lan \
> -d vvvv
[ 0.0] Examining the guest ...
virt-sysprep: error: libguestfs error: /zjlh/vv.img:
没有那个文件或目录
If reporting bugs, run virt-sysprep with debugging enabled and include the
complete output:
virt-sysprep -v -x [...]
3 virsh系列命令是可以的:
[root@p-192-168-11-201 ~]# virsh -c qemu+ssh://root@192.168.11.202/system edit vvvv
没有更改域 vvvv XML 配置。
[root@p-192-168-11-201 ~]# virsh -c qemu+ssh://root@192.168.11.202/system list --all
Id 名称 状态
----------------------------------------------------
3 v-192-168-11-10-ss running
4 v-192-168-11-161-childhood running
- m-centos-2c4g 关闭
- vvvv 关闭