26

Я хотел бы поделиться папкой из гостевой системы Linux с хостом Windows (с доступом для чтения и записи, если это возможно) в VirtualBox.

Я прочитал в этих двух ссылках: здесь и здесь, что это можно сделать с помощью Samba, но я немного растерялся и мне нужно больше информации о том, как действовать.

До сих пор мне удалось настроить два сетевых адаптера (один NAT и один только для хоста) и установить Samba на гостевой компьютер Linux, но у меня есть следующие вопросы:

  1. Что мне нужно ввести в samba.conf чтобы поделиться папкой из гостевой системы Linux? (учебник, представленный в одной из ссылок выше, объясняет только, как делиться домашними каталогами)
  2. Существуют ли какие-либо команды Samba, которые мне нужно запустить на гостевой системе, чтобы разрешить общий доступ?
  3. Как мне убедиться, что эти папки доступны только для операционной системы хоста, а не в Интернете?
  4. Как только гостевая система Linux настроена, как мне получить доступ к каждой отдельной общей папке с хоста Windows? Я прочитал, что для этого мне нужно смонтировать диск в Windows, но я использую логины Samba или Linux, также я использую localhost? или мне нужно для этого настроить IP?

Спасибо!

3 ответа3

30
  1. Это примеры того, как вы определяете общий ресурс в вашем smb.conf

    [readonly-share]
       comment = some share
       path = /this/folder/is/shared
       guest ok = no
       browseable = yes
       read only = yes
    
    [read-write-share]
       comment = another share
       path = /this/folder/is/writable
       guest ok = no
       browseable = yes
       read only = no
       create mask = 0777
       directory mask = 0777
       force create mode = 777
       force directory mode = 777
       force security mode = 777
       force directory security mode = 777
    
  2. После того, как вы отредактируете smb.conf, запустите "testparm", чтобы проверить ваши изменения, затем дайте демону перечитать конфигурацию с помощью "service smbd restart"

  3. (Не уверен насчет этого)
    С виртуальной сетевой картой "NAT" и "только для хоста" вы должны быть в безопасности. Чтобы получить доступ к службам гостя с любого другого компьютера, кроме хоста, вам потребуется настроить переадресацию портов на хосте или настроить "мостовую" виртуальную сетевую карту.

  4. Тип аутентификации может быть установлен в smb.conf. Значение по умолчанию в Samba Ubuntu устанавливает значение «security = user», что означает, что вы должны проходить аутентификацию с использованием действительного аккаунта пользователя. (если вы не установили "guest ok = yes")

    Чтобы получить доступ к общим ресурсам с вашего хоста Windows, вы должны использовать IP-адрес гостя. VBox NAT являются адресами использования, такими как «10.0.2.15». Чтобы получить доступ к общему ресурсу "только для чтения" с хоста, вы можете написать такой URI в адресной строке Проводника:

    \\10.0.2.15\readonly-share
    
1

В ответе, который дает bytesum, readonly-share должен быть не полным путем, а путем удаления его части $ HOME. То есть: в моем случае я тестировал, чтобы поделиться /home /me /Documents; моя машина называется MYMACHINE. Поэтому в Windows7 мне пришлось указывать при подключении сетевого диска:

\\MYMACHINE\Documents

обратите внимание на отсутствие /home /me. Задача решена.

-1
**[Global Section]**
workgroup=WORKGROUP[your workgroup name here mine is"WORKGROUP"]
interfaces=your guest ip here
allow hosts=windows ip here
**[Share Details]**
path=samba share path
browsable=yes
readable=yes

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .