Як отримати доступ до спільної папки у VirtualBox?


160

Я дотримувався кроків для спільного використання папок між Windows 7 та Ubuntu у VirtualBox.

Незважаючи на те, що папка з’являється зі знаком X, і при спробі її відкрити таке повідомлення:

Не вдалося відобразити вміст папки

Коли я вибираю меню Shared FolderVirtualBox Device, з'являється таке попередження:

На системній сторінці ви виділили більше 50% пам’яті вашого комп’ютера (2,93 ГБ) віртуальній машині ...

Як я можу успішно ділитися папками між Windows та Ubuntu за допомогою VirtualBox?


Зауважте, що ви не можете ділитися символьними посиланнями!
Joel Sjögren

Відповіді:


147

Доступ до спільних папок у віртуальному вікні

Командний рядок

За замовчуванням спільні папки VirtualBox створюються з дозволом для читання / запису гостя. Це можна зробити з командного рядка на хості за допомогою:

VBoxManage sharedfolder add "VM name" --name sharename --hostpath "C:\test"

Додавши опцію, --readonlyми можемо обмежити їх для доступу лише для читання. Використовуйте --transientопцію, якщо ви хочете, щоб акції відображалися лише в цьому сеансі, але не були збережені для наступних сеансів. Існують деякі обмеження для спільних папок (детальніше див. Це питання ). Якщо передумови виконані, ми можемо встановити ці спільні папки вручну, виконавши наступні команди в гості:

mkdir /home/<user>/vboxshare
sudo mount -t vboxsf -o uid=1000,gid=1000 sharename /home/<user>/vboxshare  

Звичайно, ми також можемо використовувати різні параметри кріплення для монтажу як читання / лише чи монтування з доступом для читання лише до root.

Автоматичне кріплення через віртуальний менеджер вікон

У випадку, якщо ми ввімкнули автоматичне встановлення під час створення спільної папки з Virtual Box Manager, ці спільні папки автоматично змонтуються в гості з точкою монтажу /media/sf_<name_of_folder>. Щоб мати доступ до цих папок, користувачі в гостях повинні бути членами групиvboxsf .

sudo usermod -aG vboxsf userName

Гість повинен буде перезапустити, щоб додати нову групу.

Джерело та подальше читання: Посібник користувача Virtual Box


17
я встановив загальну папку в графічному інтерфейсі, а також встановив автоматичну гору. перезапустив ВМ, поїхав, /mediaале все ще нічого там
амфібій

2
@amphibient @ laike9m Мені довелося перезапустити VM, щоб побачити папку/media/
David_G

7
Ця команда, запропонована іншою відповіддю тут, здається яснішою і має кращий результат:sudo adduser your_username vboxsf
Джордан Бро

1
@JordanBrough: абсолютно правильно - всі шляхи ведуть до Риму. Можна навіть використовувати графічний фронт users-admin. Команду редагував інший користувач.
Таккат

Дякуємо за вашу відповідь .. У команді, яку ви згадали вище sudo mount -t vboxsf -o uid=1000,gid=1000 share /home/<user>/vboxshare, я не бачу згадки про те sharename, яке використовується під час створення спільної папки за допомогою VBoxManage sharedfolder add "VM name" --name "sharename" --hostpath "C:\test". Якщо є декілька спільних папок .. як VirtualBox знає, з яким sharenameпов’язати папку vboxshare? Або ти маєш на увазі, що sharenameмає бути те саме, що vboxshare?
alpha_989

121

Насправді є простий спосіб зробити це:

  1. Встановіть розширення для VirtualBox.
  2. Перезавантажте свою віртуальну машину
  3. Встановіть додатки для гостей у своєму гостьовому Ubuntu

    • Ви можете встановити ISO, який увімкнено, /mediaабо натиснути Left Control+D
  4. Перезавантажте

  5. Спробуйте отримати доступ /media/sf_your_shared_folder_name. Якщо ви все ще не маєте доступу, це означає, що ви не належите до vboxsfгрупи, як сказала Ніло. Ця команда вирішить вашу проблему:

    sudo adduser your_username vboxsf
    
  6. Вийдіть та увійдіть знову, щоб застосувати зміни adduser. Дивіться коментарі kol та atcold нижче.

  7. Якщо ви все ще не можете побачити спільну папку, вам доведеться її встановити. Ви можете активувати автоматичний запуск спільної папки в параметрах VirtualBox Manager.
  8. Перезапустіть ще раз.

