Export и Import виртуальных машин VirtualBox
$ vboxmanage --version
7.0.16r162802
Export виртуальной машины VirtualBox
Подготовка к Export’у виртуальной машины
Делаю:
2024.05.12
Может быть использован как вариант создания резервной копии или для создания копии уже работающей виртуальной машины.
// Получаю список зарегистрированных виртуальных машин
$ vboxmanage list vms
"notes" {0d9127e3-8a53-4ce2-854f-d0501532ba56}
// Выключить виртуальную машину, при необходимости
$ VBoxManage controlvm ${VM} poweroff
$ export VM=notes
$ export VM_HOME=${HOME}/machines
$ export VM_BACKUPS=${VM_HOME}/backups/2024.09.27
$ echo ${VM}
$ echo ${VM_HOME}
$ echo ${VM_BACKUPS}
Команды Export’a виртуальной машины
// Создаю каталог для бекапов (при необходимости)
$ mkdir -p ${VM_BACKUPS}/${VM}
// Экспортировать виртуальную машину
$ VBoxManage export ${VM} -o ${VM_BACKUPS}/${VM}/${VM}.ovf
Импорт виртуальной машины VirtualBox
Подготовка к Import виртуальной машины
Делаю:
2024.10.05
// Задаем переменную с именем импортируемой виртуальной машины.
$ export vm=notes
$ export VM_HOME=${HOME}/machines
$ echo ${HOME}/machines
// Создаем каталоги для виртуальной машины и для snapshots
$ mkdir -p ${VM_HOME}/${vm}/snapshots
// Определяем каталог, куда следует выполнить импорт
$ VBoxManage setproperty machinefolder ${VM_HOME}/${vm}
// Посмотреть переменные
// $ vboxmanage list systemproperties | grep folder
Import виртуальной машины
Делаю:
2024.10.05
$ export vm=notes
// Переходим в каталог с бекапами виртуальных машинам
$ cd ${VM_HOME}/backups/2024.09.27
// Переходим в каталог с нужной виртуальной машиной
$ cd <machine_name>
$ VBoxManage import ./notes.ovf
***
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Successfully imported the appliance.
// Посмотреть список виртуальных машин
$ vboxmanage list vms
"Notes" {d30e0fc7-4dfc-4f5b-8518-250b9a5cfb03}
// Если нужно переименовать импортированную виртуальную машину
// $ VBoxManage modifyvm Notes --name ${vm}
$ vboxmanage list vms
"notes" {d30e0fc7-4dfc-4f5b-8518-250b9a5cfb03}
// Определяем каталог для снапшотов
$ VBoxManage modifyvm ${vm} --snapshotfolder ${VM_HOME}/${vm}/snapshots
Запустить импортированную виртуальную машину
Делаю:
2023.12.09
ifconfig на хост машине должен выводить vboxnet0.
vboxnet0 - виртуальный адаптер хостовой машины.
$ ifconfig vboxnet0
Если виртуального адаптера нет, нуно его самостоятельно создать.
$ VBoxManage hostonlyif create
$ vboxmanage list hostonlyifs
Name: vboxnet0
GUID: 786f6276-656e-4074-8000-0a0027000000
DHCP: Disabled
IPAddress: 192.168.56.1
NetworkMask: 255.255.255.0
IPV6Address:
IPV6NetworkMaskPrefixLength: 0
HardwareAddress: 0a:00:27:00:00:00
MediumType: Ethernet
Wireless: No
Status: Down
VBoxNetworkName: HostInterfaceNetworking-vboxnet0
// Присвоить ip, если у него нет.
$ VBoxManage hostonlyif ipconfig vboxnet0 --ip 192.168.56.1
// Стартовать
$ sudo ifconfig vboxnet0 up
$ ifconfig vboxnet0
vboxnet0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 192.168.56.1 netmask 255.255.255.0 broadcast 192.168.56.255
ether 0a:00:27:00:00:00 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Тоже самое можно сделать в консоли управления VirtualBox.
File -> Network Manager -> Host-only Networks -> Create -> ip 192.168.56.1 -> DHCP Server (Disabled)
$ vm=notes
$ vboxmanage startvm ${vm} -type headless &
// Подключиться
$ ssh -oHostKeyAlgorithms=+ssh-dss 192.168.56.11
Подключиться без консоли VirtubalBox
Делаю:
Когда-то до 2023
Установить Extension Packs (Там присутствуют какие-то лицензионные огранчения).
$ VBoxManage controlvm ${vm} poweroff
$ VBoxManage modifyvm ${vm} \
--vrde on \
--vrdemulticon on \
--vrdeauthtype null \
--vrdeaddress 192.168.1.101 \
--vrdeport 3389
192.168.1.101 - хост на котором запущен virtualbox
$ vboxmanage startvm ${vm} -type headless &
$ sudo apt-get install -y rdesktop
$ rdesktop \
-r sound:local \
-k common \
-g 1600x1024 \
10.20.65.225:3389