it-swarm.xyz

Как смонтировать общую папку VirtualBox?

Какова процедура монтирования общей папки VirtualBox в Linux?

Я пробовал варианты следующей команды монтирования, но продолжаю получать protocol error или другие ошибки монтирования.

Sudo mount -t vboxsf share /home/toto
58
BSalita

Для VirtualBox с гостевой системой Linux это шаги для монтирования общей папки:

  1. Используйте приложение VirtualBox Host, VirtualBox Manager, чтобы указать папки хоста для общего доступа.

  2. Убедитесь, что гостевые дополнения VirtualBox установлены в гостевой VirtualBox.

  3. В гостевой системе Linux команда mount должна показать строку, в которой смонтирован общий ресурс. На это указывает type vboxsf. Проблема заключается в том, что точка монтирования может находиться не там, где нужно, а разрешения - только root. Расположение монтирования по умолчанию находится в /media/sf_.

  4. Вы можете получить доступ к общему ресурсу, указав имя пользователя или группы из 1000, член группы vboxsf. Это делается путем изменения строки vboxsf в /etc/group файл. Может потребоваться перезагрузка.

  5. Вы можете изменить местоположение папки, используя команду VBoxControl. Команда устанавливается при установке гостевых дополнений. Может потребоваться перезагрузка. Например, чтобы изменить точку монтирования с /media/sf_... до /home/toto/sf_... используйте следующую команду для установки гостевой собственности для общей папки VirtualBox:

Набор гостевых свойств Sudo VBoxControl/VirtualBox/GuestAdd/SharedFolders/MountDir/home/toto /

Чтобы подтвердить изменение, используйте get:

Sudo VBoxControl guestproperty get /VirtualBox/GuestAdd/SharedFolders/MountDir

Ссылки:

Информация об общей папке VirtualBox

информация о гостевой собственности VirtualBox

28
BSalita

Хорошо, это немного смущало меня, но я наконец понял, что происходит. Поэтому я решил отдать свои 2 цента в надежде, что это будет более понятным для других, и если я забуду когда-нибудь в будущем:).

Я не использовал имя общего ресурса, который я создал в ВМ, вместо этого я использовал общий ресурс или vb_share когда моя акция называлась wd , так что меня это смутило на минуту.

Сначала добавьте свой общий каталог в поле VM): enter image description here

Какое бы имя вы ни указали здесь, оно будет тем именем, которое вам нужно будет использовать при монтировании в гостевой ОС vm. то есть я назвал мой "wd" для моего западного цифрового паспорта.

Далее в операционной системе guset создайте каталог для вашего монтирования, желательно в вашем домашнем каталоге.

mkdir share

Затем откройте терминал и скопируйте и вставьте следующее или введите его. Вы можете включить общий буфер обмена в Device-> Shared Clipboard-> Bidirectional

Sudo mount -t vboxsf wd ~/share/

Теперь вы сможете копировать файлы между ОС, используя папку "share" в вашем домашнем каталоге.

Надеюсь это поможет!

111
Kyle Coots

При встрече:

mount: Protocol error

после попытки поделиться папками в VirtualBox, например:

$ Sudo mount -o uid=1000,gid=1000 -t vboxsf D_DRIVE ~/Host

это наконец работает для меня:

$ Sudo apt-get install virtualbox-guest-dkms

(Моя настройка: Windows 7 Host, гости: Ubuntu 12.04, 13.10, 14.04; в настоящее время работает VBox 4.3.10 r93012)

20
Gerard

Установите виртуальную коробку дополнений на гостевой ОС. Затем выключите гостевую ОС. Откройте настройки гостя в виртуальной коробке. Затем добавьте общую папку и сохраните настройки. Затем запустите гостевую ОС и для Ubuntu введите команду ниже. Добавляет текущего пользователя в группу vboxsf.

Sudo adduser $ USER vboxsf

перезагрузите гостевую ОС и перейдите в/media/для доступа к общей папке.

5
Jacob Abraham

В гостевой системе VirtualBox для Linux или Mac OS X после установки гостевых дополнений VirtualBox вы можете обнаружить доступные общие папки VirtualBox с помощью следующей команды:

Sudo  VBoxControl  sharedfolder  list

Если ваша домашняя папка внутри вашего гостя содержит папки с тем же именем, что и общие папки VirtualBox, вы можете подключить их автоматически с помощью следующего сценария оболочки:

#!/bin/sh
#-----------------------------------------------------------------------------
# Discover VirtualBox shared folders and mount them if it makes sense
#-----------------------------------------------------------------------------

if  !  type  VBoxControl  > /dev/null;  then
  echo  'VirtualBox Guest Additions NOT found'  > /dev/stderr
  exit 1
fi

MY_UID="$(id -u)"
MY_GID="$(id -g)"

( set -x;  Sudo  VBoxControl  sharedfolder  list; )  |  \
grep      '^ *[0-9][0-9]* *- *'                      |  \
sed  -e 's/^ *[0-9][0-9]* *- *//'                    |  \
while  read  SHARED_FOLDER
do
  MOUNT_POINT="$HOME/$SHARED_FOLDER"
  if  [ -d "$MOUNT_POINT" ];  then
    MOUNTED="$(mount  |  grep  "$MOUNT_POINT")"
    if  [ "$MOUNTED" ];  then
      echo  "Already mounted :  $MOUNTED"
    else
      (
        set -x
        Sudo  mount  -t vboxsf  -o "nosuid,uid=$MY_UID,gid=$MY_GID"  "$SHARED_FOLDER"  "$MOUNT_POINT"
      )
    fi
  fi