7
ЦЕЙ. Я не був у групі користувачів. Схоже, це повинно бути автоматизовано доповненнями жестів або принаймні чітко зазначено.
AwokeKnowing

1
Здається, проблема для мене полягає в тому, що моє ім'я користувача не є root. Про це треба було десь згадати
AwokeKnowing

22
ВАЖЛИВО: Ви повинні перезавантажити комп'ютер після дзвінка adduser.
кол

5
@kol Ні, вам потрібно лише увійти та знову увійти.
Atcold

@Atcold Вихід із системи та знову додає групу до поточного користувача (сеансу), але в моєму випадку не запустив автоматичне встановлення спільної папки. Зробив лише перезавантаження.
scai

83

Спочатку переконайтеся, що ви встановили додатки для гостей

  1. Запустіть свій VM

  2. Пристрої> Вставити зображення CD з додатками для гостей ... Вставити зображення CD з додатками для гостей ...

  3. Встановіть компакт-диск:

    sudo mount /dev/cdrom /media/cdrom
    
  4. Встановіть необхідні пакети:

    sudo apt-get install make gcc linux-headers-$(uname -r)
    
  5. Встановити:

    sudo /media/cdrom/VBoxLinuxAdditions.run
    

По-друге, додайте свого користувача до групи "vboxsf":

~$ echo $USER; 
ahmed
~$ sudo usermod -a -G vboxsf ahmed

Перезавантажте

Знайте, що мітка вашої спільної папки lpi(наприклад):

Редагування спільної папки

Додайте sf_до етикетки. Потім ви знайдете свою спільну папку під/media/sf_lpi

Нарешті, ви також можете створити посилання на свій дім. Наприклад:

ln -s /media/sf_lpi /home/ahmed/lpi

:)


Чи можу я використовувати спільну папку з Ubuntu VM без зображення жорсткого диска, але лише із зображенням Live CD? В основному я намагаюся додати два дисководи CD, один тримає компакт-диск Ubuntu Live, а другий, який тримає VBGuestAdditions.iso, і запустити машину, потім встановити VBGuestAdditions в корені петлі, і тоді я хотів би отримати доступ загальна папка.
Сорін Постельніку

Також, чи є спосіб побачити папку, що поділяється, перед монтажем, наприклад, використовуючи команду на зразок lsblk чи щось таке?
Сорін Постельніку

Коли я намагаюся зробити "sudo mount -t vboxsf mysharename mysharemountpoint", я завжди отримую: "/sbin/mount.vboxsf: монтаж не вдався з помилкою: Немає такого пристрою"
Sorin Postelnicu

24

Додайте спільну папку до віртуальної машини за допомогою графічного інтерфейсу vBox. Переконайтесь, що виберіть автоматичний засіб та зробіть постійним

Увійдіть до віртуальної машини за допомогою кореневого облікового запису

Перевірте, чи існує група vboxsf

~$ grep vboxsf /etc/group
vboxsf:x:125:

Перевірте, чи користувач ще не входить до групи vboxsf

~$ id nilo
uid=1000(nilo) gid=1000(nilo) groups=1000(nilo),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),109(lpadmin),124(sambashare)

Додайте користувача nilo до групи vboxsf

~$ sudo usermod -a -G vboxsf nilo

Перевірте ще раз групи користувачів

~$ id nilo
uid=1000(nilo) gid=1000(nilo) groups=1000(nilo),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),109(lpadmin),124(sambashare),125(vboxsf)

Перезавантажте та увійдіть як nilo

