Если понадобилось достучаться из CentOS 6 до хостового shared folder в VMware
Workstation или чем-то совместимом, а стандартные способы приводят только к
появлению загадочных мусорных сообщений в логах, что что-то где-то кого-то не
нашло, можно поступить так:
Поставить vmware-tools от VMware (да, понадобится перл и может даже gcc).
Ключевой момент - _целиком_. Понадобится версия 8.любая (я свою стащил из
vsphere5.0, но вообще-то они доступны с родного сайта даже без регистрации и sms).
Если в системе подключен EPEL, из которого установлен open-vm-tools - его
потребуется удалить через yum erase, так как это устаревший и неработающий
бэкпорт. Также понадобиться удалить уже установленные модули (как минимум сам
модуль vmhgfs), полученные из других источников.
В чем суть? В том, что как обычно - эру немого кино объявили deprecated, а со
звуковым что-то пошло не так. В десятой версии VMware перешла на новый-модный
метод доступа к hgfs через fuse - в чем не было бы ничего плохого (дергать
гипервизор все равно, из ядра или userspace), если бы, разумеется, всё было
реализовано корректно. Прибить гвоздем непрошенное кэширование, игнорируя
существующие API - норм. Исправить нельзя - "я в отпуске!" (по возвращении
исправлено не то и не до конца, потом переисправлено, но с уровнем
единственного штатного разработчика и качеством его кода, надеюсь, уже все ясно).
Поэтому нет смысла пол-системы апгрейдить ради "поддерживаемой" таким способом мусорной версии.
Ключевой момент при этом - что устанавливать старые vmware-tools надо целиком -
чтобы mount.vmhgfs был той же самой (старой!) версии, что и vmhgfs.ko -
поскольку там, внезапно, тоже stable api is nonsense - поэтому и необходимо
удалить "опен"-vm-tools - ничего хорошего они не содержат. API самого
гипервизора при этом не меняется (или там хорошо сохраняют обратную
совместимость) поэтому модуль работает с любой версией.
P.S. Если у вас именно штатный CentOS/RHEL, все пройдет гладко, а если что-то
несколько отличающееся и придётся модуль пересобирать из исходников - в
vmhgfs-only/fsutil.c в 65й строке исправьте "if" так, чтобы он всегда был
"false" - там проверка минимальной версии, которая неправильна из-за сделанного
rh бэкпортирования патчей, вам этот блок не нужен.
|