done
3
Etienne URBAH

Когда вы получаете следующую ошибку: /sbin/mount.vboxsf: монтирование не удалось с ошибкой: Ошибка протокола

К сожалению, это означает, что вы используете имя общего ресурса по умолчанию, или имя общего каталога хоста совпадает с именем смонтированного гостевого общего ресурса. В данном случае это "доля". Просто создайте другую общую папку, то есть "vb_share", а затем просто выполните:

mount -t vboxsf vb_share/home/<пользователь>/Host

1
magiccrafter
  • Установите Vbox Additions (файл ISO или скачайте его)
  • Создайте каталог с любым именем в двух системах (mkdir share, например )
  • подключиться с помощью "общих папок VBox" к общей папке в исходном sys
  • используйте команду для подключения вашей папки:
    Sudo mount -t vboxsf name_of_folder_linked ~/name_of_folder_guest/
1
Luciano D'Alessandre

Настройка: VirtualBox 4.3.26, Win 7 SP1 Host, Debian jessie 8.0 (стабильный) гость.

В VirtualBox Manager выберите Настройки общих папок ... в раскрывающемся меню Устройства.

В появившемся всплывающем окне выберите Папки машины в Список папок, а затем нажмите кнопку "Добавить определение новой общей папки" (синяя папка с зеленым " + "значок знака справа от Список папок).

В появившейся всплывающей форме Добавить общий доступ нажмите кнопку со стрелкой вниз в поле Путь к папке, а затем выберите Другое. A Browse For Folder появится всплывающее окно.

(В моем случае я только что добавил еще один жесткий диск на свою рабочую станцию ​​для использования в качестве выделенного общего ресурса, уже отформатированного для NTFS, с именем тома "share" и смонтированным как "G:". Поэтому я щелкнул стрелку Рядом с Компьютер, выбранный диск G:, а затем нажмите кнопку OK .)

(В вашем случае вы должны выбрать папку или диск, которые вы хотите отправить, а затем нажать кнопку OK .)

Когда вы сделали свой выбор и нажали кнопку OK , VirtualBox Manager заполнит Путь к папке и Имя папки поля формы Добавить общий доступ. Оставьте поле Путь к папке в одиночку, но вы можете изменить Имя папки, если хотите - просто обязательно запомните его на потом.

Завершите заполнение формы Add Share, установив флажок Make Permanent, но не забудьте оставить флажок Auto-mount - мы позаботимся о монтаже позже. (И, конечно же, если вы хотите сделать папку или диск доступными только для чтения, тогда установите флажок Только для чтения.) Затем нажмите OK кнопка.

Недавно настроенный общий ресурс теперь должен отображаться как запись в разделе Папки машины в Список папок. Нажмите кнопку OK .

Чтобы смонтировать этот общий ресурс во время загрузки (запуска), нам нужно добавить строку определения монтирования в/etc/fstab в нашей гостевой установке Debian jessie. Это редактирование должно быть сделано от имени пользователя root или через Sudo, например:

Sudo nano /etc/fstab

(Я лично использовал vi, но поскольку nano является редактором по умолчанию в Debian jessie, я указал его в приведенном выше примере.)

Чтобы смонтировать этот общий ресурс в моем домашнем каталоге, для которого в качестве владельца и группы указаны мои личные UID и GID, я добавил следующее определение в/etc/fstab:

share /home/conib/share vboxsf comment=systemd.automount,uid=conib,gid=conib,noauto 0 0

(Обратите внимание, что вокруг символов "=", "." Или "," нет пробелов.)

Определение/etc/fstab имеет вид

<Device> <Mount Point> <Type> <Options> <Dump> <Pass>

(Обратите внимание, что между полями определения должны быть пробелы - пробел (ы) и/или табуляция (и)), но не должно быть пробелов внутри поля.)

В поле "Устройство" должно быть указано имя папки, которое мы указали через VirtualBox Manager Добавить общий доступ. Я изменил значение по умолчанию "G_DRIVE" на "поделиться".

"Точка монтирования" - это спецификация пути к каталогу, которая уже должна существовать, но должна быть пустой. (То есть все, что уже присутствует в этом каталоге, будет скрыто тем, что вы монтируете поверх него.) Я создал новый пустой подкаталог с именем "share" в моем домашнем каталоге.

"Тип" - это "vboxsf".

"Опции" (comment = systemd.automount, uid = conib, gid = conib, noauto) были хитрыми, и для их настройки потребовалось немало усилий.

Установите "Дамп" на 0, если вы не уверены, что хотите установить что-то еще.

И поскольку мы не хотим, чтобы fsck проверял этот ресурс, установите для "Pass" также 0.

Когда вы добавили строку определения в/etc/fstab, перезагрузите гостевую систему Debian и убедитесь, что вы видите файлы и подпапки вашего общего ресурса.

НТН.

0
conib