虚拟机共享宿主机文件
在虚拟机安装了一个没有图形界面的centos7,需要把宿主机上的文件复制到虚拟机中,网上有很多办法,比如Samba 、ftp之类的。我选择了vmware自带的文件共享功能。
有个前提条件是,你的vmware安装了vmware tools。
操作
操作比较简单,按照如下流程即可,就不贴图了。
-
菜单中 虚拟机-》设置-》选项-》共享文件夹-》总是启用-》添加-》名称(在虚拟机中看到的名字vmShared )和主机路径
-
执行
vmware-hgfsclient
,可以看到设置的名称,即可使用的共享文件 -
vmhgfs_fuse挂载该共享文件夹,
vmhgfs-fuse .host:/vmShared /mnt/vmShared
在host:/
后面接的是可用共享目录。后面那个是你要挂载的目录,其实这个vmhgfs-fuse
就是把shared_folder当做一个文件系统挂载在 /mnt/vm_shared 下。
问题
- 普通用户看不到 ,加上
-o subtype=vmhgfs-fuse,allow_other,nonempty
其他用户也能看到这个共享文件夹
但是通过ll查看共享文件夹中的文件时,(root操作)可以看到文件的权限为:rwxrwxrwx
,即所有人都能看到。理论上修改相应的权限即可以控制访问。
-
每次重启后都要重新挂载一次才能正常使用 ,把挂载写入
/etc/fstab
文件中,之后重启后vmhgfs-fuse 就会被自动挂载上。
host:vmShared /mnt/vmShared fuse.vmhgfs-fuse defaults 0 0
但是我每次开机仍然会存在,不过挂在点都会改变为:.host:/ -> /mnt/hgfs
。这是系统做的修改。
另外,如果非root用户挂载在非/mnt/目录下,用root往/etc/fstab 中写挂在内容时,再次启动系统会遇到一些列错误(网络等各项服务启动等,其中根源是系统启动的时候报的一个错)。
详见:Centos7 系统启动异常