Freebsd 10 і virtualbox

Рано чи пізно, але вам обов'язково знадобиться запустити яку-небудь іншу ОС і тут є два варіанти: використовувати окрему залізяку або скористатися виртуализацией. Я розповім про другий варіант - Virtualbox на FreeBSD 10.

  • Початкові дані
  • установка
    Починаючи з версії 3.1.0 порт розбитий на два: virtualbox-ose-kmod (модулі ядра) і virtualbox-ose (сам virtualbox). В налаштуваннях вибираємо: Далі В налаштуваннях вибираємо.
  • Налаштування
    Завантаження модуля ядра. Додаємо рядок у /boot/loader.conf для запуску модуля при завантаженні системи Завантажуємо модуль, щоб не перезавантажувати сервер Завантажуємо адаптер для роботи віртуальної машини в bridge-режимі: Додаємо рядки в /etc/rc.conf Запускаємо: Створюємо і реєструємо директорію в якій будуть зберігатися виртуалки: у директорії hdd будуть зберігатися образи дисків, а в директорії iso - установчі iso-образи:
  • Створюємо та налаштовуємо віртуальну машину
    Мій варіант - 32-х розрядна debian.
    Створюємо віртуальну машину: --name debian1 - ім'я нашої виртуалки
    --ostype Debian - тип гостьовий ОС, всі можливі варіанти можна подивитися командою --register - реєструємо машину в virtualbox

Створюємо жорсткий диск --filename /usr/home/vbox/hdd/disk1.vdi - повне ім'я файлу з диском
--size 60 - розмір в мегабайтах
--variant Fixed - файл з диском буде одразу займати запитаний розмір. Якщо цей параметр не додавати, то розмір файлу з диском буде збільшуватися в міру потреби. За даними розробників, Fixed-диски створюються довше, але працюють швидше.

Подивитися інформацію про створений диску можна командою: Створюємо IDE і SATA контролери на виртуалке --name "IDE Controller" - назва контролера
--add ide - тип додається контролера

Підключаємо віртуальний диск до SATA контролера debian1 - назва віртуальної машини
--storagectl "SATA Controller" - назва контролера
--port 0 - номер порта
--device 0 - номер пристрою
--type hdd - тип підключається диска
--medium /usr/home/vbox/hdd/disk1.vdi - шлях до файлу, що підключається віртуального диска


  • Запуск віртуальної машини для установки гостьовий ОС
    Видобуваємо інсталяційний cd-dvd у вигляді iso-образу, наприклад debian-8.1.0-i386-CD-1.iso. Підключаємо інсталяційний iso у вигляді dvd-приводу до IDE контролера: Задаємо віртуальній машині завантаження з dvd: Налаштовуємо віртуальну машину для запуску з підтримкою підключення по VNC: --vrdeproperty VNCPassword = PASSWORD - замість PASSWORD задаємо пароль, який у нас запитають при підключенні до виртуалке по VNC. Максимальна довжина пароля - 8 знаків. --vrdeport 3390 - порт, на якому виртуалка слухає підключення

    Для підключення з FreeBSD можна скористатися TightVNC

    Після успішного підключення встановлюємо на виртуалку гостьову ОС.

    Зупиняємо віртуальну машину (див нижче)

    Задаємо в якості завантажувального віртуальний диск, відключаємо VNC: Відключаємо інсталяційний диск:
  • Зупинка віртуальної машини
    Зупиняємо через acpi або
  • Запуск віртуальної машини в "робочому" режимі Для роботи виртуалки VNC-підключення не потрібно, так як налаштована виртуалка може бути доступна через штатні засоби, наприклад ssh / rdp.
    Запускаємо: debian1 - назва віртуальної машини
  • Автостарт / стоп віртуальних машин
    Дуже корисна штука, запускає і зупиняє виртуалки при включенні і виключенні сервера.
    Додаємо в /etc/rc.conf vboxheadless_delay - затримка в секундах перед запуском / виключенням гостьових машин
    vboxheadless_stop - що робити при виключенні машин, доступні значення: poweroff, savestate (за замовчуванням; пам'ятайте, при включенні виртуалки час залишиться таким яким було при виключенні), acpipowerbutton, acpisleepbutton
    vboxheadless_machines - тут список машин через пробіл. ВАЖЛИВО! В імені машини не повинно бути точок (з особистого досвіду)!
  • Установка Guest Additions
    Спочатку треба роздобути файл VBoxGuestAdditions.iso. Тут є два варіанти. Перший: зібрати порт virtualbox-ose з опцією GUESTADDITIONS. Файл буде знаходитися в директорії / usr / local / lib / virtualbox / additions. Варіант два: сходити на сайт розробника. Там шукаємо папку з потрібною версією, а в ній уже й сам файлик. Качаємо його собі в iso. Підключаємо цей iso-файл в гостьову ОС як CDROM: Далі, запускаємо гостьову ОС в ній встановлюємо.
  • Видаляємо віртуальну машину
    Зупиняємо віртуальну машину

    Відключаємо диск від віртуальної машини: Видаляємо диск з менеджера віртуальних носіїв: Якщо система видасть помилку: то видаляйте не по дорозі і імені диска, а по його uin: --delete - видалення файлу з образом диска, без цього параметра диск буде тільки разрегістрірован в системі, але сам файл залишиться

    Видалення віртуальної машини:
  • Створення резервної копії
    Спочатку треба вимкнути віртуальну машину або перевести в режим збереження стану Переклад в режим збереження стану
  • Перенесення на інший сервер
    Спочатку зупиняємо віртуальну машину, потім експортуємо в файл: На новому сервері імпортуємо:
  • експлуатація
    • Після пересборки і установки ядра FreeBSD обов'язково повторно virtualbox-ose-kmod
    • Подивитися список зареєстрованих віртуальних машин:
    • Подивитися список запущених машин:
    • Подивитися інформацію про віртуальній машині:

  • Залізо
    • Мережеві карти

      Додати другу мережеву карту: Мережева карта була забріджена на мережевий адаптер vlan2 хост-системи Мережеві карти виртуалки - це --nicX, де X - це номер карти.

      Перед додаванням фільтра необхідно зупинити віртуальну машину, для якої він додається.
      Щоб цей пристрій було видно в ВМ, на хост-системі для віртуальної машини необхідно задати фільтр. Дані для фільтра беруться з виведення команди:
      Видалення USB пристрої з гостьової машини
      Видаляємо фільтр з індексом 0 з віртуальної машини з назвою ubuntu:
      DS9490R - Майстер 1-Wire мережі Додаємо usbfilter з номером 0 для виртуалки з ім'ям ubuntu:
      D-Link DUB-E100. USB мережевий адаптер.
      Вкрай не рекомендую використовувати з FreeBSD. І схоже, що справа не в залозі, а в драйвері цього пристрою. Хост - FreeBSD 10.1, гостьова - FreeBSD 10.2. Прямий кидок usb-пристрої. Мережева карта в гостьовій ОС періодично відвалювалася, величезні тайм-аути при пінг локальних пристроїв, трасування не проходила взагалі. Налаштовувати шлюз при таких локальних гілках сенсу не було.

      Схожі статті