在vmware里跑了个centos 7虚拟机,用着用着发现vmtoolsd CPU占用率一直100%,kill -9杀掉后hgfs共享文件夹也出问题了。然后咨询了doubao,用 sudo umount -l /mnt/hgfs 解决了问题
记录一下:
当你在 Linux 系统中看到hgfs: Transport endpoint is not connected错误提示时,这通常和 VMware Tools 的共享文件夹功能(hgfs)出现故障有关。下面为你详细分析可能的原因以及对应的解决办法:
- VMware Tools 未正常运行:VMware Tools 服务可能没有启动,或者已经崩溃。
- 共享文件夹配置有误:在 VMware 虚拟机设置里,共享文件夹的配置可能存在问题。
- 内核模块缺失或不兼容:hgfs 内核模块没有正确加载,或者与当前内核版本不兼容。
- 挂载点状态异常:之前的挂载操作失败,导致挂载点处于不一致的状态。
- 系统服务启动顺序有问题:VMware Tools 服务的启动顺序可能不正确,在依赖服务启动之前就尝试挂载共享文件夹。
- 关闭虚拟机,然后在 VMware 界面中选择 "虚拟机"→"设置"。
- 进入 "选项"→"共享文件夹",确认共享文件夹已启用,并且路径配置正确。
- 选择 "总是启用" 或 "手动挂载" 选项。
- 及时更新系统和 VMware Tools:保证系统和 VMware Tools 都处于最新状态,以避免兼容性问题。
- 避免内核版本不匹配:升级内核后,要重新安装 VMware Tools。
- 优化启动脚本:可以通过编辑
/etc/rc.local文件,添加挂载命令,确保系统启动时共享文件夹能正确挂载。
- 使用 systemd 服务:创建自定义的 systemd 服务文件,控制共享文件夹的挂载顺序。
解决hgfs: Transport endpoint is not connected错误,需要按照从简单到复杂的顺序逐步排查问题。首先检查服务状态,然后尝试重新挂载,接着修复内核模块,最后再考虑更新软件。只要按照上述步骤操作,通常可以解决共享文件夹挂载失败的问题。