Как создать общую папку Virtualbox между хостом Windows и гостевой машиной Ubuntu18.04 - PullRequest
0 голосов
/ 24 января 2019

Я прочитал документы и все вопросы об общем доступе к папке с хост-компьютера на гостевой компьютер Virtualbox и до сих пор не могу заставить его работать. В моем случае хост - это компьютер с Windows, а гость - сервер с Ubuntu18.04.

Что советуют и что я уже пробовал:

1) В меню виртуальной машины я обнаружил подменю «устройства» и щелкнул параметр «Вставить образ компакт-диска с гостевыми дополнениями», после чего в строке состояния загорелся значок компакт-диска, который показывает, что компакт-диск вставлен, а путь к iso - C : \ Program Files \ Oracle \ VirtualBox \ VBoxGuestAdditions.iso (я проверил, что файл там действительно существует).

2) В том же подменю настроек виртуальной машины «устройства» я открыл «Настройки общей папки» и добавил общую папку с именем «test» и путем «D: \ test», которая ведет к папке на моем D: диске, которая содержит тестовые файлы.

3) Я перезагружаю свою виртуальную машину Ubuntu и заглядываю в каталог / media, ожидая найти каталог / media / cdrom или что-то вроде этого с файлом VBoxLinuxAdditions.run, который должен запускаться в соответствии с документацией. Но каталог / media пуст, поэтому я не имею к этому никакого отношения. Я искал этот файл в других каталогах, но безуспешно.

После этого я попытался установить Virtualbox-guest-дополнения из репозитория, как было рекомендовано на форуме ubuntu:

sudo apt-get update
sudo apt-get install virtualbox-guest-dkms

И проверил, что пакет был установлен командой:

lsmod | grep -io vboxguest

Но когда я перезагрузился и попытался смонтировать общую папку с помощью:

mkdir -p /home/myusername/test
sudo mount -t vboxsf test /home/myusername/test

У меня ошибка:

mount: /home/myusername/test: wrong fs type, bad option, bad superblock on /home/myusername/test, missing codepage or helper program or other error.

Я вижу, что нет ссылки /sbin/mount.vboxsf, я не уверен, что это проблема, также я попытался добавить моего пользователя в группу 'vboxsf' с помощью:

sudo usermod -a -G vboxsf myusername

но группа тоже не была создана.

Что мне не хватает, как это заставить работать?

1 Ответ

0 голосов
/ 24 января 2019

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

Мы предполагаем, что у нас уже установлена ​​виртуальная машина Ubuntu 18.04 и пользователь linux "myusername" с разрешениями sudo на этом компьютере.

Итак, чтобы поделиться папкой D: \ test (в качестве примера) на хост-компьютере Windows с гостевой машиной Ubuntu 18.04 Virtualbox (ее содержимое должно быть доступно в каталоге / home / myusername / test), мы делаем следующие шаги:

1) Запустить Ubuntu VM из интерфейса VirtualBox

2) Откройте «Настройки общих папок» в подменю «Устройства» верхнего меню запущенного окна Ubuntu VM и задайте имя общей папки как «test», а путь - «/ home / myusername / test» и заполните флажок "Сделать постоянным"

3) Установите пакеты virtualbox-guest-dkms и virtualbox-guest-utils на виртуальную машину Ubuntu с помощью менеджера пакетов.

sudo apt-get update
sudo apt-get install virtualbox-guest-dkms
sudo apt-get install virtualbox-guest-utils

4) Создайте каталог / home / myusername / test на вашей Ubuntu VM

mkdir /home/myusername/test

5) Перезапустите Ubuntu VM

reboot

6) После перезагрузки смонтируйте общую папку в виртуальной машине Ubuntu с помощью команды

mount -t vboxsf test /home/myusername/test

7) Проверьте файлы в каталоге / home / myusername / test, они должны совпадать с файлами в папке Windows D: \ test

ls /home/myusername/test

8) Кроме того, вы можете сделать эту общую папку автоматически смонтированной после перезагрузки, для этого вам необходимо добавить следующую строку в файл /home/myusername/.profile вашего пользователя Ubuntu:

echo "sudo mount -t vboxsf test /home/myusername/test" >> /home/myusername/.profile

и дайте пользователю разрешение на монтирование без ввода пароля, открыв команду «sudo visudo» (которая используется для изменения файла / etc / sudoers) и добавьте следующую строку:

myusername ALL = (ALL) NOPASSWD: /bin/mount

Вот и все, после этих шагов мне удалось поделиться файлами с хоста Windows на гостевую машину Ubuntu. Я хотел бы отметить, что сам общий каталог и все файлы внутри него принадлежат пользователю root, но у него есть права 777, поэтому их использование не составляет проблем, так как любой пользователь может делать с ним все, что ему захочется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...