Совместное использование папки с хоста Windows гостю Freebsd

10

Чего я пытаюсь достичь:

  • У меня (дома) ПК с установленной Windows 7
  • Я хотел бы запустить Unix в Virtual Box, потому что я более привык к разработке / написанию сценариев на нем

В данный момент я остановился на Freebsd, и мне удалось установить его и настроить сеть. Следующим шагом является совместное использование папки из Windows во Freebsd, чтобы я мог легко редактировать файлы как в Windows, так и во Freebsd. К сожалению, кажется, что это нужно сделать.

Я порылся в сети и нашел два разных способа:

Я установил гостевые дополнения в freebsd, используя pkg_add -r virtualbox-ose-additionsустановку достаточно, и я отредактировал, /etc/rc.confдобавив две предложенные строки: vboxguest_enable="YES"и vboxservice_enable="YES"и перезагрузил компьютер.

Это не работает. Команда для монтирования системы заканчивается ошибкой:

# mount -t vboxsf shared /home/myuser/shared
mount: shared : Operation not supported by device

где shared- имя папки, которую я настроил в настройках своего виртуального ящика для этой виртуальной машины.

Действительно ли возможно использовать vboxsfтип файловой системы в freebsd? Некоторые комментарии, кажется, предполагают, что это не поддерживается, но найти актуальную информацию сложно.

Затем я перешел к подходу самбы. Я в основном следовал за руководством, я связал это. К сожалению, это заканчивается:

# mount_smbfs -N -I 192.168.56.1 //winuser@winmachinename/Shared /mnt/shared
mount_smbfs: unable to open connection: syserr = RPC struct is bad

где Shared- имя общей папки, которую я настроил с помощью windows, доступной для winuserочевидно. Пинг работает.

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

edit: работает из PuTTY Я не видел, чтобы некоторые сообщения печатались в консоли:

smb_maperror: Unmapped error 3:31
smb_co_lock: recursive lock for object 1

оба появляются несколько раз. / конец редактирования

Если прямой обмен файлами не работает, есть идеи, как заставить samba это сделать? Статья предполагает, что это уже сделано некоторыми, по крайней мере.

Техническая информация:

  • Ведущий: Windows 7 Familial Edition (последняя версия)
  • Гость: FreeBSD 9.0-RELEASE # 0: вт 3 января 07:15:25 UTC 2012 root@obrian.cse.buffalo.edu: / usr / obj / usr / src / sys / GENERIC i386
  • Виртуальная коробка: 4.1.16 r78094

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

Я также открыт для изменения систем. Мне нравится философия freebsd, но если она не работает, у меня нет никаких сомнений по поводу перехода на Linux.

РЕДАКТИРОВАТЬ :

Этот вопрос сейчас представляет чисто теоретический интерес. Я переключился на использование Ubuntu Server и смог установить его без samba, поскольку vboxsf хорошо поддерживается.

Матье М.
источник
Вы пробовали программу smbclient из пакета samba?
arved
@arved: нет, я не сделал. Можно ли настроить автосмонтирование через клиент smb? (В идеале я бы предпочел не самбу, но эй, если для работы требуется самба ...)
Матье М.
Я не думаю, что это возможно, чтобы смонтировать. Но, по крайней мере, вы можете убедиться, что в Windows Share нет неправильной конфигурации
arved

Ответы:

5

Общие папки VirtualBox по-прежнему не поддерживаются во FreeBSD.

Коммиттер портов FreeBSD подтвердил это в списках рассылки FreeBSD по состоянию на (2014-06-24):

Общие папки для гостей FreeBSD пока не поддерживаются [...]. Существует некоторый черновой код и модуль ядра для него, но он пока не работает.

Если вы хотите следить за состоянием порта, пожалуйста, ищите списки рассылки. На #freebsd-vboxFreenode есть также канал IRC. Он был размещен в списке рассылки freebsd-hackers внизу этого сообщения . Вы найдете разработчиков там.

Наконец, вот что virtualbox-ose-additionsпорт поддерживает в настоящее время в соответствии с главой 22.2 Руководства FreeBSD на сегодняшний день:

Гостевые дополнения VirtualBox ™ обеспечивают поддержку для:

  • Обмен буфером обмена.
  • Интеграция указателя мыши.
  • Синхронизация времени хоста.
  • Масштабирование окна.
  • Бесшовный режим.

