Главная

Saturday, 23 April 2022

Командная строка в VirtualBox.

Всем привет. 

Так уж сложилось что многие пользуются в Oracle VirtualBox графическим интерфейсом. Тем не менее сам VirtualBox имеет довольно развитой CLI, которым вовсю пользуется популярный Vagrant (про него в следующий раз). Но я считаю что знать основы CLI от производителя тоже полезно. Ниже приведу наброски которые позволяют экономить время в работе с VirtualBox в домашней лаборатории.

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

1. создаем ВМ с указанным именем в заданной группе, указываем тип ОС (список поддерживаемых получаем VBoxManage list ostypes), регистрируем ВМ:

VBoxManage createvm –name “parrot” –groups “/pentest” –ostype “Debian” –register

2. выделяем системе ресурсы: 2 ядра, 1024 Мб ОЗУ, 16 МБ видеопамяти,  включаем ACPI и I/O APIC,  отключаем буффер обмена, включаем протокол удаленного рабочего стола, задаем порт, делаем привод загрузочным, добавляем две сетевухи 1-я NAT, 2-я внутрення сеть:

VBoxManage modifyvm “parrot” –cpus 2 –memory 1024 –vram 16 –acpi on –ioapic on –clipboard disabled –vrde on –vrdeport 888 –boot1 dvd –nic1 nat –nic2 intnet

3. создаем виртуальный жесткий диск (динамического объема) по указаному пути:

VBoxManage createhd –filename D:\work\vm\test\parrot.vdi –size 7168

4. добавляем к машине контроллер жесткого диска:

VBoxManage storagectl “parrot” –name “IDE” –add ide –controller PIIX4 –bootable on –hostiocache on

5. подключаем к контроллеру созданный ранее виртуальный жесткий диск:

VBoxManage storageattach “parrot” –storagectl “IDE” –port 0 –device 0 –type hdd –medium D:\work\vm\test\parrot.vdi

6. подключаем к кнотроллеру образ с дистрибутивом ОС:

VboxManage storageattach “parrot” –storagectl “IDE” –port 1 –device 0 –type dvddrive –medium D:\work\iso_nix\debian-7.1.0-i386-netinst.iso


Запуск ВМ без окна, установка гостевых утилит, тюнинг.

1. запускаем указанную ВМ без вывода окна (список зарегистрированных ВМ получаем VBoxManage list vms):

важный момент - подключаемся к ВМ с помощью стандартного RDP клиента Пуск\Выполнить\mstsc -v:10.10.10.200:7070, где 10.10.10.200 – IP хоста 7070 – номер порта, который мы назначили VRDР. Если же вместо IP адреса указываем localhost то порт нужно указывать в квадратных скобках mstsc -v:localhost[:7070]

VBoxManage -q startvm “lion” –type headless

2. останавливаем машину после завершения установки ОС:

VBoxManage controlvm “lion” poweroff

3. отключаем примонтированный образ:

VboxManage storageattach “lion” –storagectl “IDE” –port 1 –device 0 –type dvddrive –medium emptydrive

4. монтируем образ с гостевыми утилитами:

VboxManage storageattach “lion” –storagectl “IDE” –port 1 –device 0 –type dvddrive –medium C:\VirtualBox\VBoxGuestAdditions.iso

5. меняем приоритет загрузки, ставим первым жесткий диск:

VBoxManage modifyvm “lion” –boot1 disk


Создание общей папки Work между гостевой ВМ и хостом.

1. примонтировать указанный каталог хоста с возможностью записи:

VBoxManage sharedfolder add “lion” –name “Work” –hostpath “D:\work\write” –automount

2. примонтировать указанный каталог хоста в readonly:

VBoxManage sharedfolder add “lion” –name “Work” –hostpath “D:\work\read” –automount –readonly


Прочее.

1. отобразить список зарегистрированных ВМ:

VBoxManage list vms

2. отобразить параметры выбранной ВМ:

VBoxManage showvminfo “name”

3. запуск ВМ без окна из коммандной строки или в GUI с зажатой клавишей <Shift>:

VBoxManage –q startvm name –type headless [or in GUI start + Shift]

4. перезагрузка/ выключение/ сохранение состояния/ отмена сохраненного состояния/ 

использование ранее созданого savestate:

VBoxManage -q controlvm “name” reset / poweroff / savestate / discardstate / adoptstate -file.sav

5. создание снимка ВМ/ восстановление из ранее созданного снимка:

VBoxManage -q snapshot take “name” / restore name

6. запуск ВМ с отключенным VirtualBox Remote Desktop Extension:

VBoxHeadless -startvm “name” –vrde=off

7. запуск ВМ в режиме упрощенного GUI:

VBoxSDL –startvm “name”

8. выборка всех адаптеров которые несут функционал моста:

VBoxManage.exe list bridgedifs

VBoxManage.exe list bridgedifs | findstr "Name:"

9. увеличиваем размер диска ВМ с Linux:

Эта процедура требует два этапа действий, внешний и внутренний.

1) снаружи VirtualBox:

- узнать текущий размер VDI-диска ВМ

VBoxManage showhdinfo OSSIM.vdi

- задать новый размер VDI-диска

VBoxManage modifyhd OSSIM.vdi --resize 25075

2) внутри самой Linux ВМ OSSIM:

fdisk -l

fdisk /dev/sda

p(rint)

d(delete)

n(ew)

p(rimary)

1

p(rint)

w(rite)

reboot

resize2fs /dev/sda1

df -h


Удачи.
Слава Украине!

No comments:

Post a Comment

А что вы думаете по этому поводу?