.\" Automatically generated by Podwrapper::Man 1.44.2 (Pod::Simple 3.42) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "virt-dib 1" .TH virt-dib 1 "2021-03-31" "libguestfs-1.44.2" "Virtualization Support" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "НАЗВА" .IX Header "НАЗВА" virt-dib \- виконати елементи diskimage-builder .SH "КОРОТКИЙ ОПИС" .IX Header "КОРОТКИЙ ОПИС" .Vb 1 \& virt\-dib \-B DIB\-LIB [параметри] елементи... .Ve .SH "ОПИС" .IX Header "ОПИС" Virt-dib — інструмент для використання елементів \f(CW\*(C`diskimage\-builder\*(C'\fR з метою побудови нового образу диска, створення нових дисків у пам'яті тощо. .PP Virt-dib призначено для безпечної заміни \f(CW\*(C`diskimage\-builder\*(C'\fR і її режиму \&\f(CW\*(C`ramdisk\-image\-create\*(C'\fR, див. \*(L"ПОРІВНЯННЯ З DISKIMAGE-BUILDER\*(R", щоб ознайомитися із коротким порівнянням із використанням \f(CW\*(C`diskimage\-builder\*(C'\fR. .PP \&\f(CW\*(C`diskimage\-builder\*(C'\fR є частиною проєкту TripleO OpenStack: https://wiki.openstack.org/wiki/TripleO. .SH "ПРИКЛАДИ" .IX Header "ПРИКЛАДИ" .SS "Збирання простих образів дистрибутивів" .IX Subsection "Збирання простих образів дистрибутивів" .Vb 6 \& virt\-dib \e \& \-B /шлях/до/diskimage\-builder/lib \e \& \-p /шлях/до/diskimage\-builder/elements \e \& \-\-envvar DIB_RELEASE=jessie \e \& \-\-name debian\-jessie \e \& debian vm .Ve .PP Ця команда збирає образ диска Debian Jessie (8.x), який є придатним для запуску у форматі віртуальної машини, який буде збережено як \&\fIdebian\-jessie.qcow2\fR. .SS "Збирання дисків у пам’яті" .IX Subsection "Збирання дисків у пам’яті" .Vb 6 \& virt\-dib \e \& \-B /шлях/до/diskimage\-builder/lib \e \& \-p /шлях/до/diskimage\-builder/elements \e \& \-\-ramdisk \e \& \-\-name ramdisk \e \& ubuntu deploy\-ironic .Ve .PP Ця команда збирає диск у пам’яті для компонента Ironic OpenStack на основі дистрибутива Ubuntu. .SH "ПАРАМЕТРИ" .IX Header "ПАРАМЕТРИ" .IP "\fB\-\-help\fR" 4 .IX Item "--help" Показати довідкове повідомлення. .IP "\fB\-B\fR ШЛЯХ" 4 .IX Item "-B ШЛЯХ" Встановити шлях до каталогу бібліотеки \f(CW\*(C`diskimage\-builder\*(C'\fR. Типово, це підкаталог \fIlib\fR у початкових кодах, а після встановлення до \fI/usr\fR каталог \fI/usr/share/diskimage\-builder/lib\fR. .Sp Цей параметр є \fBобов'язковим\fR, оскільки virt-dib має надати його елементам (оскільки деякі з них можуть використовувати скрипти у каталозі). Сама ж програма virt-dib не використовує цей каталог бібліотеки безпосередньо. .IP "\fB\-\-arch\fR АРХІТЕКТУРА" 4 .IX Item "--arch АРХІТЕКТУРА" Використовувати для образу\-результату вказану архітектуру. Типовим є значення, яке збігається зі значенням архітектури для основної системи, на якій запущено virt-dib. .Sp У поточній версії цей параметр виконує лише встановлення змінної середовища \&\f(CW\*(C`ARCH\*(C'\fR для елементів, а елементи вже створюють образ для потрібної користувачу архітектури. .IP "\fB\-\-checksum\fR" 4 .IX Item "--checksum" Створювати файли контрольних сум для образу. Підтримуваними є контрольні суми \s-1MD5\s0 та \s-1SHA256.\s0 .IP "\fB\-\-colors\fR" 4 .IX Item "--colors" .PD 0 .IP "\fB\-\-colours\fR" 4 .IX Item "--colours" .PD Використовувати послідовності символів \s-1ANSI\s0 для розфарбовування повідомлень. Ці послідовності типово використовуються, якщо дані виводяться на термінал tty. Якщо дані, виведені програмою, спрямовуються до файла, послідовності визначення кольорів \s-1ANSI\s0 буде вимкнено, якщо ви не додасте до команди цей параметр. .IP "\fB\-\-debug\fR РІВЕНЬ" 4 .IX Item "--debug РІВЕНЬ" Встановити значення рівня діагностики \f(CW\*(C`РІВЕНЬ\*(C'\fR. Рівнем є невід'ємне ціле число. Типовим є рівень \f(CW0\fR. .Sp Цей рівень діагностики відрізняється від рівня, який встановлюється \fI\-x\fR і \&\fI\-v\fR, він збільшує обсяг діагностичної інформації, яка виводиться. Зокрема, він встановлює \f(CW\*(C`DIB_DEBUG_TRACE\*(C'\fR, усі значення рівня > \f(CW0\fR уможливлюють трасування у виконуваних скриптах. .IP "\fB\-\-docker\-target\fR ЦІЛЬ" 4 .IX Item "--docker-target ЦІЛЬ" Встановити сховище і мітку для docker. .Sp Використовується лише тоді, коли серед форматів є \f(CW\*(C`docker\*(C'\fR, і є обов'язковим у цьому випадку. .IP "\fB\-\-drive\fR ДИСК" 4 .IX Item "--drive ДИСК" Додати вказаний диск як допоміжний, такий, де зберігатимуться файли кешу елементів, зокрема образи дисків, пакунки дистрибутива тощо. .Sp Див. \*(L"ДОПОМІЖНИЙ ДИСК\*(R". .IP "\fB\-\-drive\-format\fR raw" 4 .IX Item "--drive-format raw" .PD 0 .IP "\fB\-\-drive\-format\fR qcow2" 4 .IX Item "--drive-format qcow2" .PD Вказати формат допоміжного диска. Якщо цей прапорець не вказано, його буде автоматично визначено на основі даних самого диска. .Sp Якщо ви працюєте із образами дисків гостьових систем у форматі raw із ненадійних джерел, вам слід завжди вказувати назву формату. .Sp Цей параметр використовується, лише якщо вказано \fI\-\-drive\fR. .Sp Див. \*(L"ДОПОМІЖНИЙ ДИСК\*(R". .IP "\fB\-p\fR ШЛЯХ" 4 .IX Item "-p ШЛЯХ" .PD 0 .IP "\fB\-\-element\-path\fR ШЛЯХ" 4 .IX Item "--element-path ШЛЯХ" .PD Додати новий шлях з елементами. Шляхи використовуватимуться у тому самому порядку, у якому з’являються параметри \fI\-p\fR, отже, пошук за шляхом, вказаним першим, відбуватиметься спочатку. .Sp Очевидно, варто додати шлях до власних елементів \f(CW\*(C`diskimage\-builder\*(C'\fR, оскільки більшість інших елементів покладатимуться на ці дані. .IP "\fB\-\-extra\-packages\fR ПАКУНОК,..." 4 .IX Item "--extra-packages ПАКУНОК,..." Встановити додаткові пакунки у образ, який збиратиметься. .Sp Робота цього параметра залежить від виконуваного файла \f(CW\*(C`install\-packages\*(C'\fR, який визначається елементами керування пакунками. .Sp Цей параметр може бути використано декілька разів, декілька пакунків у аргументах слід відокремлювати комами. .IP "\fB\-\-envvar\fR ЗМІННА" 4 .IX Item "--envvar ЗМІННА" .PD 0 .IP "\fB\-\-envvar\fR ЗМІННА=ЗНАЧЕННЯ" 4 .IX Item "--envvar ЗМІННА=ЗНАЧЕННЯ" .PD Передати або встановити змінну середовища для елементів. .Sp Див. \*(L"ЗМІННІ СЕРЕДОВИЩА\*(R" нижче, щоб дізнатися більше про взаємодію і використання змінних середовища. .Sp Цим параметром можна скористатися у декілька способів: .RS 4 .IP "\fB\-\-envvar\fR ЗМІННА" 4 .IX Item "--envvar ЗМІННА" Передати змінну середовища \f(CW\*(C`ЗМІННА\*(C'\fR. Якщо змінну не встановлено, до елементів нічого не експортуватиметься. .IP "\fB\-\-envvar\fR ЗМІННА=ЗНАЧЕННЯ" 4 .IX Item "--envvar ЗМІННА=ЗНАЧЕННЯ" Встановити для змінної середовища \f(CW\*(C`ЗМІННА\*(C'\fR значення \f(CW\*(C`ЗНАЧЕННЯ\*(C'\fR для елементів, незалежно від того, чи вже існує змінна середовища із тією самою назвою. .Sp Може бути корисним для передавання змінної середовища без експортування у середовище, де запущено virt-dib. .RE .RS 4 .RE .IP "\fB\-\-exclude\-element\fR ЕЛЕМЕНТ" 4 .IX Item "--exclude-element ЕЛЕМЕНТ" Ігнорувати вказаний елемент. .IP "\fB\-\-exclude\-script\fR СКРИПТ" 4 .IX Item "--exclude-script СКРИПТ" Ігнорувати будь\-який скрипт елемента із назвою \f(CW\*(C`СКРИПТ\*(C'\fR, байдуже, до якого елемента він належатиме. .Sp Це може бути корисним, якщо якийсь скрипт погано працює з virt-dib, наприклад, якщо скриптові справді потрібне середовище \f(CW\*(C`diskimage\-builder\*(C'\fR. .IP "\fB\-\-formats\fR ФОРМАТ,..." 4 .IX Item "--formats ФОРМАТ,..." Встановити список форматів виведення даних, відокремлених комами. .Sp Підтримувані формати: .RS 4 .ie n .IP """docker""" 4 .el .IP "\f(CWdocker\fR" 4 .IX Item "docker" Імпортувати образ до docker за допомогою команди \fBdocker import\fR. Призначення для образу \fBмає\fR бути вказано за допомогою \&\fI\-\-docker\-target\fR. .Sp Будь ласка, зауважте, що виконання цієї дії зазвичай потребує вмикання служби docker, інакше його не вдасться виконати. Крім того, \fBdocker\fR працює з використанням \fBsudo\fR\|(8), отже, переконайтеся, що користувач має право запускати принаймні \fBdocker\fR. .ie n .IP """qcow2"" (типово увімкнено)" 4 .el .IP "\f(CWqcow2\fR (типово увімкнено)" 4 .IX Item "qcow2 (типово увімкнено)" qcow2 для \s-1QEMU.\s0 Для роботи з цим форматом потрібна програма \f(CW\*(C`qemu\-img\*(C'\fR. .ie n .IP """raw""" 4 .el .IP "\f(CWraw\fR" 4 .IX Item "raw" Формат даних диска без обробки. .ie n .IP """squashfs""" 4 .el .IP "\f(CWsquashfs\fR" 4 .IX Item "squashfs" Файлова система squashfs, яку стиснуто за допомогою \s-1XZ.\s0 Для користування цим форматом виведення даних потрібна можливість \f(CW\*(C`squashfs\*(C'\fR; див. також \&\*(L"ДОСТУПНІСТЬ\*(R" in \fBguestfs\fR\|(3). .ie n .IP """tar""" 4 .el .IP "\f(CWtar\fR" 4 .IX Item "tar" Архів без стискання. .ie n .IP """tgz""" 4 .el .IP "\f(CWtgz\fR" 4 .IX Item "tgz" Архів tar, стиснутий за допомогою gzip. .ie n .IP """vhd""" 4 .el .IP "\f(CWvhd\fR" 4 .IX Item "vhd" Образ диска \f(CW\*(C`Virtual Hard Disk\*(C'\fR. Виведення даних у цьому форматі вимагає наявності \f(CW\*(C`vhd\-util\*(C'\fR. .Sp Будь ласка, зверніть увагу на те, що версія \f(CW\*(C`vhd\-util\*(C'\fR повинна бути зібраною із латкою, яка вмикає підтримку підкоманди \f(CW\*(C`convert\*(C'\fR, і бути придатною до завантаження. Латку можна знайти тут: https://github.com/emonty/vhd\-util/blob/master/debian/patches/citrix. .RE .RS 4 .RE .IP "\fB\-\-fs\-type\fR ФАЙЛОВА СИСТЕМА" 4 .IX Item "--fs-type ФАЙЛОВА СИСТЕМА" Встановити файлову систему, яку буде використано для кореневої теки системи. Типовою є \f(CW\*(C`ext4\*(C'\fR. .Sp Див. також \*(L"guestfs_filesystem_available\*(R" in \fBguestfs\fR\|(3) .IP "\fB\-\-image\-cache\fR КАТАЛОГ" 4 .IX Item "--image-cache КАТАЛОГ" Встановити каталог у основній системі, до якого кешуватимуться ресурси, які використовуються елементами фази \f(CW\*(C`extra\-data.d\*(C'\fR. Типовим є \&\fI~/.cache/image\-create\fR. .Sp Будь ласка, зауважте, що більшість ресурсів, які отримуватимуться на фазах, відмінних від \f(CW\*(C`extra\-data.d\*(C'\fR, кешуватимуться на допоміжному диску, вказаному за допомогою \fI\-\-drive\fR; див. також \*(L"ДОПОМІЖНИЙ ДИСК\*(R". .IP "\fB\-\-install\-type\fR ТИП" 4 .IX Item "--install-type ТИП" Вказати типовий тип встановлення. Стандартним є \f(CW\*(C`source\*(C'\fR. .Sp Встановіть значення \f(CW\*(C`package\*(C'\fR, щоб типово використовувати засноване на пакунках встановлення. .IP "\fB\-\-machine\-readable\fR" 4 .IX Item "--machine-readable" .PD 0 .IP "\fB\-\-machine\-readable\fR=формат" 4 .IX Item "--machine-readable=формат" .PD За допомогою цього параметра можна зробити виведені дані придатнішими для обробки комп'ютером, якщо для цієї обробки використовуються інші програми. Див. \*(L"ПРИДАТНЕ ДО ЧИТАННЯ КОМП'ЮТЕРОМ ВИВЕДЕННЯ\*(R" нижче. .IP "\fB\-m\fR МБ" 4 .IX Item "-m МБ" .PD 0 .IP "\fB\-\-memsize\fR МБ" 4 .IX Item "--memsize МБ" .PD Змінити обсяг пам'яті, який надаватиметься для базової системи. Збільште це значення, якщо для виконання virt-dib не вистачає пам'яті. .Sp Типові значення можна визначити за допомогою такої команди: .Sp .Vb 1 \& guestfish get\-memsize .Ve .ie n .IP "\fB\-\-mkfs\-options\fR ""РЯДОК ПАРАМЕТРІВ""" 4 .el .IP "\fB\-\-mkfs\-options\fR \f(CWРЯДОК ПАРАМЕТРІВ\fR" 4 .IX Item "--mkfs-options РЯДОК ПАРАМЕТРІВ" Додати вказані параметри до \fBmkfs\fR\|(1), щоб мати змогу скоригувати параметри створення кореневої файлової системи; параметри передаються драйверу \&\fBmfks\fR\|(1), а не самій \fBmfks\fR\|(1). Зауважте, що для зміни типу файлової системи використовується \fI\-\-fs\-type\fR. .Sp Вам слід скористатися \fI\-\-mkfs\-options\fR не більше одного разу. Щоб передати декілька параметрів, відокремте їх пробілами. Приклад: .Sp .Vb 1 \& virt\-dib ... \-\-mkfs\-options \*(Aq\-O якийсь_параметр \-I щось_ще\*(Aq .Ve .IP "\fB\-\-network\fR" 4 .IX Item "--network" .PD 0 .IP "\fB\-\-no\-network\fR" 4 .IX Item "--no-network" .PD Увімкнути чи вимкнути доступ до мережі для гостьової системи під час встановлення. .Sp Типово увімкнено. Скористайтеся параметром \fI\-\-no\-network\fR, щоб вимкнути доступ. .Sp У мережі працюватимуть лише вихідні з'єднання, а також буде декілька інших незначних обмежень. Див. \*(L"МЕРЕЖА\*(R" in \fBvirt\-rescue\fR\|(1). .Sp Це не вплине на доступність мережі для гостьової системи після її завантаження, оскільки така доступність керується вашим гіпервізором або хмарним середовищем і не має нічого спільного з virt-dib. .Sp Якщо ви використаєте параметр \fI\-\-no\-network\fR, змінній середовища \&\f(CW\*(C`DIB_OFFLINE\*(C'\fR буде надано значення \f(CW1\fR, що сигналізуватиме елементам про те, що їм слід використовувати лише кешовані ресурси, якщо вони доступні. Також слід зауважити, що, на відміну від \f(CW\*(C`diskimage\-builder\*(C'\fR, де елементи все ще можуть отримувати доступ до мережі навіть із \&\f(CW\*(C`DIB_OFFLINE=\*(C'\fR, у virt-dib мережа буде зовсім недоступною. .IP "\fB\-\-name\fR НАЗВА" 4 .IX Item "--name НАЗВА" Встановити назву для файла із виведеним образом. Типовою є \f(CW\*(C`image\*(C'\fR. .Sp Відповідно до вибраної назви, у поточному каталозі буде таке: .RS 4 .IP "\fI\f(CI$NAME\fI.ext\fR" 4 .IX Item "$NAME.ext" Для кожного з форматів виведення назву файла буде взято з назви образу\-результату, а суфікс назви залежатиме від формату. Приклад: \&\fI\f(CI$NAME\fI.qcow2\fR, \fI\f(CI$NAME\fI.raw\fR тощо. .Sp Не можна застосовувати у режимі диска у пам'яті (ramdisk), див. \*(L"ЗБИРАННЯ ДИСКА У ПАМ'ЯТІ\*(R". .IP "\fI\f(CI$NAME\fI.d\fR" 4 .IX Item "$NAME.d" Каталог, що містить будь\-які файли, створені елементами, наприклад каталог \&\fIdib-manifests\fR (створено елементом \f(CW\*(C`manifests\*(C'\fR), диски у пам'яті та ядра у режимі диску у пам'яті тощо. .IP "\fI\f(CI$NAME\fI.ext.checksum\fR" 4 .IX Item "$NAME.ext.checksum" Якщо вказано \fI\-\-checksum\fR, буде створено файли для усіх підтримуваних типів контрольних сум; приклади: \fI\f(CI$NAME\fI.ext.md5\fR, \fI\f(CI$NAME\fI.ext.sha256\fR тощо. .Sp Не можна застосовувати у режимі диска у пам'яті (ramdisk), див. \*(L"ЗБИРАННЯ ДИСКА У ПАМ'ЯТІ\*(R". .RE .RS 4 .RE .IP "\fB\-\-no\-delete\-on\-failure\fR" 4 .IX Item "--no-delete-on-failure" Не вилучати файли з виведеними даними, якщо під час збирання станеться помилка. Цими файлами можна скористатися для діагностики помилок у запущених скриптах. .Sp Типовою є поведінка, коли файли результатів буде вилучено, якщо станеться помилка у virt-dib (або, наприклад, помилка у одному зі скриптів, які запускає ця програма). .IP "\fB\-\-python\fR \s-1PYTHON\s0" 4 .IX Item "--python PYTHON" Вказати для використання інший інтерпретатор Python. Частину \&\f(CW\*(C`diskimage\-builder\*(C'\fR реалізовано мовою Python, тому інтерпретатор є обов'язковим. .Sp Значенням \f(CW\*(C`PYTHON\*(C'\fR може бути або повна назва виконуваного файла (наприклад \&\fIpython2\fR, пошук якого буде виконано у каталогах змінної \f(CW$PATH\fR), або шлях повністю (наприклад \fI/usr/bin/python2\fR). Якщо не вказано, типовим значенням буде \fIpython\fR. .IP "\fB\-q\fR" 4 .IX Item "-q" .PD 0 .IP "\fB\-\-quiet\fR" 4 .IX Item "--quiet" .PD Не виводити звичайних повідомлень щодо поступу. .IP "\fB\-\-qemu\-img\-options\fR параметр[,параметр,...]" 4 .IX Item "--qemu-img-options параметр[,параметр,...]" Передати параметри \fI\-\-qemu\-img\-options\fR до програми \fBqemu\-img\fR\|(1) для коригування формату виведення даних. Перелік доступних параметрів залежить від формату виведення (див. \fI\-\-formats\fR) і встановленої версії програми qemu-img. .Sp Вам слід скористатися \fI\-\-qemu\-img\-options\fR не більше одного разу. Щоб передати декілька параметрів, відокремте їх комами. Приклад: .Sp .Vb 1 \& virt\-dib ... \-\-qemu\-img\-options cluster_size=512,preallocation=metadata ... .Ve .IP "\fB\-\-ramdisk\fR" 4 .IX Item "--ramdisk" Встановити режим збирання диска у пам’яті. .Sp Див. \*(L"ЗБИРАННЯ ДИСКА У ПАМ'ЯТІ\*(R". .IP "\fB\-\-ramdisk\-element\fR НАЗВА" 4 .IX Item "--ramdisk-element НАЗВА" Встановити назву для додаткового елемента, який буде додано у режимі збирання диска у пам'яті. Типовою є назва \f(CW\*(C`ramdisk\*(C'\fR. .Sp Див. \*(L"ЗБИРАННЯ ДИСКА У ПАМ'ЯТІ\*(R". .IP "\fB\-\-root\-label\fR МІТКА" 4 .IX Item "--root-label МІТКА" Встановити мітку для кореневої файлової системи у створеному образі. .Sp Будь ласка, зауважте, що у деяких файлових системах обмеження на мітки може бути іншим. Наприклад, у файлових системах \f(CW\*(C`ext2/3/4\*(C'\fR мітки не можуть бути довшими за 16 символів, а у \f(CW\*(C`xfs\*(C'\fR найбільшою довжиною мітки є 12 символів. .Sp Типове значення залежить від типу файлової системи для кореневого розділу (див. \fI\-\-fs\-type\fR): на \f(CW\*(C`xfs\*(C'\fR — це \f(CW\*(C`img\-rootfs\*(C'\fR, а на будь\-якій іншій файловій системі — \f(CW\*(C`cloudimg\-rootfs\*(C'\fR. .IP "\fB\-\-size\fR РОЗМІР" 4 .IX Item "--size РОЗМІР" Вибір розміру диска\-результату, де розмір можна вказати за допомогою типових записів, зокрема \f(CW\*(C`32G\*(C'\fR (32 гігабайти) тощо. Типовим є розмір \f(CW\*(C`5G\*(C'\fR. .Sp Щоб вказати розмір у байтах, додайте до числа малу літеру \fIb\fR, наприклад \&\f(CW\*(C`\-\-size 10737418240b\*(C'\fR. .Sp Див. також \fBvirt\-resize\fR\|(1) щодо зміни розмірів розділів на наявному образі диска. .IP "\fB\-\-skip\-base\fR" 4 .IX Item "--skip-base" Пропустити включення елемента \f(CW\*(C`base\*(C'\fR. .IP "\fB\-\-smp\fR N" 4 .IX Item "--smp N" Увімкнути використання скриптами N ≥ 2 віртуальних процесорів. .IP "\fB\-u\fR" 4 .IX Item "-u" Не стискати отримані образи qcow2. Типово, програма стискає такі образи. .IP "\fB\-v\fR" 4 .IX Item "-v" .PD 0 .IP "\fB\-\-verbose\fR" 4 .IX Item "--verbose" .PD Увімкнути показ діагностичних повідомлень. .IP "\fB\-V\fR" 4 .IX Item "-V" .PD 0 .IP "\fB\-\-version\fR" 4 .IX Item "--version" .PD Показати дані щодо версії і завершити роботу. .IP "\fB\-x\fR" 4 .IX Item "-x" Увімкнути трасування викликів програмного інтерфейсу libguestfs. .SH "ЗМІННІ СЕРЕДОВИЩА" .IX Header "ЗМІННІ СЕРЕДОВИЩА" На відміну від \f(CW\*(C`diskimage\-builder\*(C'\fR, середовище основної системи \fBне\fR успадковується у базовій системі під час запуску більшості елементів (тобто усіх, окрім елементів у фазі \f(CW\*(C`extra\-data.d\*(C'\fR). .PP Щоб встановити змінні середовища для виконання елементів, слід повідомити virt-dib, що слід використовувати ці змінні, за допомогою параметра \&\fI\-\-envvar\fR. Такий параметр надасть змогу вибірково експортувати змінні середовища під час виконання елементі. Це також пріоритетний шлях передавання змінних середовища елементам. .PP І ще раз: якщо вам потрібно, щоб змінна середовища \f(CW\*(C`MYVAR\*(C'\fR (і її вміст) були доступні елементам, вам слід або віддати команду .PP .Vb 2 \& export MYVAR # яким би не було її значення \& virt\-dib ... \-\-envvar MYVAR ... .Ve .PP або .PP .Vb 1 \& virt\-dib ... \-\-envvar MYVAR=її_значення ... .Ve .SH "ДОПОМІЖНИЙ ДИСК" .IX Header "ДОПОМІЖНИЙ ДИСК" Virt-dib виконує більшість елементів у власній базовій системі, отже, не на основній системі. Через це, елементи не можуть кешувати ресурси безпосередньо на основній системі. .PP Щоб усунути цю незручність, у virt-dib передбачено можливість використання допоміжного диска, на якому можна зберігати кешовані ресурси, зокрема образи дисків, пакунки дистрибутивів тощо. Хоча це означає, що для кешування буде доступним менше місця, принаймні, це надає змогу обмежити простір у основній системі для кешів без потреби у виконанні цього завдання засобами самих елементів. .PP У поточній версії або цей диск має містити лише один розділ, або має використовуватися лише перший розділ з диска. Диск із другим варіантом конфігурації доволі просто створити за допомогою \fBguestfish\fR\|(1) ось так: .PP .Vb 1 \& guestfish \-N filename.img=fs:ext4:10G exit .Ve .PP У результаті виконання наведеної вище команди буде створено образ диска із назвою \fIfilename.img\fR об'ємом у 10 ГБ з одним розділом типу ext4; див. \*(L"ОБРАЗИ ПРИГОТОВАНИХ ДИСКІВ\*(R" in \fBguestfish\fR\|(1). .PP Рекомендованим розміром диска є ≥ 10 ГБ, оскільки елементи кешуватимуть образи дисків, пакунки дистрибутивів тощо. Як і розмір будь\-якого образу диска, розмір допоміжного диска можна змінити за допомогою \&\fBvirt\-resize\fR\|(1), якщо раптом він стане замалим. .PP Доступ до диска може здійснюватися у спосіб, який є подібним до способу доступу до будь\-яких інших образів дисків, наприклад, за допомогою інших інструментів libguestfs, зокрема \fBguestfish\fR\|(1): .PP .Vb 1 \& guestfish \-a filename.img \-m /dev/sda1 .Ve .PP Якщо за допомогою \fI\-\-drive\fR не вказано жодного допоміжного диска, усі ресурси, кешовані під час запуску virt-dib, буде відкинуто. .SS "РЕСУРСИ НА ДИСКУ" .IX Subsection "РЕСУРСИ НА ДИСКУ" У допоміжному диску можна шукати такі ресурси: .IP "\fI/home\fR" 4 .IX Item "/home" Цей каталог задається за допомогою змінної середовища \f(CW\*(C`HOME\*(C'\fR під час збирання. У ньому, здебільшого, міститься кеш образів (збережений до \&\fI/home/.cache/image\-create\fR) та усі інші ресурси у домашньому каталозі користувача, який запускає різні інструменти. .IP "\fI/virt\-dib\-*.log\fR" 4 .IX Item "/virt-dib-*.log" Це журнали елементів, які виконуються у базовій системі libguestfs, тобто усі фази, окрім \f(CW\*(C`extra\-data.d\*(C'\fR. .SH "ЗБИРАННЯ ДИСКА У ПАМ'ЯТІ" .IX Header "ЗБИРАННЯ ДИСКА У ПАМ'ЯТІ" Virt-dib може також емулювати \f(CW\*(C`ramdisk\-image\-create\*(C'\fR, вторинний режим роботи \f(CW\*(C`diskimage\-builder\*(C'\fR. Замість використання якогось інструмента із іншою назвою, virt-dib надає простий доступ до режиму за допомогою параметра \&\fI\-\-ramdisk\fR. .PP У цьому режимі: .IP "\(bu" 4 додається елемент ramdisk (див. \fI\-\-ramdisk\-element\fR) .IP "\(bu" 4 образу не створюється (отже, \fI\-\-formats\fR буде проігноровано) .IP "\(bu" 4 \&\fI\f(CI$NAME\fI.d\fR (див. \fI\-\-name\fR) міститиме initrd, kernel, тощо. .SH "ТИМЧАСОВИЙ КАТАЛОГ" .IX Header "ТИМЧАСОВИЙ КАТАЛОГ" Virt-dib використовує стандартний каталог для тимчасових файлів, який використовується libguestfs, див. \*(L"ЗМІННІ СЕРЕДОВИЩА\*(R" in \fBguestfs\fR\|(3). .PP Типово, цим каталогом є \fI/tmp\fR (типове значення для \f(CW\*(C`TMPDIR\*(C'\fR). У деяких системах для цього каталогу може використовуватися файлова система tmpfs. Таким чином, типовим максимальним розміром для нього є \fIполовина\fR фізичного розміру оперативної пам'яті. Якщо під час роботи virt-dib перевищить це обмеження, програма може повиснути або завершити роботу передчасно із повідомленням про помилку. Усунути цю проблему можна, вказавши для \f(CW\*(C`TMPDIR\*(C'\fR тимчасовий каталог. Приклад: .PP .Vb 3 \& mkdir local\-tmp \& env TMPDIR=$PWD/local\-tmp virt\-dib ... \& rm \-rf local\-tmp .Ve .SH "ДОДАТКОВІ ЗАЛЕЖНОСТІ" .IX Header "ДОДАТКОВІ ЗАЛЕЖНОСТІ" Оскільки virt-dib запускає більшість елементів у власній базовій системі, усі інструменти та бібліотеки, які використовуються елементами, що запускаються поза межами гостьової системи (типово \f(CW\*(C`root.d\*(C'\fR, \&\f(CW\*(C`block\-device.d\*(C'\fR та \f(CW\*(C`cleanup.d\*(C'\fR) мають бути і у базовій системі. Якщо їх не буде, скрипти не зможуть працювати і типово повідомлять про помилку \&\f(CW\*(C`команду не знайдено\*(C'\fR. .PP Для інструментів і бібліотек, які містяться у пакунках дистрибутивів, простим рішенням цієї проблеми буде віддання наказу libguestfs включити додаткові пакунки до базової системи. Зробити це можна, наприклад, створення файла із додатковими пакунками: .PP .Vb 1 \& # echo wget > /usr/lib64/guestfs/supermin.d/dib\-my\-extra .Ve .PP Шлях до каталогу \fIsupermin.d\fR, звичайно ж, залежить від дистрибутива. У додаткових файлах може бути список із багатьма пакунками, кожен з яких слід вказувати окремому рядку. Докладніший опис можна знайти у підручнику з \&\fBsupermin\fR\|(1). .SH "ПОРІВНЯННЯ ІЗ DISKIMAGE-BUILDER" .IX Header "ПОРІВНЯННЯ ІЗ DISKIMAGE-BUILDER" Призначенням virt-dib є бути безпечним замінником програми \&\f(CW\*(C`diskimage\-builder\*(C'\fR і її режиму \f(CW\*(C`ramdisk\-image\-create\*(C'\fR. Помітні для користувача відмінності полягають ось у чому: .IP "\(bu" 4 аргументи командного рядка; деякі з аргументів збігаються із аргументами \&\f(CW\*(C`diskimage\-builder\*(C'\fR, але деякі є іншими: .Sp .Vb 12 \& disk\-image\-create virt\-dib \& \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- \-\-\-\-\-\-\-\- \& \-a ARCH \-\-arch АРХІТЕКТУРА \& \-\-image\-size РОЗМІР \-\-size РОЗМІР \& \-\-max\-online\-resize РОЗМІР doable using \-\-mkfs\-options \& \-n \-\-skip\-base \& \-o НАЗВА ОБРАЗУ \-\-name НАЗВА ОБРАЗУ \& \-p ПАКУНКИ \-\-extra\-packages ПАКУНКИ \& \-t ФОРМАТИ \-\-formats ФОРМАТИ \& \-x \-\-debug 1 \& \-x \-x \-\-debug 2 \& \-x \-x [\-x ...] \-\-debug 3/4/etc .Ve .IP "\(bu" 4 розташування файлів\-результатів, які не є образами (зокрема дисків у пам'яті і ядер) .IP "\(bu" 4 спосіб зберігання деяких кешованих ресурсів: використання допоміжного диска, а не диска, на якому запущено virt-dib .IP "\(bu" 4 потреба у визначення розміру диска\-результату, тоді як програма \&\f(CW\*(C`diskimage\-builder\*(C'\fR автоматично обчислює оптимальний розмір .IP "\(bu" 4 обробка змінних середовища, див. \*(L"ЗМІННІ СЕРЕДОВИЩА\*(R". .Sp До того ж, окрім власних змінних середовища libguestfs (див. \*(L"ЗМІННІ СЕРЕДОВИЩА\*(R" in \fBguestfs\fR\|(3)), virt-dib не виконує читання жодних інших змінних середовища. Це означає, що зміни у параметрах і поведінці програми визначаються лише переданими їй аргументами рядка команди. .IP "\(bu" 4 потрібно, щоб додаткові інструменти на деяких фазах поза chroot були доступні у базовій системі, див. \*(L"ДОДАТКОВІ ЗАЛЕЖНОСТІ\*(R". .PP Робота самих елементів не повинна зазнати змін; причиною відмінностей у поведінці можуть бути помилкові припущення у коді самих елементів або некоректна емуляція virt-dib. .PP Відомі вади: .IP "\(bu" 4 (нічого) .SH "ПРИДАТНЕ ДО ЧИТАННЯ КОМП'ЮТЕРОМ ВИВЕДЕННЯ" .IX Header "ПРИДАТНЕ ДО ЧИТАННЯ КОМП'ЮТЕРОМ ВИВЕДЕННЯ" Для виведення даних у зручному для машинної обробки форматі можна скористатися параметром \fI\-\-machine\-readable\fR. Додавання цього параметра робить зручним використання virt-dib з інших програм, графічних інтерфейсів тощо. .PP Скористайтеся цим параметром окремо, щоб опитати систему щодо можливостей виконуваного файла virt-dib. Типово виведені дані виглядатимуть якось так: .PP .Vb 6 \& $ virt\-dib \-\-machine\-readable \& virt\-dib \& output:qcow2 \& output:tar \& output:raw \& output:vhd .Ve .PP Виводиться список можливостей, по одній на рядок, і програма завершує роботу зі станом 0. .PP \&\f(CW\*(C`output:\*(C'\fR є вказівкою на формати виведення (параметр рядка команди \&\fI\-\-formats\fR), підтримку яких передбачено у цьому виконуваному файлі. .PP Можна вказати рядок форматування для керування виведенням, див. \*(L"РОЗШИРЕНЕ ПРИДАТНЕ ДО ЧИТАННЯ КОМП'ЮТЕРОМ ВИВЕДЕННЯ\*(R" in \fBguestfs\fR\|(3). .SH "ТЕСТУВАННЯ" .IX Header "ТЕСТУВАННЯ" Перевірку працездатності virt-dib було виконано для \f(CW\*(C`diskimage\-builder\*(C'\fR (та його елементів) ≥ 0.1.43. Час від часу виконується також перевірка для \&\f(CW\*(C`tripleo\-image\-elements\*(C'\fR та \f(CW\*(C`sahara\-image\-elements\*(C'\fR. .PP Попередні версії також можуть працювати, але цього не можна гарантувати. .SH "СТАН ВИХОДУ" .IX Header "СТАН ВИХОДУ" Ця програма повертає значення 0 у разі успішного завершення і ненульове значення, якщо сталася помилка. .SH "ТАКОЖ ПЕРЕГЛЯНЬТЕ" .IX Header "ТАКОЖ ПЕРЕГЛЯНЬТЕ" \&\fBguestfs\fR\|(3), \fBguestfish\fR\|(1), \fBvirt\-resize\fR\|(1), http://libguestfs.org/. .SH "АВТОР" .IX Header "АВТОР" Pino Toscano (\f(CW\*(C`ptoscano at redhat dot com\*(C'\fR) .SH "АВТОРСЬКІ ПРАВА" .IX Header "АВТОРСЬКІ ПРАВА" © Red Hat Inc., 2015 .SH "LICENSE" .IX Header "LICENSE" .SH "BUGS" .IX Header "BUGS" To get a list of bugs against libguestfs, use this link: https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools .PP To report a new bug against libguestfs, use this link: https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools .PP When reporting a bug, please supply: .IP "\(bu" 4 The version of libguestfs. .IP "\(bu" 4 Where you got libguestfs (eg. which Linux distro, compiled from source, etc) .IP "\(bu" 4 Describe the bug accurately and give a way to reproduce it. .IP "\(bu" 4 Run \fBlibguestfs\-test\-tool\fR\|(1) and paste the \fBcomplete, unedited\fR output into the bug report.