Qemu和宿主机不使用外网进行文件传输

简介

目前Qemu虚拟机和宿主机交互,最方便的方式是进行网络传输,但也有不能使用外网的情况,这时候使用挂载是比较好的方式。

Linux使用

宿主机:Linux

Qemu:Linux

传输方式:挂载

参考:在QEMU虚拟机和宿主机之间传输文件

1、启动时加入命令

复制代码
qemu-system-x86_64 ... -virtfs local,path=/mnt/shared,mount_tag=host0,security_model=passthrough,id=host0

-virtfs:选项指定了共享文件夹的参数

local:表示共享文件夹是本地文件夹

path:指定了共享文件夹的路径

mount_tag:指定了共享文件夹在虚拟机中的挂载点

security_model:指定了安全模型

id:是共享文件夹的标识符

2、Qemu的内部创建一个文件夹并挂载

复制代码
mkdir -p /mnt/shared
mount -t 9p -o trans=virtio,version=9p2000.L host0 /mnt/shared

-t:指定了文件系统类型

9p:是QEMU支持的文件系统类型

trans:指定了传输协议

version:指定了文件系统版本

host0:是共享文件夹的标识符

/mnt/shared:是共享文件夹在虚拟机中的挂载点

此时,Qemu的/mnt/shared目录将指向宿主机上的/mnt/shared目录,可以在两者之间传输文件

Windows使用

宿主机:Linux

Qemu:Windows

传输方式:Samba

注:宿主机需要安装samba服务

参考:Qemu官方文档

1、启动时加入命令

复制代码
-nic user,id=nic0,smb=/share_directory

例如如下语句,将宿主机的/opt目录共享到了Qemu内

复制代码
qemu-system-x86_64 -name win7-Lite-1 -m 2048M -smp cpus=1,sockets=1 -enable-kvm -machine smm=off -boot order=c -drive file=/data/gns3/data/GNS3/images/QEMU/win7-Lite.qcow2 -vnc 0.0.0.0:2 -nic user,id=nic0,smb=/opt -machine usb=on -device usb-tablet

2、在Windows机器内添加网络映射

(1)首先查看当前的ip

(2)添加网络映射(samba默认使用x.x.x.4的地址

(3)成功则会出现一个新的网络磁盘

相关推荐
人间打气筒(Ada)9 小时前
GlusterFS实现KVM高可用及热迁移
分布式·虚拟化·kvm·高可用·glusterfs·热迁移
SmartRadio13 天前
基于ESP32-S3+Barrier实现多电脑KVM共享方案(无缝切换+剪贴板/文件共享)
电脑·esp32·kvm·远程·虚拟键盘·虚拟鼠标
SmartRadio13 天前
基于RK3568实现多电脑KVM共享方案(HDMI采集+虚拟USB键鼠+无缝切换+剪贴板/文件共享)
运维·服务器·网络·电脑·kvm·rk3568
SmartRadio14 天前
ESP32-S3实现KVM远控+云玩功能 完整方案
运维·python·计算机外设·esp32·kvm·云玩
河码匠15 天前
libvirt xml 配置文件说明
qemu·kvm·libvirt
G_H_S_3_2 个月前
【网络运维】KVM基础使用
linux·运维·网络·kvm
Vallelonga2 个月前
KVM 架构概述
经验分享·虚拟化·kvm
虚伪的空想家2 个月前
华为昇腾Atlas 800 A2物理服务器开启VT-d模式
运维·服务器·ubuntu·kvm·vt-d·直通
虚伪的空想家2 个月前
arm架构服务器使用kvm创建虚机报错,romfile “efi-virtio.rom“ is empty
linux·运维·服务器·javascript·arm开发·云原生·kvm
虚伪的空想家3 个月前
华为A800I A2 arm64架构鲲鹏920cpu的ubuntu22.04 tls配置直通的grub配置
ubuntu·华为·架构·虚拟化·kvm·npu·国产化适配