Manpages

НАЗВА

virt-p2v-make-kickstart — програма для збирання kickstart virt-p2v

КОРОТКИЙ ОПИС

 virt-p2v-make-kickstart [-o p2v.ks] [--proxy=http://...] сховище [сховище...]

ОПИС

virt-p2v(1) перетворює фізичну машину для запуску віртуалізованою у KVM, під керуванням libvirt, OpenStack, oVirt, Red Hat Enterprise Virtualisation ( RHEV ) або одним із інших призначень, підтримку яких передбачено у virt-v2v(1).

Kickstart — формат, який використовується у похідних від Red Hat дистрибутивах (зокрема Fedora, Red Hat Enterprise Linux, CentOS, Scientific Linux тощо) для опису процесу створення компакт-дисків із портативною системою, встановлення дистрибутива, створення «варіантів» тощо. Дані у цьому форматі зберігаються у файлі kickstart.

virt-p2v-make-kickstart збирає файл kickstart, яким можна скористатися для збирання придатного до завантаження ISO P2V, образу портативної системи для компакт-диска, флешки USB або образу PXE. Ця програма лише створює файл kickstart, але на цій сторінці підручника описано деякі зі способів використання файла kickstart.

ЗБИРАННЯ ФАЙЛА KICKSTART

Користуватися virt-p2v-make-kickstart дуже просто:

 virt-p2v-make-kickstart fedora

збере файл kickstart для Fedora. Файл kickstart називатиметься p2v.ks і зберігатиметься у поточному каталозі.

Параметрі є списком з одного або декількох сховищ. Деякі із наявних вбудованих сховищ: "fedora", "rawhide", "koji" або "rhel-ВЕРСІЯ" (наприклад "rhel-7.1"). Ви також можете змінити адресу як параметр для вказування на сховище. Приклад:

 virt-p2v-make-kickstart https://dl.fedoraproject.org/pub/fedora/linux/releases/21/Everything/x86_64/os/

Для керування назвою файла-результату скористайтеся параметром -o. Щоб наказати kickstart скористатися проксі-сервером або вебкешем для отримання файлів, скористайтеся параметром --proxy.

ЗБИРАННЯ ISO АБО ОБРАЗУ ДИСКА ІЗ ПОРТАТИВНОЮ СИСТЕМОЮ

Щойно у вас буде файл kickstart, ви можете скористатися livecd-creator(8) для створення образу компакт-диска із портативною системою:

 sudo livecd-creator p2v.ks

Перш ніж віддавати команду, зауважте, що вам слід, ймовірно, запустити "livecd-creator" в одноразовій віртуальній машині з таких причин:

На час роботи із програмою вам слід вимкнути SELinux.

Цю програму слід запускати від імені користувача root. Також її виконання іноді супроводжується помилками із доволі прикрими наслідками.

Ви можете створювати образи компакт-дисків портативної системи лише з тим самим дистрибутивом, що і в основній системі. Крос-компіляція завершуватиметься дивними повідомленнями про помилки (див., наприклад, RHBZ#1092327).

ЗБИРАННЯ ВАРІАНТА FEDORA ЗА ДОПОМОГОЮ KOJI

Це потребує прав доступу "spin-livecd" для Koji, які зазвичай не надаються, навіть для пакувальників Fedora. Втім, припускаючи, що у вас є відповідні права доступу (або, наприклад, ваш власний екземпляр Koji), ви можете зробити так:

 koji spin-livecd [--scratch] virt-p2v 1.XX.YY rawhide x86_64 p2v.ks

Додайте параметр "--scratch" для створення тестової збірки (рекомендовано для тестування).

"1.XX.YY" має збігатися із версією libguestfs

Замість "rawhide" ви можете скористатися будь-якою іншою ціллю Koji.

ЗБИРАННЯ ПРИДАТНОГО ДО ЗАВАНТАЖЕННЯ НОСІЯ USB

Скористайтеся програмою livecd-iso-to-disk(8) для перетворення створеного за наведеним вище рецептом образу ISO на запис на носії USB:

 sudo livecd-iso-to-disk livecd-p2v.iso /dev/sdX

ЗБИРАННЯ ОБРАЗУ ДЛЯ ЗАВАНТАЖЕННЯ PXE

Скористайтеся програмою "livecd-iso-to-pxeboot" для перетворення створеного вище образу ISO у образ для завантаження PXE.

 sudo livecd-iso-to-pxeboot livecd-p2v.iso

Ця команда створює підкаталог "tftpboot" у поточному каталозі, який міститиме файли, потрібні, щоб PXE завантажила virt-p2v:

 $ ls -1R tftpboot/
 tftpboot/:
 initrd0.img
 pxelinux.0
 pxelinux.cfg/
 vmlinuz0
 tftpboot/pxelinux.cfg:
 default

32- ЧИ 64-БІТОВА VIRT-P2V?

Virt-p2v може перетворювати будь-які 32- або 64-бітові гостьові системи, незалежно від того, чи є сама virt-p2v зібраною як 32- або 64-бітовою програмою. Єдиним обмеженням є те, що 64-бітову версію virt-p2v не може бути запущено на 32-бітовому обладнанні.

Застаріла версія virt-p2v 0.9 завжди збиралася як 32-бітовий (i686) образ ISO. Це означало, що компакт-диск із такою системою могло бути завантажено на будь-якому 32- або 64-бітовому обладнанні архітектури i686 або x86-64, і вона могла перетворювати будь-які гостьові системи. Застарілий образ ISO virt-p2v, що постачався Red Hat, було засновано на Red Hat Enterprise Linux ( RHEL ) 6.

Оскільки у RHEL 7 було припинено підтримку 32-бітових машин, поточну версію virt-p2v на RHEL може бути зібрано лише у 64-бітовій версії. Цю систему не може бути запущено на застарілому обладнанні 32-бітової архітектури.

Образи ISO virt-p2v для Fedora типово збираються для 32-бітової архітектури, отже, подібно до застарілої версії на основі RHEL 6, virt-p2v 0.9, їх можна завантажувати на будь-якому обладнанні.

ТЕСТУВАННЯ VIRT-P2V ЗА ДОПОМОГОЮ QEMU

ТЕСТУВАННЯ ISO P2V ЗА ДОПОМОГОЮ QEMU
Ви можете скористатися qemu для тестового завантаження образу ISO P2V:

 qemu-kvm -m 1024 -hda /tmp/guest.img -cdrom /tmp/livecd-p2v.iso -boot d

Зауважте, що "-hda" є (віртуальною) системою, яку ви хочете перетворити (з тестовою метою). Нею може бути гостьова система будь-якого типу, підтримуваного у virt-v2v(1), зокрема Windows або Red Hat Enterprise Linux.

ТЕСТУВАННЯ ПІДТРИМКИ PXE ЗА ДОПОМОГОЮ QEMU

Розпакуйте каталог tftpboot до /tmp (щоб її було показано як /tmp/tftpboot).

Скопіюйте pxelinux.0 і ldlinux.c32 з syslinux (зазвичай з /usr/share/syslinux) до /tmp/tftpboot.

Скоригувати рядок "APPEND" у /tmp/tftpboot/pxelinux.cfg/default, якщо потрібно. Див. "НАЛАШТУВАННЯ КОМАНДНОГО РЯДКА ЯДРА" in virt-p2v(1).

Запустіть qemu ось так, щоб програма працювала як сервер TFTP і BOOTP, емулюючи завантаження з мережі:

 qemu-kvm \
     -m 4096 -hda /tmp/guest.img \
     -boot n \
     -netdev user,id=unet,tftp=/tmp/tftpboot,bootfile=/pxelinux.0 \
     -device virtio-net-pci,netdev=unet \
     -serial stdio

Зауважте, що це потребує значно більше пам’яті, оскільки образ PXE завантажується до пам’яті. Крім того, через те, що сервер TFTP qemu є дуже повільним, а образ PXE virt-p2v є дуже великим, образ може, як здається» «зависати» після запуску pxelinux.

ДОДАВАННЯ ДОДАТКОВИХ ПАКУНКІВ

Встановити нові пакунки можна за допомогою параметра --install. Встановлення нових пакунків може бути корисним для створення повнофункціонального диска virt-p2v із додатковими інструментами для діагностики та усування вад. Як аргумент параметра слід вказати список пакунків, відокремлених комами. Приклад:

 virt-p2v-make-kickstart [...] --install tcpdump,traceroute

ДОДАВАННЯ ПРОФІЛЮ SSH

Ви можете вставити файл профілю SSH (закритий ключ) до kickstart, а отже до ISO, за допомогою параметр --inject-ssh-identity. Зауважте, що ви не можете вставити ключ після збирання образу ISO.

Спочатку створіть пару ключів. Пароль до пари ключів має бути порожнім:

 ssh-keygen -t rsa -N '' -f id_rsa

Ця команда створить закритий ключ ("id_rsa") і відкритий ключ ("id_rsa.pub"). Відкритий ключ слід дописати до файла "authorized_keys" на сервері перетворення virt-v2v (зазвичай, до файла "/root/.ssh/authorized_keys").

Закритий ключ має бути додано до файла kickstart, а потім відкинуто:

 virt-p2v-make-kickstart [...] --inject-ssh-identity id_rsa
 rm id_rsa

Образ ISO далі може бути зібрано на основі kickstart у звичний спосіб (див. вище), і він міститиме вбудований профіль SSH (/var/tmp/id_rsa).

При завантаженні virt-p2v вкажіть адресу вставленого файла ось так:

 │         Користувач: [root____________________________] │
 │                                                        │
 │          Пароль: [      <не заповнюйте>                 ] │
 │                                                        │
 │  Адреса профілю SSH: [file:///var/tmp/id_rsa_______] │

або, якщо використовується командний рядок ядра, додайте:

 p2v.identity=file:///var/tmp/id_rsa

Докладніший опис наведено у розділі "ПРОФІЛІ SSH" in virt-p2v(1).

ПАРАМЕТРИ

--help

Показати довідкове повідомлення.

--inject-ssh-identity id_rsa

Додати файл профілю SSH (закритий ключ) до kickstart. Див. "ДОДАВАННЯ ПРОФІЛЮ SSH" вище.

--install пакунок,пакунок,...

Додати додаткові пакунки до розділу %packages kickstart. Див. "ДОДАВАННЯ ДОДАТКОВИХ ПАКУНКІВ" вище.

-o ВИВЕДЕННЯ
--output
ВИВЕДЕННЯ

Записати kickstart до "ВИВЕДЕННЯ". Якщо не вказано, буде типово використано p2v.ks у поточному каталозі.

--proxy АДРЕСА

Наказати kickstart використати для отримання даних проксі-сервер або вебкеш.

-v

--verbose

Увімкнути режим докладних повідомлень. Скористайтеся цим параметром, якщо вам потрібно діагностувати джерело проблеми зі скриптом або створити докладний звіт щодо вади у бібліотеці.

-V

--version

Показати дані щодо версії і завершити роботу.

ФАЙЛИ

$libdir/virt-p2v/virt-p2v.xz

Виконуваний файл virt-p2v(1), який копіюється до файла kickstart.

Розташування виконуваного файла можна змінити за допомогою встановлення відповідного значення змінної середовища "VIRT_P2V_DATA_DIR".

$datadir/virt-p2v/issue
$datadir/virt-p2v/launch-virt-p2v.in
$datadir/virt-p2v/p2v.ks.in
$datadir/virt-p2v/p2v.service

Різноманітні файли даних, які використовуються для створення kickstart.

Розташування цих файлів можна змінити за допомогою встановлення відповідного значення змінної середовища "VIRT_P2V_DATA_DIR".

ЗМІННІ СЕРЕДОВИЩА

"VIRT_P2V_DATA_DIR"

Каталог, де virt-p2v-make-kickstart шукатиме файли даних і виконуваний файл virt-p2v (див. "ФАЙЛИ" вище). Якщо не встановлено, буде використано вказане під час компіляції місце.

ТАКОЖ ПЕРЕГЛЯНЬТЕ

virt-p2v(1), virt-p2v-make-disk(1), virt-v2v(1), livecd-creator(8), livecd-iso-to-disk(8), http://libguestfs.org/.

АВТОРИ

Richard W.M. Jones http://people.redhat.com/~rjones/

АВТОРСЬКІ ПРАВА

Copyright (C) 2009-2019 Red Hat Inc.

LICENSE

BUGS

To get a list of bugs against libguestfs, use this link: https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools

To report a new bug against libguestfs, use this link: https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools

When reporting a bug, please supply:

The version of libguestfs.

Where you got libguestfs (eg. which Linux distro, compiled from source, etc)

Describe the bug accurately and give a way to reproduce it.

Run libguestfs-test-tool(1) and paste the complete, unedited output into the bug report.