美文网首页
# 关于virt-cat命令之-c|--connect参数问题

# 关于virt-cat命令之-c|--connect参数问题

作者: zhf_sy | 来源:发表于2024-03-10 11:46 被阅读0次

关于virt-cat命令之-c|--connect参数问题

[toc]

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                           关闭

相关文章

网友评论

      本文标题:# 关于virt-cat命令之-c|--connect参数问题

      本文链接:https://www.haomeiwen.com/subject/lshpzdtx.html