Нет / mnt / hgfs в гостевой системе Ubuntu под VMWare Fusion

11

Я только что установил Ubuntu 13.04 внутри VMware Fusion Pro 5. У меня есть виртуальная машина, настроенная для совместного использования моего домашнего каталога только для чтения, но нет каталога / mnt / hgfs и нет строки / etc / fstab.

Что я могу сделать, чтобы смонтировать домашний каталог Mac внутри виртуальной машины Ubuntu?

Лорин Хохштайн
источник
Ты пробовал бегать sudo vmware-config-tools? Вы пытались переустановить гостевые дополнения?
Боб

Ответы:

4
sudo mkdir /mnt/hgfs

Сначала используйте приведенную выше команду, а затем следующее:

sudo /usr/bin/vmhgfs-fuse .host:/ /mnt/hgfs -o subtype=vmhgfs-fuse,allow_other

Я использую macOS и VMware Fusion с Ubuntu 18.x.

Маниш Шарма
источник
У меня работал на VM Workstation Player 15 под гостевой ОС: Ubuntu 18.04 и хост-ОС: Windows 10
Vinay
26

По какой-то причине автоматически установленные инструменты VMWare не справились с этой задачей, но в Ubuntu есть инструмент vmware-hgfsmounter, и если я его установлю, я смогу сделать это:

sudo apt-get install open-vm-tools
sudo mkdir /mnt/hgfs
sudo mount -t vmhgfs .host:/ /mnt/hgfs

После выполнения этих команд / mnt / hgfs теперь должен содержать ваши общие ресурсы.

Лорин Хохштайн
источник
14
Это дает мне ошибку: не может смонтировать файловую систему: нет такого устройства
codeomnitrix
2
Примечание: мне нужно было только сделать первую строку, принять все значения по умолчанию и перезагрузиться. Тогда это сработало. (У меня уже были установлены инструменты vmware, и общие папки работали до вчерашнего обновления 12.04 LTS).
Ларри Кирала
к сожалению, не работал на Ubuntu 19 - но предложение использовать vmgfs-fuse в ответе Лактака сработало (sudo / usr / bin / vmhgfs-fuse .host: / / mnt / hgfs -o подтип = vmhgfs-fuse, allow_other)
Нил Макгилл
6

Для Ubuntu 16.04 мне пришлось использовать vmhgfs-fuse, см. Https://github.com/vmware/open-vm-tools/issues/199#issuecomment-335525133 :

Это влияет на клиента Shared Folders, поскольку мы переключились с компонента режима ядра на компонент файловой системы FUSE, чтобы предоставить файловую систему Shared Folders.

Это приводит к новой команде монтирования, которая будет использоваться для создания общей файловой системы. Для версий ядра Linux мы используем файловую систему FUSE, что теперь означает, что вы должны использовать следующую команду:

sudo /usr/bin/vmhgfs-fuse .host:/ /mnt/hgfs -o subtype=vmhgfs-fuse,allow_other
laktak
источник
Это сработало для меня на Ubuntu 18! Если уместно, я использую Mac Mojave Host и VMware Fusion Version 11.0.3
Коннор Маккормик,
3

У меня была та же проблема, я вообще не мог смонтировать hgfs. Я попытался переустановить vmware-tools, затем попытался установить vm-open-vm-tools, но все равно не получалось. Я заметил, что когда я попытался установить open-vm-tools и переустановить vm-ware-tools через vmware-install.pl, я получил уведомление об ошибке для неверного пути заголовков gcc. Вы можете попробовать это, установив vmware-tools без ключа -d по умолчанию. Вы увидите уведомление о неверном пути. Я устанавливаю заголовки с помощью apt-get, вам может понадобиться, а может и нет, создать ссылку на version.h. Если version.h существует в / usr / src / linux-headers - $ (uname -r) / include / linux /, пропустите этот шаг.

sudo apt-get install gcc make linux-headers - $ (uname -r)

sudo ln -s / usr / src / linux-headers - $ (uname -r) /include/generated/uapi/linux/version.h / usr / src / linux-headers - $ (uname -r) / include / linux /

Установив заголовки, я удалил open-vm-tools и переустановил инструменты vmware, используя vmware-install.pl. На этот раз hgfs был смонтирован правильно, и моя общая папка тоже там. Перезагружен и он все еще там.

