我们最近从Linux笔记本电脑迁移到Macbook Pro膝上型电脑( IT公司不再支持带有VPN的本地Linux膝上型计算机,所以它都是Macbook/OSX设备)。然而,我们所有的开发都需要使用Ubuntu和Debian,所以我们在虚拟机中运行所有的东西。我们的计划是使用QEMU (通过适当的硬件加速hvf)方便地按需拆分VM.我们能够通过这样的方式成功地推出我们的VM:
qemu-system-x86_64 \
-m 4096 \
-smp 4\
-accel hvf \
-show-cursor \
-drive file=/public/my_os_disk.qcow2,if=virtio \
-net user,hostfwd=tcp::8022-:22 \
-net nic这将启动我们的VM (Ubuntu)实例,其中包含4GB的RAM、4个内核、硬件加速,并允许我们通过ssh -p8022 username@localhost进入VM (从VM的角度来看端口22 )。
我们如何在Linux来宾上设置NFS服务器,以便我们的Mac/OSX主机能够共享文件?如果主机也是Linux,我们可以像以前一样使用virtfs,但我们的解决方案似乎必须包括联网。我们已经在Ubuntu上设置了NFS服务器(使用常见文章,1,2)。然后,我们设置QEMU启动脚本以启用NFS端口 (即111,2049),如下所示:
qemu-system-x86_64 \
-m 4096 \
-smp 4\
-accel hvf \
-show-cursor \
-drive file=/public/my_os_disk.qcow2,if=virtio \
-net user,hostfwd=tcp::8022-:22,hostfwd=tcp::2049-:2049,hostfwd=tcp::111-:111 \
-net nic在Mac主机(或OSX主机)上,我们尝试通过以下方式挂载NFS共享(假设Linux来宾正在导出10.0.100.0/24子网上的D13路径):
mount -t nfs localhost:/export_from_linux /my_mac_mount_path然而,这只是无限期地挂起。
What是建立一个在Mac/OSX主机和运行在QEMU?中的Linux/Ubuntu客户之间共享文件的最佳方法(最好使用NFS)。
发布于 2023-06-04 00:39:34
您不需要主机the 111,只需2049年,或者您也可以使用从8049到2049的地图;因为2049年可能被macOS系统占用。
因此,至少需要让QEMU为备用NFS端口创建一个映射:
-netdev user,hostfwd=tcp::8049-:2049现在,您可以在macOS端的端口8049上安装NFS;例如,安装到Debian NFSv4服务器上:
sudo mount -o port=8049,vers=4,resvport -t nfs 127.0.0.1:/export_from_linux /my_mac_mount_path注意,我们使用一个选项在vers=4端强制执行macOS (您应该在Linux端运行一个与NSFv4兼容的服务器;即Debian 11's nfs-内核服务器)。
但是这里的主要键是resvport设置。无论出于什么原因,如果没有此设置,macOS将不会挂载。
https://serverfault.com/questions/1062191
复制相似问题