11

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

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

6 ответов6

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 теперь должен содержать ваши общие ресурсы.

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 был смонтирован правильно, и моя общая папка тоже там. Перезагружен и он все еще там.

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

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

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

1

Для 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
1

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

make[2]: *** [/tmp/modconfig-TRYAHr/vmhgfs-only/inode.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [_module_/tmp/modconfig-TRYAHr/vmhgfs-only] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.16.0-38-generic'
make: *** [vmhgfs.ko] Error 2
make: Leaving directory `/tmp/modconfig-TRYAHr/vmhgfs-only'

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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .