File: virt-edit.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 (550 lines) | stat: -rw-r--r-- 29,071 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
.\" 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-edit 1"
.TH virt-edit 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-edit — програма для редагування файлів у віртуальній машині
.SH "КОРОТКИЙ ОПИС"
.IX Header "КОРОТКИЙ ОПИС"
.Vb 1
\& virt\-edit [\-\-параметри] \-d назва_домену файл [файл ...]
\&
\& virt\-edit [\-\-options] \-a диск.img [\-a диск.img ...] файл [файл ...]
\&
\& virt\-edit [\-d назва_домену|\-a диск.img] файл \-e \*(Aqвираз\*(Aq
.Ve
.PP
Застарілий стиль:
.PP
.Vb 1
\& virt\-edit назва_домену файл
\&
\& virt\-edit диск.img [диск.img ...] файл
.Ve
.SH "ОПИС"
.IX Header "ОПИС"
\&\f(CW\*(C`virt\-edit\*(C'\fR — інструмент командного рядка для редагування \f(CW\*(C`файла\*(C'\fR, який
зберігається у вказаній віртуальній машині (або образі диска).
.PP
Ви можете вказати декілька назв файлів. Вміст таких файлів буде редаговано
послідовно. Назви файлів слід вказувати повністю (разом зі шляхом),
починаючи з кореневого каталогу (тобто назва має починатися з «/»).
.PP
Якщо ви просто хочете переглянути файл, скористайтеся \fBvirt\-cat\fR\|(1).
.PP
Для виконання складніших дій можна скористатися програмою \fBguestfish\fR\|(1)
(див. \*(L"ВИКОРИСТАННЯ \s-1GUESTFISH\*(R"\s0 нижче).
.PP
\&\f(CW\*(C`virt\-edit\*(C'\fR не можна використовувати для створення файлів. Для цього, та
багатьох інших завдань, слід використовувати \fBguestfish\fR\|(1).
.SH "ПРИКЛАДИ"
.IX Header "ПРИКЛАДИ"
Інтерактивне редагування іменованих файлів:
.PP
.Vb 1
\& virt\-edit \-d mydomain /boot/grub/grub.conf
\&
\& virt\-edit \-d mydomain /etc/passwd
.Ve
.PP
Для гостьових систем Windows передбачено розпізнавання таких шляхів у
Windows:
.PP
.Vb 1
\& virt\-edit \-d mywindomain \*(Aqc:\eautoexec.bat\*(Aq
.Ve
.PP
Якщо встановлено Perl, ви також можете редагувати файли у неінтерактивному
режимі (див. \*(L"НЕІНТЕРАКТИВНЕ РЕДАГУВАННЯ\*(R" нижче). Щоб змінити типовий
рівень init на 5:
.PP
.Vb 1
\& virt\-edit \-d mydomain /etc/inittab \-e \*(Aqs/^id:.*/id:5:initdefault:/\*(Aq
.Ve
.SH "ПАРАМЕТРИ"
.IX Header "ПАРАМЕТРИ"
.IP "\fB\-\-help\fR" 4
.IX Item "--help"
Показати коротку довідку.
.IP "\fB\-a\fR файл" 4
.IX Item "-a файл"
.PD 0
.IP "\fB\-\-add\fR файл" 4
.IX Item "--add файл"
.PD
Додати \fIфайл\fR, який має бути образом диска з віртуальної машини. Якщо у
віртуальній машині декілька блокових пристроїв, вам слід вказати їх усі за
допомогою окремих записів параметра \fI\-a\fR.
.Sp
Формат образу диска визначається автоматично. Щоб перевизначити його і
примусово використати певний формат, скористайтеся параметром
\&\fI\-\-format=..\fR.
.IP "\fB\-a\fR адреса" 4
.IX Item "-a адреса"
.PD 0
.IP "\fB\-\-add\fR адреса" 4
.IX Item "--add адреса"
.PD
Додати віддалений диск. Див. \*(L"ДОДАВАННЯ ВІДДАЛЕНОГО СХОВИЩА\*(R" in \fBguestfish\fR\|(1).
.IP "\fB\-b\fR СУФІКС" 4
.IX Item "-b СУФІКС"
.PD 0
.IP "\fB\-\-backup\fR СУФІКС" 4
.IX Item "--backup СУФІКС"
.PD
Створити резервну копію початкового файла \fIу образі диска гостьової
системи\fR. Резервна копія матиме таку саму назву, що і початковий файл, із
додаванням суфікса \f(CW\*(C`суфікс\*(C'\fR.
.Sp
Зазвичай, першим символом суфікса \f(CW\*(C`суфікс\*(C'\fR буде крапка, \f(CW\*(C`.\*(C'\fR, отже, можна
віддати таку команду:
.Sp
.Vb 1
\& virt\-edit \-b .orig [тощо]
.Ve
.Sp
Типово файл резервної копії не створюється.
.IP "\fB\-\-blocksize=512\fR" 4
.IX Item "--blocksize=512"
.PD 0
.IP "\fB\-\-blocksize=4096\fR" 4
.IX Item "--blocksize=4096"
.IP "\fB\-\-blocksize\fR" 4
.IX Item "--blocksize"
.PD
This parameter sets the sector size of the disk image.  It affects all
explicitly added subsequent disks after this parameter.  Using
\&\fI\-\-blocksize\fR with no argument switches the disk sector size to the default
value which is usually 512 bytes.  See also
\&\*(L"guestfs_add_drive_opts\*(R" in \fBguestfs\fR\|(3).
.IP "\fB\-c\fR адреса" 4
.IX Item "-c адреса"
.PD 0
.IP "\fB\-\-connect\fR адреса" 4
.IX Item "--connect адреса"
.PD
Якщо використовується libvirt, встановити з’єднання з вказаним \fI\s-1URI\s0\fR. Якщо
пропущено, з’єднання буде встановлено з типовим гіпервізором libvirt.
.Sp
Якщо вказати блокові пристрої гостьових систем безпосередньо, libvirt не
буде використовуватися взагалі.
.IP "\fB\-d\fR ГІСТЬ" 4
.IX Item "-d ГІСТЬ"
.PD 0
.IP "\fB\-\-domain\fR ГІСТЬ" 4
.IX Item "--domain ГІСТЬ"
.PD
Додати всі диски з вказаної гостьової системи libvirt. \s-1UUID\s0 доменів можна
використовувати замість назв.
.IP "\fB\-\-echo\-keys\fR" 4
.IX Item "--echo-keys"
Типово, якщо virt-edit попросить вас ввести ключ або пароль, програма не
відтворюватиме введені символи на екрані. Якщо ви не боїтеся
TEMPEST\-нападів, або у вашій кімнаті нікого, окрім вас, немає, ви можете
скористатися цим прапорцем, щоб бачити, які саме символи ви вводите.
.IP "\fB\-e\fR вираз" 4
.IX Item "-e вираз"
.PD 0
.IP "\fB\-\-edit\fR ВИРАЗ" 4
.IX Item "--edit ВИРАЗ"
.IP "\fB\-\-expr\fR вираз" 4
.IX Item "--expr вираз"
.PD
Замість запуску зовнішнього редактора, неінтерактивно застосувати вираз Perl
\&\f(CW\*(C`ВИРАЗ\*(C'\fR до усіх рядків файла. Див. \*(L"НЕІНТЕРАКТИВНЕ РЕДАГУВАННЯ\*(R" нижче.
.Sp
Слід подбати про належне розставлення лапок у виразі, щоб запобігти його
зміні у командній оболонці.
.Sp
Зауважте, що цим параметром можна буде скористатися, лише якщо встановлено
Perl 5.
.IP "\fB\-\-format=raw|qcow2|..\fR" 4
.IX Item "--format=raw|qcow2|.."
.PD 0
.IP "\fB\-\-format\fR" 4
.IX Item "--format"
.PD
Типовим значенням для параметра \fI\-a\fR є автоматичне визначення формату
образу диска. Використання цього параметра примусово визначає значення
параметрів \fI\-a\fR формату диска у наступному рядку команди. Використання
параметра \fI\-\-format\fR без аргументу перемикає програму у режим автоматичного
визначення у наступних параметрах \fI\-a\fR.
.Sp
Приклад:
.Sp
.Vb 1
\& virt\-edit \-\-format=raw \-a диск.img файл
.Ve
.Sp
примусове встановлення формату без обробки (без автоматичного визначення)
для \fIdisk.img\fR.
.Sp
.Vb 1
\& virt\-cat \-\-format=raw \-a диск.img \-\-format \-a інший.img файл
.Ve
.Sp
примусове встановлення формату без обробки (без автоматичного визначення)
для \fIdiskimg\fR і повернення до автоматичного визначення для \fIanother.img\fR.
.Sp
Якщо ви користуєтеся ненадійними образами гостьових систем у необробленому
форматі, вам слід скористатися цим параметром для визначення формату
диска. Таким чином можна уникнути можливих проблем з захистом для
сформованих зловмисниками гостьових систем (\s-1CVE\-2010\-3851\s0).
.IP "\fB\-\-key\fR ВАРІАНТ" 4
.IX Item "--key ВАРІАНТ"
Specify a key for \s-1LUKS,\s0 to automatically open a \s-1LUKS\s0 device when using the
inspection.  \f(CW\*(C`ID\*(C'\fR can be either the libguestfs device name, or the \s-1UUID\s0 of
the \s-1LUKS\s0 device.
.RS 4
.ie n .IP "\fB\-\-key\fR ""ID"":key:KEY_STRING" 4
.el .IP "\fB\-\-key\fR \f(CWID\fR:key:KEY_STRING" 4
.IX Item "--key ID:key:KEY_STRING"
Використовувати вказаний \f(CW\*(C`РЯДОК_КЛЮЧА\*(C'\fR як пароль.
.ie n .IP "\fB\-\-key\fR ""ID"":file:FILENAME" 4
.el .IP "\fB\-\-key\fR \f(CWID\fR:file:FILENAME" 4
.IX Item "--key ID:file:FILENAME"
Прочитати пароль з файла \fIНАЗВА_ФАЙЛА\fR.
.RE
.RS 4
.RE
.IP "\fB\-\-keys\-from\-stdin\fR" 4
.IX Item "--keys-from-stdin"
Прочитати параметри ключа або пароля із джерела стандартного
введення. Типово програма намагається читати паролі від користувача
відкриттям \fI/dev/tty\fR.
.Sp
If there are multiple encrypted devices then you may need to supply multiple
keys on stdin, one per line.
.IP "\fB\-m\fR пристрій[:точка_монтування[:параметри[:тип_файлової_системи]]]" 4
.IX Item "-m пристрій[:точка_монтування[:параметри[:тип_файлової_системи]]]"
.PD 0
.IP "\fB\-\-mount\fR пристрій[:точка_монтування[:параметри[:тип_файлової_системи]]]" 4
.IX Item "--mount пристрій[:точка_монтування[:параметри[:тип_файлової_системи]]]"
.PD
Змонтувати названий розділ або логічний том до вказаної точки монтування.
.Sp
Якщо точку монтування не вказано, типовим значенням є \fI/\fR.
.Sp
Визначення точки монтування вимикає інспектування гостьової системи і
призводить до монтування її кореневої системи та усіх її точок
монтування. Тому вам слід забезпечити монтування усіх точок монтування,
потрібних для роботи із файлами, назви яких вказано як аргументи.
.Sp
Якщо ви не знаєте, які саме файлові системи містяться у образі диска, ви
можете або запустити guestfish без цього параметра і ознайомитися зі списком
доступних розділів, файлових систем та логічних томів (див. команди
\&\*(L"list-partitions\*(R", \*(L"list-filesystems\*(R" і \*(L"lvs\*(R"), або скористатися
програмою \fBvirt\-filesystems\fR\|(1).
.Sp
Третьою (і нечасто використовуваною) частиною параметра монтування є список
параметрів монтування, які використовуються для того, щоб змонтувати
підлеглу файлову систему. Якщо такий список не буде задано, параметрами
монтування вважатиметься або порожній рядок, або \f(CW\*(C`ro\*(C'\fR (другий варіант
використовується, якщо використано прапорець \fI\-\-ro\fR). Заданням параметрів
монтування ви перевизначаєте типовий варіант. Ймовірно, єдиним випадком,
коли вам може знадобитися це, є випадок вмикання списків керування доступом
(\s-1ACL\s0) і/або розширених атрибутів, якщо у файловій системі передбачено їхню
підтримку:
.Sp
.Vb 1
\& \-m /dev/sda1:/:acl,user_xattr
.Ve
.Sp
Використання цього прапорця є еквівалентним до використання команди
\&\f(CW\*(C`mount\-options\*(C'\fR.
.Sp
Четвертою частиною параметра є назва драйвера файлової системи, якою слід
скористатися, зокрема \f(CW\*(C`ext3\*(C'\fR або \f(CW\*(C`ntfs\*(C'\fR. У визначенні цієї частини
параметра рідко виникає потреба, але вона може бути корисною, якщо для
файлової системи можна скористатися декількома драйверами (приклад: \f(CW\*(C`ext2\*(C'\fR
і \f(CW\*(C`ext3\*(C'\fR), або libguestfs визначає файлову систему помилково.
.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 "ПАРАМЕТРИ КОМАНДНОГО РЯДКА У ФОРМАТІ ПОПЕРЕДНІХ ВЕРСІЙ"
У попередніх версіях virt-edit можна було використовувати або
.PP
.Vb 1
\& virt\-edit диск.img [диск.img ...] файл
.Ve
.PP
або
.PP
.Vb 1
\& virt\-edit назва_гостьової_системи файл
.Ve
.PP
тоді як у цій версії вам слід скористатися \fI\-a\fR або \fI\-d\fR, відповідно, щоб
уникнути помилок у випадках, коли назва образу диска може збігатися із
назвою гостьової системи.
.PP
З міркувань зворотної сумісності передбачено підтримку запису параметрів у
застарілому форматі.
.SH "НЕІНТЕРАКТИВНЕ РЕДАГУВАННЯ"
.IX Header "НЕІНТЕРАКТИВНЕ РЕДАГУВАННЯ"
\&\f(CW\*(C`virt\-edit\*(C'\fR зазвичай викликає \f(CW$EDITOR\fR (або vi), щоб адміністратор
системи зміг інтерактивно редагувати файл.
.PP
Передбачено також два способи використання \f(CW\*(C`virt\-edit\*(C'\fR зі скриптів з метою
автоматизації редагування файлів. (Зауважте, що хоча ви \fIможете\fR
користуватися \f(CW\*(C`virt\-edit\*(C'\fR у цей спосіб, стійкішим до помилок буде написання
скриптів, які безпосередньо використовують програмний інтерфейс libguestfs
та Augeas для редагування файлів налаштувань.)
.PP
Першим методом є тимчасове встановлення \f(CW$EDITOR\fR у значення назви скрипту
або програми, яку ви хочете запустити. Скрипт буде викликано у форматі
\&\f(CW\*(C`$EDITOR tmpfile\*(C'\fR, він має оновлювати \f(CW\*(C`tmpfile\*(C'\fR на місці у будь\-який
спосіб.
.PP
Другим методом є використання параметра \fI\-e\fR програми \f(CW\*(C`virt\-edit\*(C'\fR для
запуску короткого фрагмента коду Perl у стилі \fBsed\fR\|(1). Наприклад, щоб
змінити усі екземпляри \f(CW\*(C`foo\*(C'\fR на \f(CW\*(C`bar\*(C'\fR у файлі, віддайте таку команду:
.PP
.Vb 1
\& virt\-edit \-d назва_домену назва_файла \-e \*(Aqs/foo/bar/\*(Aq
.Ve
.PP
Можна скористатися усією потужністю формальних виразів Perl
(див. \fBperlre\fR\|(1)). Наприклад, для вилучення пароля root ви можете віддати
таку команду:
.PP
.Vb 1
\& virt\-edit \-d назва_домену /etc/passwd \-e \*(Aqs/^root:.*?:/root::/\*(Aq
.Ve
.PP
Під час обробки команди вираз Perl застосовується до кожного з рядків
файла. Рядок, разом із кінцевим \f(CW\*(C`\en\*(C'\fR, передається у \f(CW$_\fR, а вираз має
оновити \f(CW$_\fR або лишити його вміст без змін.
.PP
Щоб вилучити рядок, встановіть для \f(CW$_\fR значення порожнього
рядка. Наприклад, щоб вилучити обліковий запис \f(CW\*(C`apache\*(C'\fR з файла паролів, ви
можете віддати таку команду:
.PP
.Vb 1
\& virt\-edit \-d mydomain /etc/passwd \-e \*(Aq$_ = "" if /^apache:/\*(Aq
.Ve
.PP
Щоб вставити рядок, допишіть його на початку або наприкінці \f(CW$_\fR. Втім,
дописування рядків наприкінці файла у цей спосіб є доволі складною справою —
оскільки не існує загального поняття «останній рядок файла», ваш вираз
просто не буде викликано ще раз. Якщо ви хочете дописати рядок наприкінці
файла, вам варто скористатися першим методом (встановленням значення для
\&\f(CW$EDITOR\fR).
.PP
Змінна \f(CW$lineno\fR містить значення номера поточного рядка. За традицією,
перший рядок файла має номер \f(CW1\fR.
.PP
Значення, повернуте у результаті обробки виразу, ігнорується, але вираз може
викликати \f(CW\*(C`die\*(C'\fR з метою переривання усієї програми без внесення змін до
початкового файла.
.PP
Слід пам'ятати, що відповідник кінця рядка при використанні \f(CW$_\fR може
містити кінцеве \f(CW\*(C`\en\*(C'\fR або (у файлах \s-1DOS\s0) \f(CW\*(C`\er\en\*(C'\fR, або, якщо файл не
закінчується символом нового рядка, жодну з цих послідовностей. Тому для
пошуку або заміни певного тексту наприкінці рядка слід використовувати такий
формальний вираз:
.PP
.Vb 1
\& /якийсь текст(\er?\en)?$/
.Ve
.PP
Альтернативним варіантом є використання функції \f(CW\*(C`chomp\*(C'\fR Perl, але так, щоб
не обрізати саме \f(CW$_\fR (оскільки ця функція вилучає усі символи нового рядка
з файла):
.PP
.Vb 1
\& my $m = $_; chomp $m; $m =~ /якийсь текст$/
.Ve
.SH "ШЛЯХИ У WINDOWS"
.IX Header "ШЛЯХИ У WINDOWS"
У \f(CW\*(C`virt\-edit\*(C'\fR передбачено обмежені можливості щодо обробки літерних дисків
та шляхів у Windows (наприклад \fIE:\efoo\ebar.txt\fR).
.PP
Тоді і лише тоді, коли у гостьовій системі працює Windows:
.IP "\(bu" 4
Літери дисків, наприклад \f(CW\*(C`C:\*(C'\fR, замінюються на адреси відповідних файлових
систем на основі даних з регістру Windows.
.IP "\(bu" 4
Усі символи зворотної похилої риски (\f(CW\*(C`\e\*(C'\fR) у шляху замінюються символами
звичайної похилої риски так, щоб libguestfs змогла обробити адресу.
.IP "\(bu" 4
Шлях до файла, вміст якого має бути редаговано, визначається без врахування
регістру символів у його записі.
.PP
Відомі певні недоліки програми:
.IP "\(bu" 4
Перехід за деякими символічними посиланнями \s-1NTFS\s0 може здійснюватися з
помилками.
.IP "\(bu" 4
Точки з'єднання \s-1NTFS,\s0 які виходять за межі однією файлової системи
використовувати не можна.
.SH "ВИКОРИСТАННЯ GUESTFISH"
.IX Header "ВИКОРИСТАННЯ GUESTFISH"
\&\fBguestfish\fR\|(1) є потужнішим інструментом нижчого рівня, яким можна
скористатися, якщо \f(CW\*(C`virt\-edit\*(C'\fR не працює.
.PP
Використання \f(CW\*(C`virt\-edit\*(C'\fR є приблизним еквівалентом такого:
.PP
.Vb 1
\& guestfish \-\-rw \-i \-d назва_домену edit /файл
.Ve
.PP
де \f(CW\*(C`назва_домену\*(C'\fR — назва гостьової системи libvirt, а \fIфайл\fR — шлях до
файла повністю.
.PP
У вказаній вище команді використано можливість інспектування гостьових
систем засобами libguestfs, отже, вона не працюватиме у гостьових системах,
які libguestfs не може інспектувати, або у довільних образах дисків, які не
містять гостьових систем. Щоб редагувати дані файла безпосередньо на образі
диска, скористайтеся такою командою:
.PP
.Vb 1
\& guestfish \-\-rw \-a диск.img \-m /dev/sda1 edit /файл
.Ve
.PP
де \fIдиск.img\fR — образ диска, \fI/dev/sda1\fR — файлова система у образі диска
для редагування, а \fIфайл\fR — шлях до файла повністю.
.PP
Програма \f(CW\*(C`virt\-edit\*(C'\fR не здатна створювати файли. Для створення слід
користуватися командами guestfish \f(CW\*(C`touch\*(C'\fR, \f(CW\*(C`write\*(C'\fR та \f(CW\*(C`upload\*(C'\fR:
.PP
.Vb 1
\& guestfish \-\-rw \-i \-d назва_домену touch /новий_файл
\&
\& guestfish \-\-rw \-i \-d назва_домену write /новий_файл "новий вміст"
\&
\& guestfish \-\-rw \-i \-d назва_домену upload локальний_файл /новий_файл
.Ve
.SH "ЗМІННІ СЕРЕДОВИЩА"
.IX Header "ЗМІННІ СЕРЕДОВИЩА"
.ie n .IP """EDITOR""" 4
.el .IP "\f(CWEDITOR\fR" 4
.IX Item "EDITOR"
Якщо встановлено, цей рядок використовуватиметься для виклику
редактора. Рядок може містити аргументи, наприклад, \f(CW"emacs \-nw"\fR
.Sp
Якщо не встановлено, використовуватиметься \f(CW\*(C`vi\*(C'\fR.
.SH "СТАН ВИХОДУ"
.IX Header "СТАН ВИХОДУ"
Ця програма повертає значення 0 у разі успішного завершення і ненульове
значення, якщо сталася помилка.
.SH "ТАКОЖ ПЕРЕГЛЯНЬТЕ"
.IX Header "ТАКОЖ ПЕРЕГЛЯНЬТЕ"
\&\fBguestfs\fR\|(3), \fBguestfish\fR\|(1), \fBvirt\-cat\fR\|(1), \fBvirt\-copy\-in\fR\|(1),
\&\fBvirt\-tar\-in\fR\|(1), http://libguestfs.org/, \fBperl\fR\|(1), \fBperlre\fR\|(1).
.SH "АВТОР"
.IX Header "АВТОР"
Richard W.M. Jones http://people.redhat.com/~rjones/
.SH "АВТОРСЬКІ ПРАВА"
.IX Header "АВТОРСЬКІ ПРАВА"
Copyright (C) 2009\-2020 Red Hat Inc.
.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.