Jak uzyskać dostęp do folderu współdzielonego w VirtualBox?

160

Postępowałem zgodnie z instrukcjami udostępniania folderów między Windows 7 a Ubuntu w VirtualBox.

Mimo to folder pojawia się ze znakiem X i przy próbie jego otwarcia wyświetla się następujący komunikat:

Nie można wyświetlić zawartości folderu

Kiedy wybieram Shared Folderz Devicemenu VirtualBox , wyświetla się następujące ostrzeżenie:

Na stronie systemowej przypisałeś ponad 50% pamięci komputera (2,93 GB) maszynie wirtualnej ...

Jak mogę pomyślnie udostępniać foldery między Windows a Ubuntu za pomocą VirtualBox?

userInThisWorld
źródło
Pamiętaj, że nie możesz udostępniać dowiązań symbolicznych!
Joel Sjögren,

Odpowiedzi:

147

Dostęp do folderów współdzielonych w Virtual Box

Wiersz poleceń

Domyślnie foldery współdzielone VirtualBox są tworzone z uprawnieniami do odczytu / zapisu dla gościa. Można to zrobić z wiersza poleceń na hoście za pomocą:

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

Dodając opcję --readonly, możemy ograniczyć je w celu uzyskania dostępu tylko do odczytu. Użyj tej --transientopcji, jeśli chcesz, aby udziały pojawiały się tylko w bieżącej sesji, ale nie były trwałe dla kolejnych sesji. Istnieją pewne ograniczenia dotyczące folderów współdzielonych (szczegóły w tym pytaniu ). Jeśli spełnione są warunki wstępne, możemy ręcznie zamontować te foldery współdzielone, uruchamiając następujące polecenia w gościu:

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

Oczywiście możemy również użyć różnych opcji montowania, aby montować jako tylko do odczytu lub montować z dostępem tylko do odczytu do roota.

Automatyczne montowanie za pomocą Virtual Box Manager

W przypadku, gdy włączyliśmy automatyczne montowanie podczas tworzenia folderu współdzielonego z Virtual Box Manager, te foldery współdzielone zostaną automatycznie zamontowane w gościu z punktem montowania /media/sf_<name_of_folder>. Aby mieć dostęp do tych folderów, użytkownicy gościa muszą być członkiem grupyvboxsf .

sudo usermod -aG vboxsf userName

Gość będzie musiał ponownie uruchomić, aby dodać nową grupę.

Źródło i dalsze informacje: Instrukcja obsługi wirtualnej skrzynki

Takkat
źródło
17
ustawiłem folder współdzielony w GUI, a także ustawiłem automatyczne podłączanie. zrestartowałem maszynę wirtualną, poszedłem, /mediaale wciąż nic tam nie było
amfibia
2
@amphibient @ laike9m Musiałem zrestartować maszynę wirtualną, aby zobaczyć folder w/media/
David_G
7
To polecenie, sugerowane przez inną odpowiedź tutaj, wydaje się jaśniejsze i ma lepszą wydajność:sudo adduser your_username vboxsf
Jordan Brough
1
@JordanBrough: całkowicie poprawne - wszystkie drogi prowadzą do Rzymu. Możesz nawet użyć graficznej nakładki users-admin. Polecenie zostało edytowane przez innego użytkownika.
Takkat
Dzięki za odpowiedź .. w poleceniu, o którym wspomniałeś powyżej sudo mount -t vboxsf -o uid=1000,gid=1000 share /home/<user>/vboxshare, nie widzę wzmianki o tym sharename, która jest używana podczas tworzenia folderu współdzielonego przy użyciu VBoxManage sharedfolder add "VM name" --name "sharename" --hostpath "C:\test". Jeśli istnieje wiele folderów współdzielonych .. skąd VirtualBox wie, z którym sharenameskojarzyć folder vboxshare? A może masz na myśli to sharenamesamo, co vboxshare?
alpha_989
121

W rzeczywistości istnieje prosty sposób:

  1. Zainstaluj pakiet rozszerzeń dla VirtualBox.
  2. Uruchom ponownie maszynę wirtualną
  3. Zainstaluj dodatki dla gości w swoim systemie Ubuntu

    • Możesz zamontować włączony ISO /medialub nacisnąć Left Control+D
  4. Restart

  5. Spróbuj uzyskać dostęp /media/sf_your_shared_folder_name. Jeśli nadal nie masz dostępu, oznacza to, że nie należysz do vboxsfgrupy, jak powiedział Nilo. To polecenie rozwiąże problem:

    sudo adduser your_username vboxsf
    
  6. Wyloguj się i zaloguj ponownie, aby zastosować zmiany adduser. Zobacz komentarze kola i atcold poniżej.

  7. Jeśli nadal nie widzisz udostępnionego folderu, musisz go zamontować. Możesz aktywować automount dla folderu współdzielonego w opcjach VirtualBox Manager.
  8. Uruchom ponownie
