Есть ли способ получить доступ виртуальной машины к моему компьютеру?
-
09-06-2019 - |
Вопрос
Я хотел бы иметь виртуальную машину, чтобы смотреть, как появляются приложения, и разрабатывать приложения для конкретной ОС, однако я хочу хранить весь свой код на своем компьютере с Windows, поэтому, если я решу уничтожить виртуальную машину или что-то в этом роде, все по-прежнему там.
Если это имеет значение, я использую VirtualBox.
Решение
Обычно это решается с помощью сетевых ресурсов.Поделитесь своей папкой с кодом со своего хост-компьютера и получите к ней доступ с виртуальных машин.
Другие советы
Помимо сетевых ресурсов, для этого можно использовать еще один инструмент — систему контроля версий.
У вас всегда должна быть возможность установить нормальное сетевое соединение между виртуальной машиной и операционной системой хоста, как если бы это был другой компьютер в той же сети.Что в некотором смысле так и есть.
Я все время это делаю.У меня есть каталог на диске Windows, который я монтирую на своем хосте Ubuntu 12.04.Я запускаю виртуальный бокс Ubuntu 13.04 в качестве гостя.Я хочу, чтобы гость смонтировал каталог Windows с полными правами без полномочий root.Практически всю работу я выполняю из оболочки bash, поэтому этот метод для меня естественен.
При поиске методов автоматического монтажа общих папок VirtualBox, надежные и правильные методы трудно отличить от тех, которые терпят неудачу.К сбоям относятся получение и установка разрешений, а также другие проблемы.
К неудачным методам относятся:
- изменение /etc/fstab
- изменение /etc/rc.local
Я совершенно уверен, что RC.Local может быть использован, но никаких методов, которые я пробовал, не работали.Я приветствую улучшения этих рекомендаций.
На VirtualBox 4.2.14 Запуск Nautilus (Bash Terminal) на госте Ubuntu 13.04, ниже приведен рабочее метод для монтирования Common (ShareMame) ON/Home/$ User/Desktop/Common (MountPoint) с полными разрешениями.(Обратите внимание на символ продолжения команды «\» в команде поиска.)
Только первый раз:создайте точку монтирования, измените файл .bashrc и запустите его.Ответьте паролем при запросе.Вот четыре необходимые командные строки:
mkdir $HOME/Desktop/Common
sudo echo “$USER ALL=(ALL) NOPASSWD:ALL” >> /etc/sudoers
find $HOME/Desktop/Common -maxdepth 0 -type d -empty -exec sudo \
mount -t vboxsf -o \
uid=`id -u $USER`,gid=`id -g $USER` Common $HOME/Desktop/Common \;
source ~/.bashrc # Needed if you want to mount Common in this bash.
Все остальное время:просто запустите оболочку bash.
Команда find монтирует общий каталог, если каталог точки монтирования пуст.Если каталог точки монтирования не пуст, команда монтирования не запускается.
Я надеюсь, что это безошибочное и достаточно общее описание.Пожалуйста, дайте мне знать об исправлениях и улучшениях.