Установить VirtualBox SharedFolder в виртуальную машину Ubuntu при загрузке

15

У меня есть виртуальная машина Ubuntu, работающая в VirtualBox.
У меня есть общая папка, настроенная как myshare У меня есть папка, созданная в моем домашнем каталоге ( ~/jamesw ) как host . используя строку sudo mount -t vboxsf myshare host из моего домашнего каталога в терминале, правильно монтирует диск, но если я перезагружу его, он снова не будет установлен.

Это VM, которую я использую для запуска простого веб-сервера, и я бы хотел, чтобы этот Share был установлен каждый раз при загрузке. Есть какой-либо способ сделать это? Особенно учитывая, что для этого требуется sudo?

    
задан James P. Wright 08.07.2011 в 17:47
источник

4 ответа

22

Автоматическое монтирование общих папок с помощью Virtual Box Manager

От Virtual Box > 4.0 мы можем автоматически монтировать общие папки на виртуальной машине. Чтобы сделать это для Ubuntu, мы

  • необходимо установить гостевые дополнения в гостевой ОС
  • убедитесь, что пользователи находятся в группе vboxsf
  • определить общие папки из диспетчера виртуальных ящиков

Щелкните правой кнопкой мыши на своей виртуальной машине и выберите Настройки- > Общие папки . В этом списке будут перечислены существующие общие ресурсы или вы можете определить новую общую складку, щелкнув значок синей папки с зеленым знаком + в верхней правой части:

ВыберитепапкуизраскрывающегосяменюПутькпапкеиливыберитеОпределитедругоедляселекторафайлов,вкоторомперечисленыфайловаясистемахоста.Выберитеимядляобщегоресурса(например,myshares).ОтметивAuto-mount,этапапкабудетвсегдамонтироватьсявгостевойдиректорииUbuntu/media/sf_myshares(префиксsf_будетавтоматическидобавлен).

ВкачествеальтернативыдляопределенияобщихпапоквтекущейгостевойОСмыможемвыбратьDevices->Общиепапкивменюокнадиспетчеравиртуальныхящиков:

Отметив Make Permanent , эти общие папки также будут доступны при следующей загрузке и будут установлены при добавлении Auto-mount .

    
ответ дан Takkat 08.07.2011 в 23:05
источник
7

Я не думаю, что использование / etc / fstab будет работать (это не сработало для меня), потому что этот файл обрабатывается до того, как модуль SF загружен и не сможет подключить этот ресурс, см. HOWTO: Использование общих папок 1 .

    
ответ дан Kenneth Gulbrandsøy 06.06.2012 в 10:44
2

Это еще не полный ответ, но больше похоже на рекомендации по двум подходам, которые у вас есть:

1 - Вы можете отредактировать /etc/fstab и добавить туда это монтирование. Вам нужно будет перевести ваш параметр mount в синтаксис fstab. Дикое предположение было бы похоже на /home/jamesw/host vboxsf myshare,umask=002,uid=<youruser>,gid=plugdev 0 0 . Вам понадобится sudo , чтобы отредактировать ваш fstab, но после его завершения он будет автоматически установлен при загрузке. Поскольку это выполняется до того, как вы войдете в систему, вам понадобится абсолютный путь к точке монтирования (следовательно, / home / jamesw / host), вы не можете использовать $HOME или ~ . Подсказка: папка «host» не требуется. Если он находится в fstab, mount создаст его для вас.

2 - Вместо монтирования можно использовать fusermount . Синтаксис подобен (но не идентичен, поэтому вам все равно нужно перевести параметры монтирования). Fusermount требует, чтобы ваша точка монтирования находилась где-то внутри вашего дома, но самым большим преимуществом является то, что вам не понадобится sudo . И mount будет доступен в Nautilus (как если бы это был CD или USB-ключ). После того, как вы получите правильные параметры и протестируете его, вы можете добавить его в свой ~/.profile , который запускается каждый раз при входе в систему.

РЕДАКТИРОВАТЬ: Я предполагаю, что VirtualBox не требует, чтобы машина фактически запускалась для обмена папками, или что она запущена и запущена, прежде чем вы входите в систему

    
ответ дан MestreLion 08.07.2011 в 20:54
0

Ubuntu 16.04 гостевая и общая доступ к папкам, доступная обычным пользователям

Чтобы автоматизировать и получить доступ к этим папкам в качестве обычного пользователя, необходимы определенные шаги.

  1. Не используйте официальные дополнения для гостей. Вместо этого установите virtualbox-guest-dkms .

    sudo apt-get install -y virtualbox-guest-dkms
    sudo usermod -aG vboxsf $(whoami)
    sudo VBoxControl guestproperty set /VirtualBox/GuestAdd/SharedFolders/MountDir ~/vbshare
    
  2. Добавьте общие папки с Auto-mount и Permanent .

  3. Перезапустить vm.
  4. Проверьте, установлены ли какие-либо папки vb:

    mount | grep vboxsf

  5. Если это так, измените право собственности ~/vbshare на себя.

    sudo chown $(whoami):$(whoami) ~/vbshare
    

Добавить новые общие папки без перезагрузки VM

  1. Добавить общую папку.
  2. Проверьте, можете ли вы найти его в следующей команде:

    sudo VBoxControl sharedfolder list

  3. Если это так, создайте каталог и установите

    mkdir ~/vbshare/newfolder
    sudo mount -t vboxsf newfolder ~/vbshare/newfolder
    
ответ дан rofrol 30.08.2016 в 03:57