tataogg
źródło
7
TO. Nie było mnie w grupie użytkowników. Wygląda na to, że powinno to zostać zautomatyzowane przez dodanie gestów lub przynajmniej jasno określone.
AwokeKnowing
1
wydaje mi się, że problemem jest to, że moja nazwa użytkownika nie jest rootem. Powinno to być gdzieś wspomniane
AwokeKnowing
22
WAŻNE: Musisz ponownie uruchomić komputer po zakończeniu połączenia adduser.
kol
5
@kol Nie, wystarczy się wylogować i zalogować ponownie.
Atcold
@Atcold Wylogowanie i ponowne zalogowanie dodaje grupę do bieżącego użytkownika (sesji), ale w moim przypadku nie uruchomiło automatycznego montowania folderu współdzielonego. Zrobił to tylko restart.
scai
83

Najpierw upewnij się, że zainstalowałeś Dodatki dla gości

  1. Uruchom maszynę wirtualną

  2. Urządzenia> Włóż obraz dysku CD z dodatkami gości ... Włóż obraz dysku CD z dodatkami gości ...

  3. Zamontuj dysk CD:

    sudo mount /dev/cdrom /media/cdrom
    
  4. Zainstaluj niezbędne pakiety:

    sudo apt-get install make gcc linux-headers-$(uname -r)
    
  5. Zainstalować:

    sudo /media/cdrom/VBoxLinuxAdditions.run
    

Po drugie, dodaj użytkownika do grupy „vboxsf”:

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

Restart

Pamiętaj, że etykietą folderu udostępnionego jest lpi(na przykład):

Edytuj folder współdzielony

Przygotuj sf_do etykiety. Następnie znajdziesz folder udostępniony w/media/sf_lpi

Wreszcie możesz także utworzyć link do swojego domu. Na przykład:

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

:)

Abdennour TOUMI
źródło
Czy mogę używać folderu współdzielonego z maszyny Wirtualnej Ubuntu bez obrazu dysku twardego, ale tylko z obrazem Live CD? Zasadniczo próbuję dodać dwa napędy CD, jeden z nośnikiem Ubuntu Live CD, a drugi z VBGuestAdditions.iso i uruchomić komputer, a następnie zainstalować VBGuestAdditions w katalogu głównym sprzężenia zwrotnego, a następnie chciałbym mieć dostęp do folder współdzielony.
Sorin Postelnicu
Czy istnieje sposób, aby zobaczyć folder współdzielony przed zamontowaniem, na przykład za pomocą polecenia takiego jak lsblk lub coś takiego?
Sorin Postelnicu
Gdy próbuję wykonać polecenie „sudo mount -t vboxsf mysharename mysharemountpoint”, zawsze otrzymuję: „/sbin/mount.vboxsf: instalacja nie powiodła się z błędem: Brak takiego urządzenia”
Sorin Postelnicu
24

Dodaj folder współdzielony do maszyny wirtualnej za pomocą interfejsu graficznego vBox Upewnij się, że wybierasz opcję automatycznego montowania i ustaw na stałe

Zaloguj się do maszyny wirtualnej przy użyciu konta root

Sprawdź, czy grupa vboxsf istnieje

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

Sprawdź, czy użytkownik nie jest jeszcze w grupie 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)

Dodaj użytkownika nilo do grupy vboxsf

~$ sudo usermod -a -G vboxsf nilo

Sprawdź ponownie grupy użytkowników

~$ 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)

Uruchom ponownie i zaloguj się jako nilo

Udostępniony folder jest teraz dostępny w /media/sf_dropbox(dropbox to nazwa, którą nadałem udziałowi)

NiloVelez
źródło
Reboot pracował dla mnie!
Tarik
10

Udostępnij folder między Host OS-> Windows i Guest OS -> Ubuntu (Virtual box)

Krok 1 Zainstaluj zainstaluj dodatki dla gości z menu VirtualBox idź do Urządzenia-> Zainstaluj dodatki dla gości Spowoduje to zamontowanie wirtualnej płyty CD na / media / cdrom. Jako użytkownik root Otwórz ten folder / media / cdrom, dodając opcję Otwórz za pomocą terminala (kliknij prawym przyciskiem myszy).

Krok 2 Uruchom program VBoxLinuxAdditions.run. Po zakończeniu programu uruchom ponownie VirtualBox.