Как видите, для FreeBSD пока нет поддержки общих папок.

Глава 4.3 руководства VirtualBox гласит:

Общие папки поддерживаются гостями Windows (2000 или новее), Linux и Solaris.

Еще раз нет FreeBSD. Используйте акции SMB сейчас, следуя инструкциям, упомянутым другими.

Фрэнсис Харбисон
источник
4

Убедитесь, что вы настроили общий доступ к папке Windows для пользователя, которого вы хотите использовать для общего доступа на freebsd.

Мне нравится добавлять следующее в / etc / hosts для простоты использования.

<ip address of server>  vboxhost
eg.
192.168.56.1    vboxhost

Сначала проверьте монтирование папки:

mount_smbfs -I vboxhost //username@nameofwindowsbox/foldername /mnt

Если это правильно, вам будет предложено ввести пароль пользователя Windows.

Чтобы установить его при загрузке, добавьте следующее в / etc / fstab

//username@nameofwindowsbox/foldername  /mnt smbfs  rw,noauto  0 0

Он должен быть установлен каждый раз при загрузке

Если вы не хотите запрашивать пароль, добавьте это в /etc/nsmb.conf:

[default]
[NAMEOFWINDOWSBOX]              
addr=<ip address of host>
[NAMEOFWINDOWSBOX:USERNAME]
password=<myPassword>
Пит
источник
Привет, Пит. Спасибо за Ваш ответ. На самом деле я поменял оружие и пошел с Ubuntu Server, так как предпочел решение не от samba, а FreeBSD пока не поддерживает vboxfs.
Матье М.
1
Вам не нужно устанавливать samba для вышеупомянутого решения, оно работает из установки FreeBSD по умолчанию.
Пит
Я бы порекомендовал дать FreeBSD еще один шанс, если у вас есть время, так как я нашел его функцию очень полезной для разработки. На данный момент у меня 5 джейлов: www (apache22 + php53), www (apache22 + php54), MySQL, PostgreSQL, email-сервер. Я нашел это бесценным с точки зрения тестирования различных версий PHP и баз данных
Пит
Кроме того, поскольку FreeBSD имеет много терминалов по умолчанию, alt + f1 -> alt + f8 означает, что если вы используете джейлы, вы можете строить их параллельно, экономя ваше время при использовании системы портов. Черт возьми, вы можете даже установить тюрьму только для создания программного обеспечения. Я использую qjail.
Пит
ну, моей целью было взломать Clang / LLVM, так что со мной все в порядке.
Матье М.
1

Я боролся с той же проблемой. Пара вещей на стороне Windows позволили мне, наконец, заставить работать mount_smbfs во FreeBSD 9.0:

  • Включить анонимный доступ к системе

Центр управления сетями и общим доступом → Изменить расширенные настройки общего доступа → Отключить общий доступ, защищенный паролем

  • Включить анонимный доступ к папке через простой обмен

Свойства → Обмен → Поделиться ... → Добавить «Все»

В свойствах общего доступа есть два способа создания общего ресурса; Простой обмен и расширенный обмен. Я использовал Advanced Sharing, и по какой-то причине мне сейчас все равно, это не сработало; Я повторно добавил общий ресурс через Simple Sharing, а затем mount / smbclient наконец заработал.

Проверка того, что анонимный вход в систему работает с smbclient:

[root@fileserv ~]# smbclient -N -I 192.168.56.1 '\\twblamer-pc\share'
Domain=[TWBLAMER-PC] OS=[Windows 7 Professional 7601 Service Pack 1] Server=[Windows 7 Professional 6.1]
smb: \> dir
  .                                  DR        0  Thu Dec 13 04:33:09 2012
  ..                                 DR        0  Thu Dec 13 04:33:09 2012
  mydirectory                         D        0  Thu Dec 13 01:55:45 2012
twblamer
источник
Спасибо за ответ, в конце концов я переключился на Ubuntu (что было проще, поскольку у меня был доступ к другу, который его использовал).
Матье М.
1
Да, просто хотел попытаться помочь любым будущим гуглерам.
Twblamer
И я благодарю вас за это, мне было очень трудно найти какое-либо решение, когда я пытался :)
Матье М.