Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

На главную -> MyLDP -> Тематический каталог -> Виртуализация и эмуляция в Linux

Маленький секрет VirtualBox: командная строка

Оригинал: "VirtualBox’s Little Secret: The Command Line"
Автор: Ken Hess
Дата публикации: January 18th, 2010
Перевод: Н.Ромоданов
Дата перевода: февраль 2010 г.

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

Обычно спрашивают: "Зачем работать в командной строке, когда у вас есть вполне хороший графический интерфейс?" Ответ - огромные возможности командной строки. С 1995 года существует целое поколение компьютерных пользователей, которые считают, что компьютер представляет собой набор окон и графики, но, в действительности, это очень далеко от истины. Почему, 1995 год, спросите вы? С появлением Windows 95 в 1995 году была открыта новая компьютерная эра — эра графических интерфейсов. Вскоре после того рокового августа был выпущен релиз FVWM95, который был ответом Linux на интерфейс Windows 95 Explorer. Мне кажется, что в те старые добрые времена командная строка исчезла навсегда. Никто не хотел больше пользоваться DOS и перестали бояться Linux. Но командной строки все еще жива и здравствует в среде Linux. Она все еще достаточно жива в Windows. И теперь, когда Маки базируются на Unix, в них также есть много чего, что не требует графического интерфейса.

Для вас может оказаться сюрпризом, что под миловидным графическим интерфейсом VirtuaBox, с его яркой графикой, понятной страницей настройки Settings и большим количеством выпадающих списков, притаился оккультный мир командной строки. Истинная сила этого темного мира откроется только тем, кто посмеет войти в эти затхлые катакомбы. После того, как вы разберетесь с командной строкой VirtualBox, вы, возможно, решите, что графический интерфейс — это чуть больше, чем просто красивая драпировка, созданная для тех, кто в противном случае будет просто игнорировать скучный черный прямоугольник реально работающего приложения.

Сила командной строки

Черный прямоугольник, о котором я говорил, является терминальным окном. Командная строка позволяет воспользоваться всей мощью автоматического исполнения команд. Единственный способ автоматизации, который известен мне в *nix системах, это использование скриптов, написанных на Perl-е, шелл-скрипты или скрипты на каком-нибудь другом языке. А демон системного планировщика (cron) поможет вам в нужное время запустить скрипт. Эта та сила командной строки, которая благодаря возможности автоматического запуска, что требует от системных администраторов также умения писать скрипты, является их багажом умения. В каждой вакансии, в которой требуется системный администратор, будет указано, что соискатель должен уметь писать скрипты хотя бы на одном из перечисленных в вакансии интерпретируемых языков.

Что касается виртуализации, то командная строка позволит вам быстро создавать виртуальные диски, добавлять новый сетевой интерфейс, запускать виртуальные машины и создавать новые виртуальные машины, причем все это — без использования графического интерфейса. Автоматическое выполнение с помощью скриптов также позволит вам спланировать запуск и остановку виртуальных машин без вашего непосредственного вмешательства. И, если вы действительно классный специалист по скриптам, вы сможете написать скрипт, который с помощью подсказок поможет вам с самыми минимальными вмешательствами с вашей стороны создать виртуальную машину, запустить ее или установить и изменить ее. Если вам не нравится все делать вручную, вы составите список виртуальных машин, используемых постоянно, затем настроите скрипты (шаблоны) для каждого типа используемых виртуальных машин и, при необходимости, в течение нескольких секунд создадите виртуальную машину.

Давайте рассмотрим простые и элегантные функциональные возможности командной строки в VirtualBox.

Установка и основные составляющие

По ссылке VirtualBox Linux Downloads загрузите двоичный дистрибутив, предназначенный под вашу систему. Если хотите, то можете скачать исходный код. Для выбранного мною варианта (для RHEL5/CentOS5 в формате rpm) были созданы следующие директории:

  • Для двоичных модулей - /usr/lib/virtualbox с сылками из /usr/bin
  • Для библиотек - /usr/lib/virtualbox
  • Для исходных кодов - /usr/share/virtualbox
  • Для гостевых компонентов (ISO) - /usr/share/virtualbox

Если в вашем дистрибутиве нет последней версии VirtualBox (версия 3.1.2 на момент написания данной статьи), то воспользуйтесь одним из пакетов, который можно загрузить, либо загрузите исходный код.

Создание и конфигурирование виртуальной машины

Самое трудное при использовании командной строки это — знать, с чего начинать. В графическом интерфейсе нужно воспользоваться кнопкой New. Командная строка немного сложнее открывает свои тайны. Для того, чтобы создать и настроить новую виртуальную машину, вы должны открыть терминальное окно, либо воспользоваться сеансом ssh для доступа к Linux системе, на которой установлен VirtualBox, и выполнить следующую команду:

$ /usr/bin/VBoxManage createvm --name Debian5 –register

С помощью этой команды создается новая виртуальная машина с именем Debian5, которая регистрируется в VirtualBox. Созданная виртуальная машина является XML файлом, который располагается в домашнем директории ~/.VirtualBox/Machines/Debian5/Debian5.xml.

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

$ /usr/bin/VBoxManage createhd --filename Debian5.vdi --size 4000 --variant Fixed

Вы создали виртуальный диск с именем Debian5.vdi размером в 4 Гбайта (4000 Мбайтов); размер фиксированный, т. е. его увеличение динамически не происходит.

Виртуальный диск создается в виде файла ~/.VirtualBox/HardDisks/Debian.vdi

Создайте контроллер дисковых устройств, к которому вы подсоедините виртуальный диск и виртуальное устройство CD/DVD

$ /usr/bin/VBoxManage storagectl Debian5 --name "IDE Controller" --add ide --controller PIIX4

С помощью этой команды создается контроллер IDE с именем “IDE Controller”, тип контроллера - PIIX4.

Теперь подсоединим виртуальный диск к вашей виртуальной машине:

$ /usr/bin/VBoxManage storageattach Debian5 --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium Debian5.vdi

Подсоединяем образ ISO той операционной системы, которую вы хотите установить:

$ /usr/bin/VBoxManage storageattach Debian5 --storagectl "IDE Controller" --port 0 --device 1 --type dvddrive --medium /ISO/debian-40r3-i386-netinst.iso

Настраиваем сеть:

$ /usr/bin/VBoxManage modifyvm Debian5 --nic1 bridged --cableconnected1 on --bridgeadapter1 eth0

С помощью этой команды создается сетевой интерфейс NIC типа "мост" (bridge): кабель подключается при запуске системы Linux, адаптер - eth0.

Запускаем виртуальную машину:

$ /usr/bin/VBoxManage startvm Debian5

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

Waiting for the remote session to open...

Remote session has been successfully opened.

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



Средняя оценка 5 при 1 голосовавших