我们在嵌入式开发中使用虚拟机时,经常需要在主机和虚拟机操作系统之间传输文件。以常用的虚拟机软件 Vmware 为例,如果安装了虚拟机工具,我们可以通过直接拖放文件的方式快速实现文件的交互,但这种方式做不到文件的同步、修改,实际上还是通过文件复制、粘贴实现的,并且有时还会带来一些其他问题。
本文介绍一种通过在主机和虚拟机之间建立共享文件夹的形式实现主机与虚拟机的文件交互,这种方式可以同步主机和虚拟机之间对同一文件的操作、修改,极大地提高了嵌入式开发的效率。
实验环境
- 主机系统:Windows 11 22H2
- 虚拟机软件:Vmware 17.5.0
- 虚拟机系统:Ubuntu 18.04
搭建共享
- 在主机创建一个文件夹,作为共享文件夹:
- 右键点击共享文件夹,打开属性-->共享-->高级共享:
- 勾选共享此文件夹,点击确定:
- 启动虚拟机软件,打开虚拟机设置-->选项,勾选总是启用共享文件夹,点击添加:
- 点击下一步:
- 填写主机共享文件夹路径和名称,点击下一步:
- 勾选启用此共享,点击完成,关闭设置:
- 启动虚拟机系统,打开终端,进入共享目录/mnt/hgfs,可以看到共享文件夹 share:
- 主机与虚拟机之间建立共享文件夹需要正确安装虚拟机工具,如果没有正确建立文件共享,检查是否正确安装了虚拟机工具或者重新安装一下。
测试共享
- 在主机共享目录中创建一个共享测试文件,随机输入一些内容:
- 在虚拟机中查看共享文件夹中的共享文件及内容:
- 在虚拟机中对共享文件做一些修改:
- 在主机可以查看到共享文件的修改:
- 在主机中编写代码:
- 在虚拟机中编译:
- 总结一句,优雅永不过时~