File: virt-dib.1

package info (click to toggle)
libguestfs 1%3A1.44.0-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 118,932 kB
  • sloc: ansic: 458,017; ml: 51,424; sh: 13,191; java: 9,578; makefile: 7,931; cs: 6,328; haskell: 5,674; python: 3,871; perl: 3,528; erlang: 2,446; xml: 1,347; ruby: 350; pascal: 257; javascript: 157; lex: 135; yacc: 128; cpp: 10
file content (770 lines) | stat: -rw-r--r-- 44,320 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
.\" Automatically generated by Podwrapper::Man 1.44.0 (Pod::Simple 3.40)
.\"
.\" 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-01-05" "libguestfs-1.44.0" "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.