创建共享文件夹(qemu虚拟机&宿主机)

本文介绍了在QEMU-KVM虚拟机中,如何通过网络桥接和设置共享文件夹来实现实现宿主机与虚拟机之间的文件传输。首先,详细阐述了网络桥接的配置过程,包括XML配置和命令行创建虚拟机时的网络配置。其次,展示了如何创建并格式化共享文件夹,以及在宿主机和虚拟机上进行挂载和访问的步骤。这种方法对于少量大文件的传输非常实用。
摘要由CSDN通过智能技术生成

1.说明

qemu-kvm虚拟机与宿主机之间实现文件传输,主要是使用网络来进行,一般是qemu在创建虚拟机时在xml中配置好<network>标签然后通过ssh的scp远程拷贝命令实现。

    <interface type='network'>
      <source network='default'/>
      <model type='virtio'/>
    </interface>

但在某些情况下,qemu不是以xml创建的虚拟机,而是以纯命令创建的虚机。这就只能手动配置宿主机和虚拟机之间的网络,需要先在宿主机上配置网络桥接,然后在qemu-kvm启动时配置网卡。除了这种方式外,还可以配置共享文件夹,它也可以实现简单的虚拟机和宿主机之间的文件传输,尤其适合少量的大文件,接下来介绍其配置方法。

2.宿主机上操作

1. 使用dd创建一个4G大小的文件,作为虚拟机和宿主机之间传输桥梁

dd if=/dev/zero of=/opt/share.img bs=4M count=1k

2. 格式化share.img文件:

mkfs.ext4 /opt/share.img

3. 创建一个共享文件夹并挂载:

   mkdir /tmp/share

   mount -o loop /opt/share.img /tmp/share

4. 把需要传输给虚拟机的文件放到/tmp/share 下即可:

   cp  stress.xxx.rpm  tmp/share

3.虚拟机操作

1. 启动qemu-kvm虚拟机时,额外添加上 -hdb /opt/share.img参数:

/usr/libexec/qemu-kvm -m 4G -smp 4 -name bcl-qemu --enable-kvm  -boot cd -hda /root/linux.qcow2 -hdb /opt/share.img -vnc :1

2. 在虚拟机中lsblk查看本地磁盘是否挂载上宿主机的/opt/share.img,可以看到虚机多了一个sdb,且大小正好是之前创建/opt/share.img的4G

 3. 创建/root/share文件夹,作为虚拟机的挂载点

mkdir /root/share

4. 以同样的文件格式ext4挂载刚刚添加的/dev/sdb硬盘:

mount -t ext4 /dev/sdb /root/share

5. 通过访问/root/share文件夹即可以获得宿主机上放在/tmp/share文件夹下的文件

6. 若宿主机重新往共享文件夹下添加文件,就在虚拟机中先卸载/dev/sdb然后再挂载以实时共享(直接用mount -o remount /dev/sdb重新挂载/dev/sdb测试不成功)

umount /dev/sdb

mount -t ext4 /dev/sdb /root/share

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值