$ sudo ./VBoxLinuxAdditions.run

Krok 3 Utwórz folder współdzielony. Z menu wirtualnego przejdź do Urządzenia-> Foldery współdzielone, a następnie dodaj nowy folder na liście, ten folder powinien być folderem w systemie Windows, który chcesz udostępnić Ubuntu (Guest OS). Ustaw automatycznie utworzony folder. Przykład -> Utwórz folder na pulpicie o nazwie Ubuntushare i dodaj ten folder.

Krok 4 Po zakończeniu specyfikacji folderów współdzielonych montujemy folder z systemu Ubuntu (Guest OS). Utwórz punkt montowania, ten katalog w Ubuntu, który będzie udostępniać pliki folderowi współdzielonemu z systemu Windows. Uruchom to, aby utworzyć katalog w Ubuntu

$ sudo mkdir ~/Desktop/windowsshare

Krok 5 Po utworzeniu punktu montowania możesz teraz zamontować folder współdzielony. Uruchom to polecenie, aby udostępnić folder:

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

Ubuntushare to nazwa folderu, który dodajemy w sekcji Urządzenia VirtualBox, folder ten znajduje się w systemie Windows (Host OS). ~ / Desktop / windowsshare to katalog w Ubuntu (system operacyjny gościa)

GRATULACJE-> Teraz możesz udostępniać pliki między Windows a Ubuntu. Spróbuj dodać dowolny plik w folderze udostępniania Ubuntu systemu Windows (Host OS). Sprawdź teraz katalog Windowsshare systemu Ubuntu (Guest OS). Plik zostanie odzwierciedlony.

Mój artykuł

Współdzielone b / w Windows i Ubuntu

shaurya uppal
źródło
3
  1. Zainstaluj program o nazwie „Programy i grupa” z Centrum oprogramowania
  2. Wybierz bieżącego użytkownika i kliknij Zarządzaj grupami
  3. Wybierz vboxsf i kliknij „Dodaj”
  4. Restart
Mohamed
źródło
Nie można znaleźć w centrum oprogramowania Mint 17.1, ale menu zawierało użytkowników i grupy, prawda?
russ_hensel
@russ_hensel Mint nie jest oficjalnym smakiem Ubuntu. Zamiast tego zadaj pytanie w Unix i Linux .
wjandrea
1
  1. Utwórz katalog, w którym zamierzasz to zamontować mkdir docs

  2. Zainstaluj dodatki dla gości na maszynie Ubuntu dla gości.

  3. Zamknij gościa Ubuntu, a następnie skonfiguruj go.

  4. W obszarze Pamięć skonfiguruj folder współdzielony i zanotuj to, co ustawiłeś jako nazwę w drugim polu. Na przykład „szalony”. Zaznacz pole wyboru Auto-Mount.

  5. Uruchom gościa Ubuntu.

  6. Tak jak powiedziałeś, tak naprawdę nie będzie dostępny. (To jest kluczowa część twojego pytania.) Zamiast tego znajdziesz ją w miejscu /media/sf_crazy, gdzie „zwariowane” to imię, które jej nadałeś. Będzie także obecny w Twoim domu w reż ~/crazy.

  7. Teraz musisz zrobić jeszcze jeden krok, aby go zamontować:

    sudo mount -o uid=1000,gid=1000 -t vboxsf ~/crazy ~/docs
    
Chris Moschini
źródło
1

Wykonaj następujące kroki po zainstalowaniu dodatków gości. W środowisku hosta systemu Windows 10 na komputerze z systemem Windows musiałem udostępniać foldery.

  1. Kliknij folder prawym przyciskiem myszy, aby go udostępnić
  2. Wybierz „Udostępnij”
  3. Wybierz „Określonych ludzi”
  4. Wybierz Wszyscy, opcje odczytu / zapisu
  5. Na komputerze klienckim Ubuntu uruchom polecenie: sudo adduser xxxxxxx vboxsf

gdzie xxxxxx to nazwa konta użytkownika. Wyloguj się i zaloguj ponownie do Ubuntu.

użytkownik3889404
źródło
0

Na razie (wersja 6.0.10 VirtualBox) istnieją make permanenti auto-mountopcje dla folderu współdzielonego, także mount point( At) w GUI virtualbox. Dla mnie działało:

  1. Na gości Ubuntu: sudo apt-get install virtualbox-guest-utils
  2. Dodaj folder współdzielony w GUI VirtualBox.
  3. Uruchom ponownie system operacyjny gościa

Folder w punkcie podłączenia określonym w GUI został utworzony automatycznie i lspokazał pliki znajdujące się na komputerze z systemem Windows.

Aleksiej Martianow
źródło