Меню Рубрики

Virtualbox запуск в фоновом режиме linux

Запуск виртуальной машины в VirtualBox без GUI

Иногда возникает необходимость запустить виртуальную машину на хосте без иксов. Я расскажу о том как это сделать, имея доступ к хостовой системе только по ssh + rdp (Remote Desktop Protocol). процесс я буду описывать для OC Ubuntu 9.10 в качестве хоста.

Начнем с установки VirtualBox.

Предварительно нужно установить пакет dkms (Dynamic Kernel Module Support Framework):

sudo apt-get install dkms

На сайте VirtualBox-а предлагается 2 варианта: прописать источник пакетов ( deb download.virtualbox.org/virtualbox/debian karmic non-free ) в /etc/apt/sources.list либо скачать и установить deb-пакет. Когда я прописал источник и сделал sudo apt-get install virtualbox-3.1 у меня потянулась куча пакетов из зависимостей (в том числе и каких-то для GUI интерфейса). Поэтому лучше скачать deb-пакет. Качаем, устанавливаем:

sudo dpkg -i virtualbox-3.1_3.1.0-55467_Ubuntu_karmic_i386.deb

возможно тут также потребуются зависимости (какие-то библиотеки для парсинга xml, в котором хранятся конфиги, но их значительно меньше чем в первом случае). Если установка не завершилась из-за зависимостей, можно просто сделать

sudo apt-get -f install

при этом установятся зависимости и VirtualBox

ок. VirtualBox поставили. Начнем создавать guest-машины.

создаем саму машину:

VBoxManage createvm —name ubuntu —ostype Ubuntu —register
(name — имя машины, ostype — тип системы. полный список всех типов можно узнать командой VBoxManage list ostypes )

VBoxManage modifyvm ubuntu —memory 512 —floppy disabled —audio none —nic1 bridged —bridgeadapter1 eth0 —vram 4 —accelerate3d off —boot1 disk —acpi on —cableconnected1 on —usb off —vrdp on —vrdpport 3390

тут с большего все понятно. в качестве типа сети можно указать также NAT ( —nic1 nat ). также включаем rdp

создаем hdd диск для виртуальной машины:

VBoxManage createhd —filename /home/user/vbox/ubuntu.vdi —size 20000 —register

добавляем контроллер IDE в нашу машину

VBoxManage storagectl ubuntu —name «IDE Controller» —add ide

цепляем на IDE0 созданный ранее hdd

VBoxManage storageattach ubuntu —storagectl «IDE Controller» —port 0 —device 0 —type hdd —medium /home/user/vbox/ubuntu.vdi

на IDE1 цепляем установочный образ

VBoxManage storageattach ubuntu —storagectl «IDE Controller» —port 1 —device 0 —type dvddrive —medium /home/user/vbox/iso/ubuntu-9.10-alternate-i386.iso

говорим машине грузиться с диска

VBoxManage modifyvm ubuntu —boot1 dvd

nohup VBoxHeadless —startvm ubuntu &

для того чтобы поставить базовую систему воспользуемся rdp-клиентом (у меня KDE, в стандартную поставку входит KRDC). коннектимся на хостовую машину на порт, который указали в настройках ( —vrdpport 3390 ), ставим систему, делаем sudo apt-get install openssh-server . теперь на виртуальную машину можно попасть по ssh

останавливаем виртуальную машину

VBoxManage controlvm ubuntu acpipowerbutton
через acpi

VBoxManage controlvm ubuntu poweroff

говорим грузится с hdd

VBoxManage modifyvm ubuntu —boot1 disk

можно также отцепить установочный диск

VBoxManage storageattach ubuntu —storagectl «IDE Controller» —port 1 —device 0 —medium none

nohup VBoxHeadless —startvm ubuntu &

еще полезные команды:

VBoxManage list runningvms
просмотр всех запущенных машин

VBoxManage showvminfo ubuntu
просмотр информации о виртуальной машине

