Общие папки позволяют вам получить доступ к файлам хостовой системы из гостевой, точно так же как в сети Windows, но только без необходимости настройки сети. Общие папки создаются физически на хосте и затем используются совместно с гостем; для реализации этого механизма используется специальный сервис на хост системе и драйвер для файловой системы гостя, которые поставляются с VirtualBox.
Для использования этого механизма должны быть установлены гостевые дополнения. Однако, общие папки поддерживаются только в гостевых системах Windows (2000 и старше), Linux и Solaris.
Чтобы использовать папку хостовой системой в виртуальной машине VirtualBox, вы должны указать путь к папке и выбрать "имя папки", которое будет использоваться гостем для доступа к ней. Следлвательно, требуется сначала создать папку на хосте, а затем в госте подключиться к ней.
Существует несколько способов создания общих папок для нужной виртуальной машины:
В графическом пользовательском интерфейсе работающей ВМ, вы можете выбрать "Общие папки" из меню "Устройства" или кликнуть правой кнопкой мыши на иконке папки в строке состояния в нижнем правом углу окна виртуальной машины.
Если ВМ не запущена, вы можете настроить общие папки в диалоге "Свойства" каждой виртуальной машины.
В командной строке вы можете создать общие папки используя команду VBoxManage; см. Глава 8, Описание VBoxManage . Например:
VBoxManage sharedfolder add "VM name"
--name "sharename" --hostpath "C:\test"
Существует два типа общих папок:
Общие папки доступные только для виртуальных машин, для которых они созданы;
Временные общие папки, которые могут быть добавлены и удалены во
время выполнения и не сохраняющиеся после остановки ВМ; для работы с
ними используется опция --transient
в командной строке.
По умолчанию через общую папку, доступ к файлам на хост системе
получается в режиме чтения и записи. Для установки доступа гостю в
режиме только чтения, создавайте общие папки только для чтения. Это
можно сделать с использование графического интерфейса или в командной
строке путем добавления параметра
--readonly
команды создания общей папки VBoxManage.
Теперь вы можете подключить общую папку в виртуальной машине таким же образом как и подключение обычной сетевой папки:
В гостевой системе Windows, начиная с VirtualBox 1.5.0, общие папки отображаются проводнике Windows Explorer. Для подключения общей папки в гостевой Windows , запустите проводник Windows Explorer и перейдите в "My Networking Places" -> "Entire Network" -> "VirtualBox Shared Folders". Кликнув правой кнопкой мыши на общей папке и выбрав из выпадающего меню пункт "Подключить сетевой диск", вы сможете связать общую папку с именем (буквой,символом) дискового устройства.
Так же возможно это сделать ,используя командную строку Windows:
net use x: \\vboxsvr\sharename
Замените "x:" буквой, которую вы хотите использовать для
сетевого диска на который будет отображаться общая папка и sharename
именем папки указанным в
команде VBoxManage
.
В госте Linux, используете команду:
mount -t vboxsf [-o OPTIONS] sharename mountpoint
В Solaris:
mount -F vboxfs [-o OPTIONS] sharename mountpoint
Замените sharename
(с
учетом регистра) именем сетевой папки указанным в VBoxManage
или в графическом интерфейсе
и mountpoint
путем куда вы хотите
смонтировать общую папку в гостевой системе (например, /mnt/share
). Применяются обычные
правила монтирования, т.е. если каталог не существует его необходимо
сначала создать.
Ниже приведен пример монтирования общей папки для пользователя "jack" в OpenSolaris:
$id
uid=5000(jack) gid=1(other)
$mkdir /export/home/jack/mount
$pfexec mount -F vboxfs -o uid=5000,gid=1 jackshare /export/home/jack/mount
$cd ~/mount
$ls
sharedfile1.mp3 sharedfile2.txt
$
Помимо стандартных опций представляемых командой mount
, доступны дополнительные:
iocharset CHARSET
для установки кодировки используемой в операциях I/O (по умолчанию utf8 ) и
convertcp CHARSET
для указания кодировки используемой для отображения имени общей папки(по умолчанию utf8).
Все общие опции монтирования (описанные в справочных страницах
man mount) также доступны. Особенно полезны опции uid
, gid
и mode
, т.к. они позволяют
настроить доступ к данным обычных пользователей (в режимах чтения и
записи) даже если только root может монтировать устройства.