Тепер спільна папка доступна для доступу /media/sf_dropbox(Dropbox - це ім'я, яке я дав спільно використовувати)


Перезавантаження працювала на мене!
Тарік

10

Поділитися папкою між Host OS-> Windows та Guest OS -> Ubuntu (віртуальне поле)

Крок 1. Встановіть інсталяцію гостьових доповнень з меню VirtualBox, перейдіть до Пристрої-> Встановити додатки для гостей. Це зможе встановити віртуальний компакт-диск на / media / cdrom. Як користувач root відкрийте папку / media / cdrom додану папку, використовуючи опцію Open з терміналом (клацніть правою кнопкою миші)

Крок 2 Запустіть програму VBoxLinuxAdditions.run. Коли програма завершить перезавантаження вашого VirtualBox.

$ sudo ./VBoxLinuxAdditions.run

Крок 3 Створіть загальну папку. З віртуального меню перейдіть до пристроїв-> спільні папки, а потім додайте нову папку до списку, ця папка має бути тією, у вікнах якої ви хочете поділитися з Ubuntu (гостьовою ОС). Зробіть створену папку автоматичним встановленням. Приклад -> Створіть папку на робочому столі з ім'ям Ubuntushare та додайте цю папку.

Крок 4 Після завершення специфікації спільної папки, ми монтуємо папку з Ubuntu (Guest OS). Створіть точку монтажу - це каталог в Ubuntu, який надаватиме файли спільній папці з Windows. Запустіть це, щоб створити каталог в Ubuntu

$ sudo mkdir ~/Desktop/windowsshare

Крок 5 Зі створеною точкою монтажу тепер ви зможете змонтувати спільну папку. Запустіть цю команду для спільного використання папки:

$ sudo mount -t vboxsf Ubuntushare ~/Desktop/windowsshare

Ubuntushare - це назва папки, яку ми додаємо в розділ Devices VirtualBox. Ця папка знаходиться в Windows (Host OS). ~ / Desktop / windowsshare - це каталог в Ubuntu (Guest OS)

ЗВ'ЯЗКИ-> Тепер ви можете ділитися файлами між Windows та Ubuntu. Спробуйте додати будь-який файл у Windows (Host OS) папку спільного доступу до Ubuntu, перевірте Ubuntu (Guest OS) windowsshare каталог, як файл буде відображено.

Моя стаття

Спільні папки, ч / б вікна та ubuntu


3
  1. Встановіть програму під назвою "Програми та група" з Центру програмного забезпечення
  2. Виберіть поточного користувача та натисніть Управління групами
  3. Виберіть vboxsf і натисніть "Додати"
  4. Перезавантажте

Не вдалося знайти в центрі програмного забезпечення Mint 17.1, але в меню були користувачі та групи, це це ??
russ_hensel

@russ_hensel Монетний двір не є офіційним ароматом Ubuntu. Задайте запитання замість Unix & Linux .
wjandrea

1
  1. Створіть реж, куди ви збираєтесь це монтувати, як mkdir docs

  2. Встановіть додатки для гостей у гостьову машину Ubuntu.

  3. Вимкніть гість Ubuntu, а потім налаштуйте його.

  4. У сховищі встановіть спільну папку та занотуйте те, що ви вказали як ім'я у другому полі. Наприклад "божевільний". Поставте прапорець Автомобільне встановлення

  5. Завантажте гість Ubuntu.

  6. Як ви сказали, він фактично не буде доступний. (Це ключова частина вашого запитання.) Натомість ви знайдете, що він присутній на /media/sf_crazy, де 'crazy' - це ім'я, яке ви дали йому. І він також буде присутній у вашому домашньому режисері ~/crazy.

  7. Тепер вам потрібно зробити ще один крок, щоб фактично його встановити:

    sudo mount -o uid=1000,gid=1000 -t vboxsf ~/crazy ~/docs
    

1

Виконайте ці дії після встановлення додатків для гостей. Для хостового середовища Windows 10 на машині Windows мені довелося ділитися папками.

  1. Клацніть правою кнопкою миші папку, щоб поділитися
  2. Виберіть "Поділитися"
  3. Виберіть "Конкретні люди"
  4. Вибрали всіх, читайте / пишіть варіанти
  5. На клієнті Ubuntu запускається команда: sudo adduser xxxxxxx vboxsf

де xxxxxx - ваше ім’я облікового запису користувача. Вийдіть із системи та поверніться до Ubuntu.


0

На сьогоднішній день (версія 6.0.10 VirtualBox) є make permanentі auto-mountваріанти спільної папки, також mount point( At) в GUI virtualbox. Для мене працювали наступні:

  1. У гості Ubuntu: sudo apt-get install virtualbox-guest-utils
  2. Додайте спільну папку в графічний інтерфейс VirtualBox.
  3. Перезапустіть гостьову ОС

Папка в точці кріплення, зазначена в графічному інтерфейсі, була створена автоматично і lsпоказувала файли, розміщені на хості Windows PC.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.