kodeAssassin
источник
1

После обновления виртуальной машины с Kubuntu 12.10 до 13.04 я столкнулся с той же проблемой, используя VMware Fusion 5.0.3 на OS X 10.8.3. Переустановка инструментов VMware перезагрузка не помогла. Я полагаю, что существует некоторая проблема между драйверами VMware и новым ядром (моя новая версия ядра - Linux Ubuntu 3.8.0-19-generic). Я смог получить доступ к общим ресурсам, используя open-vm-tools, как описано в ответе OP, но в его последней строке есть опечатка, и он должен прочитать

sudo mount -t vmhgfs .host:/ /mnt/hgfs
Дзамо Нортон
источник
1
Спасибо, я отредактировал мою последнюю строку, чтобы исправить опечатку. Обратите внимание, что переполнение стека позволяет редактировать ответы людей, чтобы устранить проблемы такого типа.
Лорин Хохштейн
1

Вы также можете редактировать файлы напрямую, чтобы исправить эту проблему. Это немного больно, но команды следуют.

vmhgfs

cd /vmware-tools-distrib/lib/modules/source
tar xf vmhgfs.tar
cd vmhgfs-only/

Открыть и редактировать inode.c. Редактировать строку 888, изменить

result = compat_vmtruncate(inode, newSize);

в

result = 0;

Затем сохраните файл и выйдите из редактора. И наконец, скопируйте его обратно:

cd ..
rm -rf vmhgfs.tar
tar cf vmhgfs.tar vmhgfs-only/
rm -rf vmhgfs-only/

VMCI

cd ./lib/modules/source
tar -xvf vmci.tar.

Открыть и редактировать ./vmci-only/linux/driver.c.

Редактировать строку 127, изменить

.remove = __devexit_p(vmci_remove_device),

в

.remove = vmci_remove_device,

Изменить строку 1753, изменить

static init __devinit vmci_probe_device(struct pci_dev *pdev, const struct pci_device_id *id) 

в

static int vmci_probe_device(struct pci_dev *pdev, const struct pci_device_id *id)

Изменить строку 1981, изменить

static void __devexit vmci_remove_device(struct pci_dev* pdev)

в

static void vmci_remove_device(struct pci_dev* pdev)

Закройте и сохраните ./vmci-only/linux/driver.c. Затем скопируйте файлы обратно.

tar -cf vmci.tar vmci-only

Теперь вы можете запустить, ./vmware-install.plи он должен успешно установить HGFS.

Мне нужно было исправить оба этих сломанных модуля, чтобы заставить работать HGFS. Другие сайты сообщают только о необходимости исправить модуль vmhgfs.

Источники:

HGFS: https://answers.launchpad.net/ubuntu/+question/227866

VMCI: http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2050666

Крейг Райт
источник
Как FYI, это работало, чтобы монтировать папку / mnt / hgfs, читать и писать. Тем не менее я получаю segfaults при выполнении таких команд, как python setup.py develop(например,), так что это не рабочее решение. Обратите внимание, что я получаю segfaults с open-vm-toolsответом, а также измененные файлы на мой ответ. Так что еще что-то сломано. Я собираюсь открыть новый вопрос по этой теме в ближайшее время.
Крейг Райт
1

Я столкнулся с этим вопросом, не осознавая, что vmwaretools действительно не смог правильно скомпилировать, когда я его установил. Кажется, что все заканчивается нормально, но на самом деле есть сообщения об ошибках, часть которых выглядит примерно так:

make [2]: *** [/tmp/modconfig-TRYAHr/vmhgfs-only/inode.o] Ошибка 1
make [2]: *** В ожидании незавершенных работ ....
make [1]: *** [_module_ / tmp / modconfig-TRYAHr / vmhgfs-only] Ошибка 2
make [1]: выход из каталога `/usr/src/linux-headers-3.16.0-38-generic '
make: *** [vmhgfs.ko] Ошибка 2
make: выход из каталога `/ tmp / modconfig-TRYAHr / vmhgfs-only '

Решение, которое я обнаружил, заключается в том, что перед успешной компиляцией необходимо установить исправления для инструментов vmware. У этого удивительного репо есть ответы:

https://github.com/rasa/vmware-tools-patches

Девин
источник
Git-репо действительно потрясающий, спасибо за подсказку!
Дэнни Ло