таким образом на одной машине с минимально установленной системой можно поднимать несколько виртуальных для различных целей и экспериментов

Источник

Запустить VirtualBox в фоновом режиме, без окна?

Мне было интересно, можно ли запустить виртуальную машину Ubuntu с помощью VirtualBox в фоновом режиме, я имею в виду, без открытия какого-либо окна.

Идея — подключиться через SSH к хосту Linux, который будет работать в фоновом режиме.

Кто-нибудь когда-нибудь делал что-то подобное? Возможно ли это?

11 ответов

VBoxManage startvm $VM —type headless запустит указанную виртуальную машину в фоновом режиме.

Чтобы закрыть его, запросите отключение от гостевого.

Это встроено в VirtualBox 4.2.

Просто удерживайте нажатой клавишу Shift при запуске VM из Менеджера.

Абсолютно! Вы ищете установку без головы (Virtualbox). Способ запуска машины из командной строки:

Однако вам понадобится какой-то способ подключения. То, что я делаю, это сопоставление портов между гостем и хостом. С этой конфигурацией ваш хост 2222 будет отображаться на порт 22 вашего гостевого компьютера.

После этого вы можете войти в систему с помощью:

альтернатива VBoxManage startvm «» —type headless — это VBoxHeadless -startvm ««

Довольно забавно, я только что закончил выяснять, как запустить VM без головы, над RDP.

Примечание. По крайней мере, на окнах он заблокирует ваше окно команд. Если вам нужно продолжить использование окна консоли, откройте другой, чтобы запустить виртуальную машину.

Чтобы закрыть VM, вы запрашиваете гостевую ОС для выключения. VBoxHeadless освобождает консоль, когда гость полностью закрыт (вы можете Ctrl+C ), но я думаю, что это может быть аналоговый жесткий сброс на реальной машине).

Я использую VBoxTool из http://vboxtool.sourceforge.net/ и отлично работает для меня. Он может автоматически запускать виртуальные машины при загрузке и останавливать /сохранять виртуальные машины при завершении работы и обеспечивать простой чистый интерфейс командной строки.

Я не думаю, что бесшовный режим — это то, что он ищет здесь, я думаю, что правильным было бы VBoxHeadless, какие детали вы можете найти в руководстве. Он работает с использованием интерфейса командной строки и будет использоваться, например, если виртуальная машина была запущена на сервере, но дисплей не нужен на сервере. Вы сможете использовать удаленный рабочий стол на компьютере (предоставляя вам знать, как установить параметр через командную строку).

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

VBoxManage был прав, извините. Ссылка на информацию в руководстве http://www.virtualbox.org/manual/ch08.html

Я обнаружил, что режим безглавых функций отлично работает при работе в Linux (CentOS 5.6), но вы теряете доступ к функциональным возможностям RDP при условии, что этот процесс задан. Сделайте «fg», чтобы вернуть процесс на передний план, и функциональность RDP будет восстановлена. Похоже, что запуск vm headless лучше всего выполнить с помощью скрипта init, где интерактивность с консолью не требуется.

Вы можете использовать VBoxHeadless или (и мне интересно, почему никто не упоминал об этом передо мной) вы можете просто выбрать один из параметров запуска, который будет запускать виртуальную машину без какого-либо графического интерфейса.

Либо удерживайте сдвиг и запустите машину, либо щелкните правой кнопкой мыши машину и найдите что-то вроде «Run without output» в разделе «Run»

Для запуска в режиме безголового с использованием GUI:

При запуске виртуальной машины удерживайте клавишу Shift .

После этого вы также сможете подключиться и отключиться от графического интерфейса (с помощью опций Показать и Machine — — gt; Â Отключить графический интерфейс ).

Я добавил эти строки в свой .bashrc:

Для доступа ssh вам не нужно изменять конфигурацию, просто сохраняйте NAT, и вы можете настроить таблицу переадресации портов следующим образом:

