V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
LeeReamond
V2EX  ›  程序员

HyperV 和宿主机共享文件的方案?

  •  
  •   LeeReamond · 2023-01-28 23:53:10 +08:00 · 2857 次点击
    这是一个创建于 669 天前的主题,其中的信息可能已经有所发展或是发生改变。

    想要实现的效果:win 上用 hyperv 开个 linux 跑个服务。文件能在 win 修改或在 linux 修改,两者同步。(当虚拟机启动时在 linux 和 win 都能修改文件,当虚拟机关闭时 win 能独立修改文件)

    网上查了一下 mnt 能通过网络共享的方式绑定一个网络位置,这个倒是好理解,但是如果经过路由的话岂不是随便拷贝点啥文件就会爆炸慢。。。

    9 条回复    2023-01-30 08:53:31 +08:00
    churchmice
        1
    churchmice  
       2023-01-29 00:05:33 +08:00 via Android
    你可以设置走本地,而不是过路由
    cc666
        2
    cc666  
       2023-01-29 00:06:02 +08:00
    wsl2 本身就是用网络文件协议实现的,性能不大行(但也能用
    微软自己都用网络文件系统了,所以感觉应该没啥更好的替代方案,过虚拟交换机的话,性能问题应该不是太大
    gitopen
        3
    gitopen  
       2023-01-29 00:17:29 +08:00   ❤️ 1
    目前这么用,win 上开 samba ,linux 上 mount 挂载,通过路由器问题不大。
    LeeReamond
        4
    LeeReamond  
    OP
       2023-01-29 00:26:12 +08:00
    @cc666 过虚拟交换机我感觉也是 OK 的,只要不经过实体网络传输就行,要不然顺序读写几 G 的固态硬盘实际速度就剩 100M 了。不过应该怎么设置虚拟交换机呢,我看网上 mnt 写的都是桥接网络然后 mnt 宿主机的内网地址这种过物理网络的方案
    Rocketer
        5
    Rocketer  
       2023-01-29 01:38:41 +08:00 via iPhone   ❤️ 1
    老生常谈的问题了,我当初就是因为文件共享问题转回了 vmware 。

    据说是因为 hyper-v 更底层,你以为的“宿主机”其实也是运行在 hyper-v 之上的,所以这个问题像两个虚拟机之间共享文件一样麻烦。还有 usb 口等资源,想要与“宿主机”共享非常麻烦。
    cc666
        6
    cc666  
       2023-01-29 15:12:52 +08:00
    Hyper-v 的默认交换机就是一个内部交换机。即使使用外部交换器直连物理网络,因为公用的是一个物理接口,问题也不大,如果过路由,路由器是百兆的,感觉可以直接在网线后连接一个千兆的二层交换机(很便宜),使得网线走在千兆,应该也可以走到千兆,应该远超硬盘的瓶颈,当然也可能即使是外部交换机,但是虚拟交换机在宿主机上处理,根本不用网线的事,才疏学浅,不知道具体是怎样的实现,感觉实验一下就明白了,反正我常常在物理机和虚拟机之间走网络共享,完全没被速度困扰过
    SgtPepper
        7
    SgtPepper  
       2023-01-29 16:38:13 +08:00
    记得以前做 mcse 实验好像是挂 vhdx 盘实现
    clorischan
        8
    clorischan  
       2023-01-29 17:08:40 +08:00   ❤️ 1
    @LeeReamond

    物理网卡

    虚拟交换机

    ├─── host
    ├─── guest0
    ├─── guest1
    └─── guest2

    即使是外部虚拟交换机
    host 与 guest 内部之间通讯也是不走物理网络的
    而是在虚拟交换机内部通讯
    而物理网卡可以看作是外部虚拟交换机的上联端口

    内部虚拟交换机就是不绑定物理网卡(没有访问外部网络的上联端口
    虚拟交换机

    ├─── host
    ├─── guest0
    ├─── guest1
    └─── guest2

    专用虚拟交换机就是在内部虚拟交换机的基础上不创建 host 的虚拟网卡, 仅 guest 内部可用
    虚拟交换机

    ├─── guest0
    ├─── guest1
    └─── guest2
    cbasil
        9
    cbasil  
       2023-01-30 08:53:31 +08:00
    win10 用 samba 共享文件夹,linux 上用 mount 挂载,还可以在 fastab 写入以下代码,这样就开机自动挂载。
    //192.168.0.11/code /home/www cifs username=administrator,password=123456,gid=www-data,uid=www-data 0 0
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1023 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 21:58 · PVG 05:58 · LAX 13:58 · JFK 16:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.