Ubuntu18.04设置共享文件夹方式(解决/mnt目录下没有hgfs目录)

好的,在 Ubuntu 18.04 中设置 VMware 共享文件夹时,遇到 /mnt 目录下没有 hgfs 子目录是一个常见问题。这通常意味着 VMware Tools 的共享文件夹驱动(open-vm-tools)没有正确安装或挂载。

图片[1]_Ubuntu18.04设置共享文件夹方式(解决/mnt目录下没有hgfs目录)_知途无界

下面我将为您提供一套完整、分步的解决方案,从安装工具到手动创建和挂载目录,确保问题解决。

方法概览

  1. 安装 open-vm-tools​ (推荐方式)
  2. 启用共享文件夹服务
  3. 手动创建并挂载 hgfs 目录
  4. 设置开机自动挂载(可选)​

步骤一:安装必要的工具 (open-vm-tools)

Ubuntu 18.04 推荐使用开源的 open-vm-tools 来替代传统的 VMware Tools。它更易维护且与系统集成更好。

  1. 更新软件包列表:​sudo apt update
  2. 安装 open-vm-tools 及桌面环境支持(如果适用):​
    • 对于服务器版​(无图形界面): sudo apt install open-vm-tools
    • 对于桌面版​(有图形界面): sudo apt install open-vm-tools-desktop 安装 desktop 版本可以确保更好的集成,比如拖放文件和剪贴板共享。
  3. 安装内核头文件(关键步骤):​
    编译 HGFS 模块需要当前运行内核的头文件。这是解决 hgfs 目录缺失问题的常见原因。 sudo apt install linux-headers-$(uname -r) $(uname -r) 会自动获取您当前的内核版本号。
  4. 重启虚拟机:​
    安装完所有组件后,​必须重启以使更改生效。 sudo reboot

步骤二:在 VMware 中配置共享文件夹

在重启进入 Ubuntu 之前,请先在 VMware 软件中进行设置:

  1. 关闭虚拟机(如果正在运行)。
  2. 在 VMware 主界面,右键点击您的虚拟机 -> ​设置
  3. 选择 ​选项​ 选项卡 -> ​共享文件夹
  4. 选择 ​总是启用
  5. 点击 ​添加…​,按照向导添加一个主机上的文件夹,并为其指定一个名称(例如 Share)。记住这个名称,我们称之为 <share_name>
  6. 点击 ​确定​ 保存设置。
  7. 重新启动 Ubuntu 虚拟机。

步骤三:手动创建并挂载 hgfs 目录

重启后,/mnt/hgfs 目录可能仍然不存在。我们需要手动创建并挂载它。

  1. 创建 hgfs 目录:​sudo mkdir -p /mnt/hgfs
  2. 尝试手动挂载共享文件夹:​
    使用 vmhgfs-fuse 命令进行挂载。假设您在 VMware 中为共享文件夹设置的名称是 Sharesudo vmhgfs-fuse .host:/Share /mnt/hgfs -o allow_other
    • .host:/ShareShare 是您在 VMware 中设置的共享名称。
    • /mnt/hgfs:目标挂载点。
    • -o allow_other:允许非 root 用户访问该共享文件夹(非常重要,否则普通用户看不到内容)。
  3. 验证是否挂载成功:​
    • 检查挂载状态: mount | grep hgfs 如果成功,您会看到类似 .host:/Share on /mnt/hgfs type fuse.vmhgfs-fuse ... 的输出。
    • 查看目录内容: ls -la /mnt/hgfs 现在您应该能看到主机共享文件夹里的文件了。

步骤四:设置开机自动挂载(永久生效)

手动挂载在重启后会失效。为了实现开机自动挂载,我们需要编辑 /etc/fstab 文件。

  1. 编辑 fstab 文件:​sudo vim /etc/fstab
  2. 在文件末尾添加以下一行:​.host:/Share /mnt/hgfs fuse.vmhgfs-fuse allow_other,defaults 0 0
    • 请将 Share 替换为您在 VMware 中实际设置的共享名称。
    • allow_other,defaults 是挂载选项,与手动挂载时的 -o allow_other 等效。
  3. 保存并退出编辑器​(在 vim 中是按 Esc,然后输入 :wq)。
  4. 测试 fstab 配置是否正确:​
    为了避免配置错误导致系统无法启动,可以先测试一下。 sudo umount /mnt/hgfs # 如果之前已手动挂载,先卸载 sudo mount -a # 尝试挂载 fstab 中的所有条目 如果没有报错,并且再次执行 ls /mnt/hgfs 能看到文件,说明配置成功。现在,每次系统启动时都会自动挂载共享文件夹。

故障排除

  • ​**问题:vmhgfs-fuse: command not found**​
    • 原因​:open-vm-tools 未正确安装。
    • 解决​:回到 ​步骤一,确保 open-vm-toolslinux-headers 都已安装,并重启。
  • ​**问题:fuse: mount failed: Operation not permittedTransport endpoint is not connected**​
    • 原因​:通常是因为没有使用 sudo 权限,或者 allow_other 选项未正确设置。
    • 解决​:确保使用 sudo 执行挂载命令,并且在 fstab 和手动命令中都加入了 allow_other 选项。
  • 问题:重启后 /mnt/hgfs 为空,但 mount 命令显示已挂载
    • 原因​:可能是共享名称错误或 VMware 服务未启动。
    • 解决​:检查 VMware 中的共享文件夹名称是否与 fstab 中的一致。可以尝试在终端运行 sudo systemctl status run-vmblock\\x2dfuse.mount 来检查相关服务状态。
  • 终极排查:检查内核模块
    查看 vmhgfs 内核模块是否已加载: lsmod | grep vmhgfs 如果没有任何输出,说明模块未加载。可能需要重新安装 open-vm-tools-dkmssudo apt install open-vm-tools-dkms)来从源码编译并安装模块。

按照以上步骤操作,您应该能够成功在 Ubuntu 18.04 中创建并使用 VMware 的共享文件夹。

© 版权声明
THE END
喜欢就点个赞,支持一下吧!
点赞17 分享
评论 抢沙发
头像
欢迎您留下评论!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容