Как лучше передавать файлы на виртуальную машину в VirtualBox?
Установил виртуальную машину на VirtualBox. Хостовая машина - Windows, гостевая - Ubuntu. Я установил LAMP и ещё несколько утилит (типа phpUnit, composer) на гостевую машину. Теперь я хочу редактировать код на своей хостовой машине, а запускать на гостевой. Вопрос: как лучше осуществлять процесс загрузки файлов? Создать общую расшаренную папку либо передавать всё через SSH? Либо есть какие-то ещё более автоматизированные удобные способы?
В настройках виртуальной машины выбираешь какую директорию хоста сделать общей, т.е. доступной для гостевой системы.
В гостевой подключаешь виртуалбокс-драйвера (они очень многое чего полезного имеют, как минимум скорости добавят, как максимум виртио-драйвер для сетевухи), есть в репах бубунты virtualbox-guest-dkms.
после чего можешь монтировать в гостевой убунте "виндовую" папку напрямую в файловую систему.
А т.к. тут минимум промежуточных систем - скорость обмена получается бешенная.
Копирование файлов НА linux, где по дефолту поднят sshd, вдобавок в автоматическом режиме - очень удобно по ssh при помощи scp или rsync.
Можно даже git
Если пользуетесь файловым менеджером, например FAR, можете заходить прямо по ssh через обычную вкладку встроенного плагина.
ssh для передачи файлов с хоста в гостя изврат. куча лишних телодвижений, шифраций, и скорость получается невысокая. настрой общие папки.
ssh только как консолька.
Павел: Это как раз общие папки между виндой и линуксом не настраиваются без лишних телодвижений, потому что ssh в линукс ставится из коробки и сразу, а samba - нет.
Поэтому на свежеустановленном линуксе можно СРАЗУ делать scp, а для самбы надо еще разобраться что это такое, как поднять, куда настроить, кто будет за нее отвечать, как будет авторизация проходить. И скорость самбы в линуксе - не такая уж высокая, особенно при получении списка каталогов.
У меня вот общая папка не запустилась сразу, поэтому поставил sshfs, как и посоветовали. На скорость вообще не жалуюсь, файлы копируются как из одной папки в другую, хотя точно не измерял. Возникла проблемка: почему-то у виртуальной машины иногда слетает ip адрес и соединение теряется, но это скорее мой косяк, пока лень исправлять
Saboteur: вы путаете расшаренные папки винды с общими папками виртуалбокса.
это встроенная возможность виртуалбокса напрямую подключать папку из хост системы во внутрь в гостевую систему.
никакими самбами и прочими виндовс-танцульками пользоваться не нужно.
для линукса имеется соотвествующий драйвер файловой системы через который папку можно примонтировать в любое место файловой системы.
драйвера лежат в пакете virtualbox-guest-dkms
вот к примеру smuncertainty.blogspot.ru/2012/08/ubuntu-virtualbo...
Павел:
1. То есть нужны лишние телодвижения, ставить лишний драйвер.
2. Как там работают права и где будут лежать файлы - на гостевой машине или на хосте?
ну и ТС уже ответил, что ssh устраивает.
1. Ну поднятие sshfs на хостовой винде на винде тоже требуется :) пакет ентих драйверов весьма пользительный, вплоть до прозрачной прокидывания 2д/3д с гостя на хостовую видеокарточку.
2. все файлы будут лежать на хосте в обычных папках, для гостевого *никса они будут видны с правами 777, запросы файловой системы будут прозрачно транслироваться в запросы файловой системы хоста без каких-либо промежуточных преобразований.
Ну кому-то и кувалда - инструмент :)
Павел: Простите, вы читали вопрос топикстартера?
Нужно передавать с хоста на гостевую машину. Ничего не нужно ставить на винде, никаких прокидываний. Просто scp.exe или любой sftp клиент, например FAR.
Saboteur: почитай начальное сообщение - обмен файлами будет постоянен, ибо разработка идет на хосте, а тестирование в госте. и был вопрос про общие папки, который я и раскрыл.
Все файлы будут лежать на хосте, абсолютно доступные для редактироования и прозрачно отображаться в гостевой, любые изменения будут видны сразу же (если кеши отключить).
гостевая тут - убунту, для нее есть драйвер файловой системы.
После установки онного общую папку можно монтировать в произвольное место файловой системы.
ssh (scp) или ftp. Unix в виртуалке мало чем отличается от unix на сервере.
Не надо подшивать к unix противоестественные протоколы типа самбы. Не привыкайте к каке.