При вставке localhost: 8080 в браузер вашего компьютера откроется страница с VM (на порту 80).

Если виртуальная машина запущена и отображается экран, вы можете скрыть ее, выполнив следующие шаги.

Источник

JenRom Blog

Любой конец является началом…

Свежие записи

Недавние комментарии

Александр к записи Настраиваем поддержку HP Laser…
FululaGorb2 к записи Установка OpenCV на Linux
Анатолий к записи Настраиваем поддержку HP Laser…
Vladimir к записи Virtual Box в максимально скры…
cjechoel к записи Настраиваем Raspberry Pi для р…

Рубрики

Virtual Box в максимально скрытном режиме.

У меня на домашнем сервере установлено много виртуальных машин, управляемых с помощью VirtualBox, Каждая включенная виртуальная машина открывается в отдельном окне. Ко всем этим виртуальным машинам я подключаюсь по RDP, поэтому отображение их окон на хостовой машине только зря тратит её ресурсы. В связи с чем я и решил разобраться, как же запускать виртуальные машины без GUI, заодно и автоматизировать процесс запуска вышеуказанных:)

Все, что нам понадобится — VirtualBox последней версии, загруженный отсюда. Стоит заметить, что в качестве хоста у меня используется компьютер с Windows 8.1. Этот выбор может показаться весьма странным, но я пока не нашел систему, работающую более стабильно. Хоть Linux и гибок в настройке, для того, чтобы он работал стабильно, по моему опыту, нужно очень много времени.

Будем считать, что виртуальная машина у нас уже установлена и видна в менеджере виртуальных машин VirtualBox‘а. Кстати, посмотреть список виртуальных машин можно командой:

Вывод этой команды выглядит примерно вот так:

Слева название виртуальной машины, а справа их UUID, ведь на никто не гарантирует, что нет виртуальных машин с одинаковым названием.

для получения более подробной информации о имеющихся виртуальных машинах можно дописать в конец команды «—long».

Для запуска виртуальной машины в скрытом режиме переходим в директорию с VirtualBox

Шаблон команды запуска виртуальной машины выгладит так.

Например, этой командой мы запускаем виртуальную машину, которая называется «7» :

Для вывода справки достаточно просто ввести команду

Результат будет вот таким:

Допустим, у нас есть несколько виртуальных машин и хотелось бы запускать их одним ярлыком. Создадим для каждой из них bat файл с назывнием такого вида

Содержимое каждого из этих файлов должно выглядеть вот так:

Положим эти все файлы в одну папку и там же создадим файл с названием «vm.run.vbs», Этот файл будет запускать по очереди файлы, отвечающие за каждую виртуальную машину. Сожержимое этого файла должно выглядеть как-то так

Данный пример запускает виртуальную машину с названием «XP«, через 10 секунд «7» и еще через 10 — «8_1» .

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

А что делать с подключением устройств?

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

Смотрим список подключенных к хосту USB устройств:

Подключаем устройство к виртуальной машине:

Более общий случай

Для отключения устройства от виртуальной машины:

Более полный список параметров:

Проблемы, с которыми я столкнулся

На данный момент проблема только одна, но она довольно неприятна.

1) При попытке подключить USB адаптер к компьютеру появляется следующее сообщение об ошибке:

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

  • Выключаем виртуальную машину
  • Отсоединяем USB устройство
  • Заходим в настройки виртуальной машины и создаем такой фильтр
  • Запускаем виртуальную машину
  • Подключаем USB устройство
  • Возможно придется снова выполнить команду подключения устройства
  • PROFIT.

Надеюсь, кому-нибудь статья окажется полезной. Если есть вопросы — добро пожаловать в комментарии.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Редактор фото mac os бесплатно
  • Редактор тегов для mac os
  • Редактор музыки для mac os
  • Редактор кода php mac os
  • Редактор изображений для mac os