Монтирование общих папок VMware в Ubuntu - ОТВЕТ
На этом есть много страниц, но они не все осторожны, чтобы различить, какой набор инструментов VMware они описывают. Есть два набора, которые совершенно разные:
- Пакет apt open-vm-tools (и open-vm-tools-desktop)
- Инструменты VMware, установленные из меню VMWare (через CDROM)
Также обратите внимание, что содержимое #1 изменилось, и vmware-hgfsmounter больше не существует. Я использую VMware Fusion 8.1.1 и Ubuntu 16.04.
Чтобы установить #2, вы должны сначала выполнить "apt-get purge open-vm-tools open-vm-tools-desktop". Когда вы делаете это и запускаете установщик с CDROM, он говорит использовать open-vm-tools. Если вы проигнорируете это и установите их, вы получите много ошибок компилятора в vmhgfs (модуле ядра, который реализует общие папки в Linux), и он потерпит неудачу.
Я несколько раз обходил циклическое переключение между двумя типами инструментов VMware, пока не наткнулся на решение:
Используйте open-vm-tools (для меня они только пришли, когда я установил Ubuntu 16.04). Перезагружать. В настройках VMware (на хосте):
- отключить общие папки
- включить общие папки
- удалить любые папки
- добавьте обратно нужные папки
Теперь они для меня, в /mnt/hgfs. Но они исчезают при перезагрузке - отключение и включение общих папок (в настройках VMware Fusion) возвращает их обратно. Я не мог понять, что поместить в /etc/fstab, поэтому после каждой перезагрузки я должен отключить / включить их.
Может кто-нибудь сказать мне, как заставить их пережить перезагрузку?
(Я бы добавил это на одну из других страниц, но эта система не позволит новому пользователю, как я, сделать это. Я новичок здесь, а не в Linux или VMwarL.)
1 ответ
Сборка модулей ядра open_vm_tools
проблема
Пакет open_vm_tools по умолчанию для Ubuntu 16.04 (и, по-видимому, других выпусков) недостаточно поддерживает монтирование общих папок.
Среда
- Ubuntu 16.04.3 LTS настольный хост
- VMware Workstation 12 Pro версии 12.5.7 build-5813279
- Ubuntu 16.04.3 LTS сервер VM
Решение
Это решение было получено из vmware / open-vm-tools # 62.
sudo apt-get install build-essential libprocps4-dev dnet-progs libdumbnet-dev doxygen libglib2.0-dev libtool autotool
git clone https://github.com/vmware/open-vm-tools.git
cd open-vm-tools/open-vm-tools
autoreconf -i
./configure --without-x --without-pam --without-ssl –without-icu --
enable-deploypkg=no
cd modules
make MODULES=vmhgfs
sudo insmod linux/vmhgfs/vmhgfs.ko
Обновления модуля ядра
Модуль должен быть перестроен и переустановлен после каждого обновления ядра.
Чтобы очистить репозиторий после обновления ядра Linux: git reset --hard open-vm-tools
make distclean
не адекватно сбрасывает среду и приведет к поломке модуля.
Установка модуля
sudo mkdir /lib/modules/`uname -r`/extra
sudo mv linux/vmhgfs/vmhgfs.ko /lib/modules/`uname -r`/extra
sudo chown root:root /lib/modules/`uname -r`/extra/vmhgfs.ko
sudo chmod 644 /lib/modules/`uname -r`/extra/vmhgfs.ko
Монтирование общих папок
mount -t vmhgfs .host:/share /mnt/hgfs
Для автоматического монтирования отредактируйте файл /etc/fstab и добавьте:
.host :/ /mnt/hgfs vmhgfs defaults 0 0
Обновление № 1
После дальнейшего изучения выясняется, что vmhgfs был перемещен в пользовательское пространство и использует интерфейс fuse.
Чтобы смонтировать общую папку (при условии, что $HOME/Shared существует):
/usr/bin/vmhgfs-fuse -o auto_unmount .host:/ $HOME/Shared
Для автоматического монтирования отредактируйте файл /etc/fstab и добавьте:
.host:/ /home/user/Shared fuse.vmhgfs-fuse allow_other,uid=1000,gid=1000,auto_unmount,defaults 0 0
Где пользователь - это ваш ИД пользователя и ваш UID и GID == 1000. Использование id
определить ваш UID и GID.