[Linux][经验总结]Vmware中挂载共享文件夹操纵及各命令解析
一、前言我们要将主机上的共享文件夹sync挂载到Vmware虚拟机中。虚拟机是Centos Stream10。
https://i-blog.csdnimg.cn/direct/2cbaec2d69654f55b078ac725c03f3a2.png
二、开始操纵
2.1 新建挂载目录
sudo mkdir -p /mnt/hgfs
一般我们会将磁盘等设备统一挂载在/mnt目录下。
2.2 挂载命令
命令一(使用mount,大概会报错,因为需要内核模块支持):
sudo mount -t fuse.vmhgfs-fuse .host:/sync /mnt/hgfs -o allow_other
命令二(使用专用工具):
sudo vmhgfs-fuse -o allow_other .host:/sync /mnt/hgfs
这条命令比力长,分几部门分析:
[*]mount :Linux中的文件体系挂载命令
[*]-t fuse.vmhgfs-fuse:指定文件体系类型为 fuse.vmhgfs-fuse。VMware 使用 FUSE(Filesystem in Userspace用户空间文件体系)实现宿主机与虚拟机之间的共享文件夹功能。vmhgfs-fuse 是 VMware 提供的专用驱动。
[*]fuse:指代用户空间文件体系框架(FUSE)。与传统的内核模块不同,FUSE 允许在用户空间实现文件体系,无需内核级代码,更安全且易维护。
[*]vmhgfs:即 VMware Host-Guest File System,是 VMware Tools 提供的共享文件夹功能,用于宿主机与虚拟机之间的文件共享。
[*]vmhgfs-fuse:这是 VMware 官方提供的 FUSE 版本 HGFS 驱动。相比传统的内核模块 vmhgfs,它更灵活,兼容性更好(尤其在较新的 Linux 内核中)。
[*].host:/sync
[*].host 是 VMware 虚拟机中预定义的宿主机标识符。
[*]:/sync 表现宿主机上的sync共享文件夹(即前文截图中的文件夹)。也可以直接使用./host:/,即直接将VMware 宿主机配置的全部共享文件夹挂载到虚拟机中。
[*]/mnt/hgfs挂载到虚拟机上的位置,即前文新建的目录。
[*]-o allow_other:挂载选项,允许非 root 用户访问挂载的文件体系。默认环境下,只有挂载操纵的执行者(root)能访问挂载点,此选项放宽权限,使普通用户也可读写。
三、其他问题与操纵
3.1 取消挂载
sudo umount /mnt/hgfs
3.2 取消挂载失败(设备繁忙 target is busy)
sudo umount -l /mnt/hgfs
-l(--lazy)选项会在文件体系空闲后主动卸载,无需等待历程退出。
3.3 主动挂载
3.3.1 方法一
如需开机主动挂载,可在 /etc/fstab 中添加:
.host:/sync /mnt/hgfs fuse.vmhgfs-fuse allow_other 0 0
0 0(dump 和 fsck 设置)
- 第一个 0:表现是否允许 dump 工具备份此文件体系(0=禁用)。
- 第二个 0:表现是否在启动时用 fsck 查抄此文件体系(0=不查抄)。
如果使用mount挂载失败,那么不适合这种挂载方式。
3.3.2 方法二
可以将挂载命令设置为启动项,实现主动挂载。
sudo vi /etc/systemd/system/mntMount.service
Description=My Startup Command
After=network.target# 若依赖网络,添加此行
Type=simple
ExecStart=/usr/bin/vmhgfs-fuse -o allow_other .host:/sync /mnt/hgfs
Restart=no# 无需重复执行
WantedBy=multi-user.target# 系统启动后运行
留意:把上方配置中的备注删掉再保存。
保存退出后,然后这个服务见效并设置自启动。
sudo systemctl daemon-reload
sudo systemctl enable mntMount.service
查抄启动项配置是否乐成。
sudo systemctl is-enabled mntMount.service
https://i-blog.csdnimg.cn/direct/1275715c250d42fc83fa7b8428342765.png
3.4 安全限定
因为挂载命令中增加了allow_other参数,会放宽访问权限,如果虚拟机存在多用户环境,建议结合 umask 或 uid/gid 选项限定访问:
sudo mount -t fuse.vmhgfs-fuse .host:/sync /mnt/hgfs -o allow_other,uid=1000,gid=1000
将 1000 更换为你的用户/组 ID,可通过id命令查看,即限定只允许root和当前用户访问该设备。
3.5 挂载失败
挂载失败,提示 "unknown filesystem type ‘fuse.vmhgfs-fuse’”
没有安装vmtools。
sudo apt install open-vm-tools-desktop# Debian/Ubuntu
sudo dnf install open-vm-tools # Fedora/RHEL
sudo yum install open-vm-tools # redhat
open-vm-tools:提供根本驱动。
open-vm-tools-desktop:包含 FUSE 支持。
原创,转发请注明。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]