Scroll to navigation

guestfish(1) Virtualization Support guestfish(1)

НАЗВА

guestfish — командна оболонка файлової системи гостьової операційної системи

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

 guestfish [--параметри] [команди]
 guestfish
 guestfish [--ro|--rw] -a диск.img
 guestfish [--ro|--rw] -a диск.img -m пристрій[:точка_монтування]
 guestfish -d домен-libvirt
 guestfish [--ro|--rw] -a диск.img -i
 guestfish -d домен-libvirt -i

ОПИС

Guestfish — командна оболонка та засіб командного рядка для вивчення і внесення змін до файлових систем віртуальних машин. У програмі використовується libguestfs і надається доступ до усіх функціональних можливостей програмного інтерфейсу guestfs, див. guestfs(3).

Guestfish надає вам структурований доступ до програмного інтерфейсу libguestfs зі скриптів оболонки, командного рядка або інтерактивно. Якщо ви хочете відновити пошкоджений образ віртуальної машини, вам слід скористатися командою virt-rescue(1).

ПРИКЛАДИ

Як інтерактивну оболонку

 $ guestfish

Ласкаво просимо до guestfish, оболонки файлової гостьової системи для редагування файлових систем віртуальних машин та образів дисків.

 Введіть: «help» для отримання списку команд
       «man» для читання підручника
       «quit», щоб вийти з оболонки
 
 ><fs> add-ro диск.img
 ><fs> run
 ><fs> list-filesystems
 /dev/sda1: ext4
 /dev/vg_guest/lv_root: ext4
 /dev/vg_guest/lv_swap: swap
 ><fs> mount /dev/vg_guest/lv_root /
 ><fs> cat /etc/fstab
 # /etc/fstab
 # Created by anaconda
 [...]
 ><fs> exit

Зі скриптів оболонки

Створення файла /etc/motd у гостьовій системі або на образі диска:

 guestfish <<_EOF_
 add disk.img
 run
 mount /dev/vg_guest/lv_root /
 write /etc/motd "Welcome, new users"
 _EOF_

Виведення списку логічних томів LVM на образі диска:

 guestfish -a диск.img --ro <<_EOF_
 run
 lvs
 _EOF_

Виведення списку усіх файлових систем на образі диска:

 guestfish -a диск.img --ro <<_EOF_
 run
 list-filesystems
 _EOF_

У одному рядку команди

Оновлення /etc/resolv.conf у гостьовій системі:

 guestfish \
   add disk.img : run : mount /dev/vg_guest/lv_root / : \
   write /etc/resolv.conf "nameserver 1.2.3.4"

Інтерактивне редагування /boot/grub/grub.conf:

 guestfish --rw --add disk.img \
   --mount /dev/vg_guest/lv_root \
   --mount /dev/sda1:/boot \
   edit /boot/grub/grub.conf

Автоматичне монтування дисків

Скористайтеся параметром -i для автоматичного монтування дисків з віртуальної машини:

 guestfish --ro -a disk.img -i cat /etc/group
 guestfish --ro -d libvirt-domain -i cat /etc/group

Іншим способом редагування /boot/grub/grub.conf інтерактивно є такий:

 guestfish --rw -a disk.img -i edit /boot/grub/grub.conf

Як інтерпретатор скриптів

Створити диск у 100 МБ, що міститиме розділ у форматі ext2:

 #!/usr/bin/guestfish -f
 sparse test1.img 100M
 run
 part-disk /dev/sda mbr
 mkfs ext2 /dev/sda1

Розпочати з приготованого диска

Створити диск розміром 1 ГБ з назвою test1.img, який міститиме один форматований у ext2 розділ:

 guestfish -N fs

Щоб отримати список доступних варіантів, віддайте таку команду:

 guestfish -N help | less

Віддалені диски

Доступ до віддаленого диска за допомогою ssh:

 guestfish -a ssh://example.com/шлях/до/диска.img

Дистанційне керування

 eval "`guestfish --listen`"
 guestfish --remote add-ro disk.img
 guestfish --remote run
 guestfish --remote lvs

ПАРАМЕТРИ

--help
Вивести загальну довідку щодо параметрів.
Вивести список усіх доступних команд guestfish.
Показати докладну довідку щодо певної команди.
-a ОБРАЗ
--add ОБРАЗ
Додати блоковий пристрій або образ віртуальної машини до командної оболонки.

Формат образу диска визначається автоматично. Щоб перевизначити його і примусово використати певний формат, скористайтеся параметром --format=...

Використання цього прапорця еквівалентне використанню команди "add" з "readonly:true", якщо вказано прапорець --ro, і з "format:...", якщо вказано прапорець --format=....

-a адреса
--add адреса
Додати віддалений диск. Див. "ДОДАВАННЯ ВІДДАЛЕНОГО СХОВИЩА".
This parameter sets the sector size of the disk image. It affects all explicitly added subsequent disks after this parameter. Using --blocksize with no argument switches the disk sector size to the default value which is usually 512 bytes. See also "guestfs_add_drive_opts" in guestfs(3).
Якщо використано у поєднанні із параметром -d, визначає адресу libvirt, якою слід скористатися. Типово, використовується типове з'єднання libvirt.
Якщо використовується параметр --listen і csh-подібна команда оболонка, скористайтеся цим параметром. Див. розділі "ВІДДАЛЕНЕ КЕРУВАННЯ І CSH" нижче.
Додати диски із названого домену libvirt. Якщо також використано параметр --ro, може бути використано будь-який домен libvirt. Втім, у режимі запису тут можна вказати лише домени libvirt, які вимкнено.

Замість назв можна використовувати UUID доменів.

Використання цього прапорця, здебільшого, еквівалентне використанню команди "add-domain" із "readonly:true", якщо вказано прапорець --ro, і з "format:...", якщо вказано прапорець --format=....

--echo-keys
Типово, якщо guestfish попросить вас ввести ключ або пароль, програма не відтворюватиме введені символи на екрані. Якщо ви не боїтеся TEMPEST-нападів, або у вашій кімнаті нікого, окрім вас, немає, ви можете скористатися цим прапорцем, щоб бачити, які саме символи ви вводите.
Прочитати команди з файла "ФАЙЛ". Для написання суто скриптів guestfish скористайтеся таким вступом:

 #!/usr/bin/guestfish -f
    
Типовим значенням для параметра -a є автоматичне визначення формату образу диска. Використання цього параметра примусово визначає значення параметрів -a формату диска у наступному рядку команди. Використання параметра --format без аргументу перемикає програму у режим автоматичного визначення у наступних параметрах -a.

Приклад:

 guestfish --format=raw -a disk.img
    

примусове встановлення формату без обробки (без автоматичного визначення) для disk.img.

 guestfish --format=raw -a disk.img --format -a another.img
    

примусове встановлення формату без обробки (без автоматичного визначення) для diskimg і повернення до автоматичного визначення для another.img.

Якщо ви користуєтеся ненадійними образами гостьових систем у необробленому форматі, вам слід скористатися цим параметром для визначення формату диска. Таким чином можна уникнути можливих проблем з захистом для сформованих зловмисниками гостьових систем (CVE-2010-3851). Див. також "add".

Використовуючи код virt-inspector(1), виконати інспектування дисків, шукаючи операційну систему і монтуючи файлові системи так, як їх мало б бути змонтовано у справжній віртуальній машині.

Типові варіанти використання:

 guestfish -d myguest -i
    

(для неактивного домену libvirt із назвою myguest) або:

 guestfish --ro -d myguest -i
    

(для активних доменів, лише читання), або вказати блоковий пристрій безпосередньо:

 guestfish --rw -a /dev/Guests/MyGuest -i
    

Зауважте, що синтаксис рядка команди було дещо змінено з часу старіших версій guestfish. Але ви все ще можете використовувати застарілий синтаксис:

 guestfish [--ro] -i диск.img
 guestfish [--ro] -i домен-libvirt
    

Використання цього прапорця, здебільшого, еквівалентне до використання команди "inspect-os" із наступним використанням інших команд для монтування файлових систем, які було знайдено.

Specify a key for LUKS, to automatically open a LUKS device when using the inspection. "ID" can be either the libguestfs device name, or the UUID of the LUKS device.
Використовувати вказаний "РЯДОК_КЛЮЧА" як пароль.
Прочитати пароль з файла НАЗВА_ФАЙЛА.
Прочитати параметри ключа або пароля із джерела стандартного введення. Типово програма намагається читати паролі від користувача відкриттям /dev/tty.

If there are multiple encrypted devices then you may need to supply multiple keys on stdin, one per line.

Відгалузити процес у фоновий і очікувати на віддалені команди. Див. розділ "ВІДДАЛЕНЕ КЕРУВАННЯ GUESTFISH КРІЗЬ СОКЕТ" нижче.
З'єднатися із запущеною віртуальною машиною. (Експериментальна можливість, див. "ДОЛУЧЕННЯ ДО ЗАПУЩЕНИХ ФОНОВИХ СЛУЖБ" in guestfs(3)).
--mount пристрій[:точка_монтування[:параметри[:тип_файлової_системи]]]
Змонтувати названий розділ або логічний том до вказаної точки монтування.

Якщо точку монтування не вказано, типовим значенням є /.

Вам слід змонтувати щось до /, перш ніж ви зможете скористатися більшістю команд.

Якщо вказано якісь параметри -m або --mount, буде автоматично запущено гостьову систему.

Якщо ви не знаєте, які саме файлові системи містяться у образі диска, ви можете або запустити guestfish без цього параметра і ознайомитися зі списком доступних розділів, файлових систем та логічних томів (див. команди "list-partitions", "list-filesystems" і "lvs"), або скористатися програмою virt-filesystems(1).

Третьою (і нечасто використовуваною) частиною параметра монтування є список параметрів монтування, які використовуються для того, щоб змонтувати підлеглу файлову систему. Якщо такий список не буде задано, параметрами монтування вважатиметься або порожній рядок, або "ro" (другий варіант використовується, якщо використано прапорець --ro). Заданням параметрів монтування ви перевизначаєте типовий варіант. Ймовірно, єдиним випадком, коли вам може знадобитися це, є випадок вмикання списків керування доступом (ACL) і/або розширених атрибутів, якщо у файловій системі передбачено їхню підтримку:

 -m /dev/sda1:/:acl,user_xattr
    

Використання цього прапорця є еквівалентним до використання команди "mount-options".

Четвертою частиною параметра є назва драйвера файлової системи, якою слід скористатися, зокрема "ext3" або "ntfs". У визначенні цієї частини параметра рідко виникає потреба, але вона може бути корисною, якщо для файлової системи можна скористатися декількома драйверами (приклад: "ext2" і "ext3"), або libguestfs визначає файлову систему помилково.

--network
Уможливити для користувача QEMU роботу у мережі у гостьовій системі.
Приготувати свіжий образ диска у форматі "ТИП". Це альтернатива параметру -a: -a додає наявний диск, а -N створює попередньо форматований диск із файловою системою і додає його. Див. "ОБРАЗИ ПРИГОТОВАНИХ ДИСКІВ" нижче.
-n
Вимкнути автоматичну синхронізацію. Типово, синхронізацію увімкнено. Див. обговорення автоматичної синхронізації на сторінці підручника guestfs(3).
Не виконувати доповнення за Tab у гостьовій файловій системі. Корисно мати можливість натискати клавішу Tab для доповнення шляхів у гостьовій файловій системі, але це може призвести до зайвих «прихованих» викликів guestfs. Отже, цей параметр надає вам змогу вимкнути цю можливість.
Якщо запису не вдасться передати команди каналами (див. "КАНАЛИ"), ця команда поверне повідомлення про помилку.

Типово (також із історичних причин) такі помилки ігноруватимуться, отже, наприклад:

 ><fs> команда_яка_багато_чого_виводить | head
    

не призводитиме до помилки.

Увімкнути смужки поступу, навіть якщо guestfish використовується не у інтерактивному режимі.

Якщо guestfish використовується як інтерактивна командна оболонка, смужки поступу буде типово увімкнено.

Вимкнути смужки поступу.
Надіслати віддалені команди до $GUESTFISH_PID або "pid". Див. розділ "ВІДДАЛЕНЕ КЕРУВАННЯ GUESTFISH КРІЗЬ СОКЕТ" нижче.
-r
Змінює значення параметрів -a, -d і -m так, що диски додаються і монтуються у режимі лише читання.

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

Зауважте, що цей параметр не стосується приготованих образів дисків, створених за допомогою -N. Крім того, це не стосується команд, подібних до "add" — вам слід вказати параметр "readonly:true" явним чином, якщо вам це потрібно.

Див. також "ВІДКРИТТЯ ДИСКІВ ДЛЯ ЧИТАННЯ ТА ЗАПИСУ" нижче.

--selinux
Цей параметр призначено для забезпечення зворотної сумісності, його використання не матиме жодних наслідків.
--verbose
Увімкнути виведення дуже докладних повідомлень. Корисно, якщо ви намагаєтеся усунути якусь ваду.
--version
Вивести дані щодо версії guestfish / libguestfs і завершити роботу.
Змінює дію параметрів -a, -d і -m таким чином, що диски додаються і монтуються у режимі читання і запису.

Див. "ВІДКРИТТЯ ДИСКІВ ДЛЯ ЧИТАННЯ ТА ЗАПИСУ" нижче.

Виводити усі команди перед виконанням.

КОМАНДИ У КОМАНДНОМУ РЯДКУ

Усі додаткові аргументи (не пов’язані із параметрами команди) вважатимуться командами, які слід виконати.

Команди, які слід виконати, слід відокремлювати двокрапками (":"), де двокрапка є окремим параметром. Отже:

 guestfish команда [аргументи...] : команда [аргументи...] : команда [аргументи...] ...

Якщо додаткових аргументів не буде, ми увійдемо до оболонки, інтерактивної із запитом щодо команди (якщо вхідні дані надходять з термінала) або неінтерактивної.

Якщо у режимі командного рядка, так і у режимі неінтерактивної командної оболонки, перша ж команда, яка призводить до помилки, має наслідком вихід із командної оболонки. У інтерактивному режимі (із запитом щодо команди), якщо стається помилка команди, ви можете продовжити вводити команди.

Зауважте, що аргументи команд вважатимуться параметрами guestfish, якщо вони починаються з дефіса ("-"). Ви завжди можете відокремити параметри guestfish і решту команд (із їхніми аргументами) за допомогою подвійного дефіса ("--"). Приклад:

 guestfish -- disk_create overlay.qcow2 qcow2 -1 backingfile:image.img

КОРИСТУВАННЯ launch (АБО run)

Як і для guestfs(3), вам слід спочатку налаштувати вашу гостьову систему додаванням дисків, потім запустити її, потім змонтувати потрібні диски і, нарешті, виконати з нею якісь дії або віддати команди. Отже, звичний порядок дій є таким:

  • add або -a/--add
  • launch (або run)
  • mount або -m/--mount
  • будь-які інші команди

"run" є синонімом "launch". Вам слід виконати "launch" (або "run") для вашої гостьової системи, перш ніж щось у ній монтувати або віддавати якісь інші команди.

Єдиним виключенням є команди з параметрами -i, -m, --mount, -N або --new. Якщо вказано таку команду, "run" виконується автоматично, просто тому, що guestfish без цієї команди не зможе виконати потрібної вам дії.

ВІДКРИТТЯ ДИСКІВ ДЛЯ ЧИТАННЯ ТА ЗАПИСУ

Параметри --ro та --rw guestfish, guestmount(1) і virt-rescue(1) стосуються інших параметрів командного рядка -a, -c, -d, -i і -m щодо відкриття у режимі лише читання чи режимі із записом.

У libguestfs ≤ 1.10, guestfish, guestmount та virt-rescue типово відкривали вказані у командному рядку образи дисків на запис. Щоб відкрити образ диска лише для читання, слід було вказати -a образ --ro.

Це означає ось що: якщо ви випадково відкрили запущений образ диска віртуальної машини для запису, вміст диска буде незворотним чином пошкоджено.

У майбутніх версіях libguestfs ми маємо намір змінити типову поведінку. Образи дисків відкриватимуться у режимі лише читання. Вам слід вказати guestfish --rw, guestmount --rw, virt-rescue --rw або змінити файл налаштувань, щоб отримати доступ до запису на образи дисків, вказані за допомогою інших параметрів командного рядка.

Ця версія guestfish, guestmount і virt-rescue має параметр --rw, який нічого не робить (відповідна поведінка вже є типовою). Втім, наполегливо рекомендуємо вам використовувати цей параметр для позначення того, що вам потрібен доступ до запису, і готувати ваші скрипти до дня, коли для отримання доступу до запису вам знадобиться цей параметр.

Зауваження: це не стосується команд, подібних "add" і "mount", або усіх інших програм libguestfs поза guestfish і guestmount.

ЛАПКИ

Звичайні параметри можна ізолювати одинарними або подвійними лапками. Приклад:

 add "файл із пробілами у назві.img"
 rm '/назва файла'
 rm '/"'

Деяким командам потрібно передавати список рядків. Для передавання таких списків слід користуватися записами, відокремлених пробілами рядків, взятих у лапки. Рядки, які містять пробіли, слід передавати у одинарних лапках. Сам символ одинарної лапки слід екранувати символом зворотної похилої риски.

 vgcreate VG "/dev/sda1 /dev/sdb1"
 command "/bin/echo 'щось      десь'"
 command "/bin/echo \'щось\'"

ЕКРАНОВАНІ ПОСЛІДОВНОСТІ У АРГУМЕНТАХ У ПОДВІЙНИХ ЛАПКАХ

У аргументах, які взято у подвійні лапки, (і лише у них) використовуйте символ зворотної похилої риски для вставляння спеціальних символів:

"\a"
Символ гудка (дзвінка).
"\b"
Символ «зворотній хід»
"\f"
Символ заповнення форми.
"\n"
Символ нового рядка.
"\r"
Символ повернення каретки.
"\t"
Символ горизонтальної табуляції
"\v"
Символ вертикальної табуляції.
"\""
Сам символ подвійних лапок.
"\ooo"
Символ із вісімковим значенням ooo. Має бути вказано точно три вісімкові цифри (на відміну від C).
"\xhh"
Символ із шістнадцятковим значенням hh. Має бути вказано точно дві шістнадцяткові цифри.

У поточній реалізації не можна використовувати у рядках "\000" і "\x00".

"\\"
Сам символ зворотної похилої риски.

НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ

Деяким командам передаються необов'язкові аргументи. Ці аргументи вказано у цій документації як "[назва_аргументу:..]". Ви можете скористатися ними так, як у цих прикладах:

 add назва_файла
 add назва_файла readonly:true
 add назва_файла format:qcow2 readonly:false

Кожен необов'язковий аргумент можна вказувати лише один раз. Усі необов'язкові аргументи має бути вказано після обов'язкових.

ЧИСЛА

Цей розділ стосується усіх команд, яким як параметри передаються цілі числа.

СУФІКС РОЗМІРУ

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

Розмір у кілобайтах (у одному кілобайті 1024 байтів).
Розмір у одиницях СІ: 1000 байтів.
Розмір у мегабайтах (у одному мегабайті 1048576 байтів).
Розмір у одиницях СІ: 1000000 байтів.
Розмір у гігабайтах (з множником 2**30).
Розмір у одиницях СІ: 10**9 байтів.
Розмір у терабайтах (з множником 2**40).
Розмір у одиницях СІ: 10**12 байтів.
Розмір у петабайтах (у одному петабайті 2**50 байтів).
Розмір у одиницях СІ: 10**15 байтів.
Розмір у ексабайтах (у одному ексабайті 2**60 байтів).
Розмір у одиницях СІ: 10**18 байтів.
Розмір у зетабайтах (у одному зетабайті 2**70 байтів).
Розмір у одиницях СІ: 10**21 байтів.
Розмір у йотабайтах (у одному йотабайті 2**80 байтів).
Розмір у одиницях СІ: 10**24 байтів.

Приклад:

 truncate-size /файл 1G

обріже файл до об'єму у 1 ГБ.

Будьте обережні, оскільки деяким командам передаються розміри у кілобайтах або мегабайтах (наприклад, параметр "memsize" уже вказується у мегабайтах). Додавання суфікса у таких командах може призвести до небажаних наслідків.

ВІСІМКОВІ І ШІСТНАДЦЯТКОВІ ЧИСЛА

Щоб вказати основу числення, скористайтеся форматом C: 0 як префіксом для вісімкових чисел або "0x" як префіксом для шістнадцяткових чисел. Приклад:

 1234      десяткове число 1234
 02322     вісімкове число, яке дорівнює десятковому числу 1234
 0x4d2     шістнадцяткове число, яке дорівнює десятковому числу 1234

Якщо ви користуєтеся командою "chmod", вам майже завжди зручно буде вказувати режим доступу у форматі вісімкового числа, отже вам слід додавати до числа префікс 0 (не так, як у програмі chmod(1) UNIX):

 chmod 0777 /public  # ПРАВИЛЬНО
 chmod 777 /public   # НЕПРАВИЛЬНО! Вказано десятковий режим 777 = вісімковому 01411.

Команди, які повертають числові дані, зазвичай, виводять їх у десятковій формі, але деякі команди виводять числа у інших основах числення (наприклад, "umask" виводить режим доступу у вісімковій формі із префіксом 0).

СИМВОЛИ-ЗАМІННИКИ І ЗАМІНИ

Ні у guestfish, ні у базовому програмному інтерфейсі guestfs типово не виконується розгортання символів-замінників (заміни). Отже, наприклад, вказана нижче команда не буде виконана так, як ви б того сподівалися:

 rm-rf /home/*

Якщо у вашій системі немає каталогу, який називається буквально /home/*, у результаті виконання вказаної вище команди ви побачите повідомлення про помилку.

Для виконання розгортання символів-замінників скористайтеся командою "glob"

 glob rm-rf /home/*

виконує "rm-rf" для кожного відповідного каталогу (тобто потенційно запустити команду багато разів). Еквівалент такого:

 rm-rf /home/jim
 rm-rf /home/joe
 rm-rf /home/mary

"glob" працює лише для простих шляхів у гостьовій системі, а не для назв пристроїв.

Якщо параметрів декілька, кожен з яких містить символ-замінник, glob виконає рекурсивне розгортання.

КОМЕНТАРІ

Будь-який рядок, який розпочинається з символу #, вважатиметься коментарем і ігноруватиметься. Якщо потрібно, перед # може бути використано пробіл, але цього не можна робити для команд. Приклад:

 # коментар
         # коментар
 foo # НЕ коментар

Крім того, ігноруються порожні рядки.

ЛОКАЛЬНИЙ ЗАПУСК КОМАНД

Будь-який рядок, який починається з символу !, вважається командою, надісланою до локальної командної оболонки (/bin/sh або будь-якої іншої, яку використовує system(3)). Приклад:

 !mkdir local
 tgz-out /remote local/remote-data.tar.gz

створить каталог "local" у основній системі, а потім експортує вміст /remote на змонтованій файловій системі до local/remote-data.tar.gz. (Див. "tgz-out".)

Щоб змінити локальний каталог, скористайтеся командою "lcd". "!cd" не спрацює через спосіб, у який працюють підпроцеси у Unix.

ЛОКАЛЬНІ КОМАНДИ ІЗ ВБУДОВАНИМ ВИКОНАННЯМ

Якщо рядок починається із <!, виконується команда оболонки (як для !), але далі усі виведені дані (stdout) команди оболонки обробляються і виконуються як команди guestfish.

Таким чином, ви можете використовувати скрипт командної оболонки для побудови довільних команд guestfish, виведення яких далі буде оброблено guestfish.

Наприклад, створення послідовності файлів (наприклад, від /foo.1 до /foo.100) за допомогою самих лише команд guestfish є марудною справою. Втім, зробити це доволі просто, якщо ми скористаємося скриптом оболонки для створення команд guestfish:

 <! for n in `seq 1 100`; do echo write /foo.$n $n; done

або з назвами, які подібні до /foo.001:

 <! for n in `seq 1 100`; do printf "write /foo.%03d %d\n" $n $n; done

При інтерактивному використанні guestfish може бути корисним спочатку запустити скрипт оболонки (тобто вилучити початковий символ "<", щоб зробити команду простою локальною командою із !), подивитися, які команди guestfish вона запустить, а потім, якщо усе працює як слід, додати символ "<", щоб справді запустити команди guestfish.

КАНАЛИ

Скористайтеся конструкцією "команда <пробіл> | команда", щоб передати каналом дані, виведені першою командою (командою guestfish) другій команді (будь-якій команді основної системи). Приклад:

 cat /etc/passwd | awk -F: '$3 == 0 { print }'

(де "cat" є командою cat guestfish, а "awk" є програмою awk основної системи). Наведена вище команда має вивести список усіх облікових записів у файловій системі гостьової операційної системи, у яких UID 0, тобто адміністративних облікових записів, які містять входи для сторонніх осіб. Інші приклади:

 hexdump /bin/ls | head
 list-devices | tail -1
 tgz-out / - | tar ztf -

Пробіл перед символом «|» є обов'язковим, а пробіл після цього символу — необов'язковим. Усе після символу «|» просто передається командній оболонці основної системи, отже, там можуть міститися переспрямування, символи-замінники і усе, що має сенс для інтерпретатора командної оболонки у основній системі.

Якщо потрібно використати буквальний аргумент із символом «|», його доведеться взяти у лапки. Ось так:

 echo "|"

ДОМАШНІ КАТАЛОГИ

Якщо параметр починається із символу "~", тильду буде розгорнуто до назви домашнього каталогу ("~" для домашнього каталогу поточного користувача або "~user" для іншого користувача).

Зауважте, що розгортання домашнього каталогу виконується для користувачів, які відомі у основній системі, а не у гостьовій файловій системі.

Якщо потрібно використати буквальний аргумент із символом тильди, його доведеться взяти у лапки. Ось так:

 echo "~"

ЗАШИФРОВАНІ ДИСКИ

Libguestfs has some support for Linux guests encrypted according to the Linux Unified Key Setup (LUKS) standard, which includes nearly all whole disk encryption systems used by modern Linux guests, and Windows BitLocker.

Знайдіть шифровані блокові пристрої та розділи за допомогою "vfs-type":

 ><fs> vfs-type /dev/sda2
 crypto_LUKS

або:

 ><fs> vfs-type /dev/sda2
 BitLocker

Then open those devices using "cryptsetup-open". This creates a device-mapper device called /dev/mapper/name.

 ><fs> cryptsetup-open /dev/sda2 name
 Enter key or passphrase ("key"): <enter the passphrase>

For Linux guests you have to tell LVM to scan for volume groups on the newly created mapper device:

 vgscan
 vg-activate-all true

The filesystems or logical volumes can now be mounted in the usual way.

Before closing an encrypted device you must unmount any logical volumes on it and deactivate the volume groups by calling "vg-activate false VG" on each one. Then you can close the mapper device:

 vg-activate false /dev/VG
 cryptsetup-close /dev/mapper/name

ШЛЯХИ У WINDOWS

Якщо до шляху додано префікс "win:", ви зможете скористатися літерами дисків і шляхами у стилі Windows (з певними обмеженнями). Наведені нижче команди є еквівалентними:

 file /WINDOWS/system32/config/system.LOG
 file win:\windows\system32\config\system.log
 file WIN:C:\Windows\SYSTEM32\CONFIG\SYSTEM.LOG

Параметр перезаписується «за лаштунками» шляхом пошуку місця, до якого змонтовано диск, дописування його перед шляхом, заміною усіх символів зворотної похилої риски на символ прямої похилої риски, а потім обробкою результату за допомогою "case-sensitive-path". Наприклад, якщо диск E: було змонтовано до /e, параметр може бути перезаписано так:

 win:e:\foo\bar => /e/FOO/bar

Це працює лише у позиціях аргументів, де має бути вказано шлях.

ВИВАНТАЖЕННЯ ТА ОТРИМАННЯ ФАЙЛІВ

Для команд, які подібні до "upload", "download", "tar-in", "tar-out", та інших, які вивантажують дані до образу або отримують дані до локального файла, ви можете скористатися спеціальною назвою файла "-", яка означає «зі stdin» або «до stdout». Приклад:

 upload - /foo

читає дані з stdin і створює на їхній основі файл /foo у образі диска, а така команда:

 tar-out /etc - | tar tf -

записує архів tar до stdout, а потім передає каналом дані до зовнішньої програми «tar» (див. "КАНАЛИ").

Якщо використовується "-" для читання зі stdin, дані читатимуться до кінця stdin. Ви також можете скористатися спеціальним синтаксисом «heredoc» для читання до певної довільної позначки кінця:

 upload -<<END /foo
 рядок 1
 рядок 2
 рядок 3
 END

Замість "END" можна скористатися будь-яким іншим рядком символів. Позначка кінця має бути окремим рядком без будь-яких символів перед ним або після нього (навіть без пробілів).

Зауважте, що синтаксис "-<<" застосовується лише для параметрів, які використовуються для вивантаження локальних файлів (так званих параметрів «FileIn» у генераторі).

ВИХІД ПРИ ПОМИЛЦІ

Типово, у інтерактивному режимі (тобто при отримання команд від людини за допомогою tty) guestfish ігноруватиме будь-які помилки і завершуватиме роботу при першій же помилці у неінтерактивному режимі (скрипти, команди із командного рядка).

Якщо ви додасте до команди префікс -, ця команда не спричинятиме завершення роботи guestfish, навіть якщо ця (одна) команда поверне повідомлення про помилку.

ВІДДАЛЕНЕ КЕРУВАННЯ GUESTFISH КРІЗЬ СОКЕТ

Guestfish можна віддалено керувати за допомогою сокета. Це, зокрема, корисно у скриптах командної оболонки, де вам потрібно внести декілька різних змін до файлової системи, але ви не хочете отримати пенальті через запуск процесу guestfish для кожної окремо взятої зміни.

Запустіть процес сервера guestfish такою командою:

 eval "`guestfish --listen`"

а потім надішліть команди ось так:

 guestfish --remote команда [...]

Щоб наказати серверу завершити роботу (вийти), надішліть йому команду виходу:

 guestfish --remote exit

Зауважте, що за звичних умов сервер завершує роботу, якщо під час виконання команди станеться помилка. Ви можете змінити цю поведінку у звичний спосіб. Див. розділ "ВИХІД ПРИ ПОМИЛЦІ".

КЕРУВАННЯ ДЕКІЛЬКОМА ПРОЦЕСАМИ GUESTFISH

Інструкція "eval" встановлює змінну середовища $GUESTFISH_PID, саме так команда із параметром --remote визначає, куди слід надсилати команди. Ви можете користуватися декількома процесами guestfish, які очікуватимуть на команди, ось так:

 eval "`guestfish --listen`"
 pid1=$GUESTFISH_PID
 eval "`guestfish --listen`"
 pid2=$GUESTFISH_PID
 ...
 guestfish --remote=$pid1 cmd
 guestfish --remote=$pid2 cmd

ВІДДАЛЕНЕ КЕРУВАННЯ І CSH

Якщо ви користуєтеся csh-подібними оболонками (csh, tcsh тощо), вам слід додати параметр --csh:

 eval "`guestfish --listen --csh`"

ПОДРОБИЦІ ЩОДО ВІДДАЛЕНОГО КЕРУВАННЯ

Віддалене керування відбувається за допомогою сокетів домену Unix, які мають назви /tmp/.guestfish-$UID/socket-$PID, де $UID — ідентифікатор ефективного користувача для процесу, а $PID — ідентифікатор процесу сервера.

Версії клієнта і сервера guestfish мають бути абсолютно однаковими.

Застарілі версії guestfish були вразливими до CVE-2013-4419 (див. "CVE-2013-4419" in guestfs(3)). Вразливість виправлено у поточній версії.

НАДІЙНЕ ВИКОРИСТАННЯ ВІДДАЛЕНОГО КЕРУВАННЯ У СКРИПТАХ ОБОЛОНКИ

У Bash ви можете використовувати наведений нижче код, який створює екземпляр guestfish, правильно використовує лапки у командному рядку, обробляє помилки при запуску та чистить дані guestfish, коли скрипт завершує роботу:

 #!/bin/bash -
 
 set -e
 
 guestfish[0]="guestfish"
 guestfish[1]="--listen"
 guestfish[2]="--ro"
 guestfish[3]="-a"
 guestfish[4]="disk.img"
 
 GUESTFISH_PID=
 eval $("${guestfish[@]}")
 if [ -z "$GUESTFISH_PID" ]; then
     echo "error: guestfish didn't start up, see error messages above"
     exit 1
 fi
 
 cleanup_guestfish ()
 {
     guestfish --remote -- exit >/dev/null 2>&1 ||:
 }
 trap cleanup_guestfish EXIT ERR
 
 guestfish --remote -- run
 
 # ...

ВІДДАЛЕНЕ КЕРУВАННЯ НЕ ПРАЦЮЄ ІЗ ПАРАМЕТРАМИ, ПОДІБНИМИ ДО -a

Параметри, які подібні до -a, --add, -N, --new, не можуть належним чином працювати із підтримкою віддаленого керування. Вони обробляються локально і не надсилаються до віддаленого екземпляра guestfish. Зокрема, ось таке не працюватиме так, як ви б того сподівалися:

 guestfish --remote --add диск.img

Не використовуйте ці параметри. Замість них, використовуйте еквівалентні команди. Приклад:

 guestfish --remote add-drive диск.img

або:

 guestfish --remote
 ><fs> add диск.img

ЗАВИСАННЯ ЗАПУЩЕНОЇ ЗА ДОПОМОГОЮ ВІДДАЛЕНОГО КЕРУВАННЯ КОМАНДИ

Використання команди "run" (або "launch") віддалено у контексті підстановки команд призводить до повисання. Тобто, не слід робити так (зверніть увагу на зворотні лапки):

 a=`guestfish --remote run`

Оскільки команда "run" нічого не виводить до stdout, це все одно не має сенсу. Докладніший опис наведено тут: https://bugzilla.redhat.com/show_bug.cgi?id=592910.

ОБРАЗИ ПРИГОТОВАНИХ ДИСКІВ

Скористайтеся параметром -N [назва_файла=]тип або --new [назва_файла=]тип для вибору одного з набору попередньо форматованих образів дисків, які може створити guestfish, щоб заощадити час на введення назв вручну. Це, зокрема, корисно для тестування. Цей параметр використовується замість параметра -a і, як -a, його можна використовувати декілька разів (і поєднувати з -a).

Новий диск буде названо test1.img для першого -N, test2.img — для другого, тощо. Наявні файли у поточному каталозі буде перезаписано. Ви можете скористатися іншою назвою файла, якщо вкажете рядок "назва_файла=" до типу (див. наведені нижче приклади).

Тип коротко описує як слід визначати розмір диска, ділити його на розділи, як створювати файлові системи та як додавати дані. Крім того, за типом можна вказати додаткові параметри, відокремлені символами ":" (двокрапкою). Наприклад, -N fs створює типовий диск у 1ГБ із розрідженим розподілом, який містить єдиний розділ, який форматовано з використанням ext2. -N fs:ext4:2G робить те саме, але для файлової системи ext4 на диску у 2 ГБ.

Зауважте, що приготовану файлову систему не змонтовано. Вам, зазвичай, слід скористатися командою "mount /dev/sda1 /" або додати параметр -m /dev/sda1.

Якщо вказано якісь параметри -N або --new, буде автоматично запущено базову систему libguestfs.

ПРИКЛАДИ

Створити диск у 1 ГБ, що міститиме розділ у форматі ext4, із назвою test1.img у поточному каталозі:

 guestfish -N fs:ext4

Створити диск у 32 МБ із форматованим у VFAT розділом і змонтувати його:

 guestfish -N fs:vfat:32M -m /dev/sda1

Створення порожнього диска розміром у 200 МБ:

 guestfish -N disk:200M

Створити порожній диск у 200 МБ із назвою blankdisk.img (замість test1.img):

 guestfish -N blankdisk.img=disk:200M

-N disk — створити порожній диск

"guestfish -N [назва_файла=]disk[:розмір]"

Створити порожній диск розміром 1 ГБ (типове значення).

Типовий розмір можна змінити, надавши необов'язковий параметр.

Додатковими параметрами є:

 Назва         Типове значення
 size          1G          розмір образу диска

-N part — створити диск, поділений на розділи

"guestfish -N [назва_файла=]part[:розмір[:розділ]]"

Створює диск із єдиним розділом. Типовим розміром диска є 1 ГБ (доступне місце на розділі буде трошечки меншим), типовою таблицею розділів — MBR (старий стиль DOS).

Ці типові значення можна змінити за допомогою додаткових параметрів.

Додатковими параметрами є:

 Назва         Типове значення
 size          1G            розмір образу диска
 partition     mbr           тип таблиці розділів

-N фс — створити файлову систему

"guestfish -N [назва_файла=]фс[:файлова_система[:розмір[:розділ]]]"

Створює диск із єдиним розділом, який містить порожню файлову систему. Типово буде створено диск розміром 1 ГБ (доступне місце на диску буде трошечки меншим) із таблицею розділів MBR (старий стиль DOS) та файловою системою ext2.

Ці типові значення можна змінити за допомогою додаткових параметрів.

Додатковими параметрами є:

 Назва         Типове значення
 filesystem    ext2          тип використаної файлової системи
 size          1G            розмір образу диска
 partition     mbr           тип таблиці розділів

-N lv — створити диск із логічним томом

"guestfish -N [назва_файла=]lv[:назва[:розмір[:розділ]]]"

Створює диск із єдиним розділом, налаштовує розділ як фізичний том LVM2 і розташовує там групу томів і логічний том. Типово створюється диск розміром 1 ГБ із групою томів і логічним томом із назвою "/dev/VG/LV". Ви можете змінити назву групи томів і логічного тому, вказавши альтернативну назву як перший необов'язковий параметр.

Зауважте, що ця команда не створює файлової системи. Для створення файлової системи скористайтеся командою «lvfs».

Додатковими параметрами є:

 Назва         Типове значення
 name          /dev/VG/LV    назва віртуальної групи або логічного тому
 size          1G            розмір образу диска
 partition     mbr           тип таблиці розділів

-N lvfs — створити диск із логічним томом і файловою системою

"guestfish -N [назва_файла=]lvfs[:назва[:файлова_система[:розмір[:розділ]]]]"

Створює диск із єдиним розділом, налаштовує розділ як фізичний том LVM2 і розташовує там групу томів і логічний том. Далі, форматує логічний том файловою системою. Типово створюється диск розміром 1 ГБ із групою томів і логічним томом із назвою "/dev/VG/LV" та файловою системою ext2.

Додатковими параметрами є:

 Назва         Типове значення
 name          /dev/VG/LV    назва віртуальної групи і логічного тому
 filesystem    ext2          тип файлової системи
 size          1G            розмір образу диска
 partition     mbr           тип таблиці розділів

-N bootroot — створити файлову систему для завантаження та кореневу файлову систему

"guestfish -N [назва_файла=]bootroot[:файлова_система_для_завантаження[:коренева_файлова_система[:розмір[:розмір_boot[:розділ]]]]]"

Створює диск із двома розділами для завантаження і з кореневою файловою системою. Форматує дві файлові системи незалежно. Існує декілька необов'язкових параметрів, які контролюють точне компонування та типи файлових систем.

Додатковими параметрами є:

 Назва         Типове значення
 bootfs        ext2          тип файлової системи для розділу boot
 rootfs        ext2          тип файлової системи для кореневого розділу
 size          1G            розмір образу диска
 bootsize      128M          розмір файлової системи boot
 partition     mbr           тип таблиці розділів

-N bootrootv — створити файлову систему для завантаження та кореневу файлову систему за допомогою LVM

"guestfish -N [назва_файла=]bootrootlv[:назва[:фс_boot[:коренева_фс[:розмір[:розмір_boot[:розділ]]]]]]"

Те саме, що і "bootroot", але коренева файлова система (і лише вона) розташовується на логічному томі із типовою назвою "/dev/VG/LV". Передбачено декілька необов'язкових параметрів для уточнення розташування і розміру розділів.

Додатковими параметрами є:

 Назва         Типове значення
 name          /dev/VG/LV    назва віртуальної групи і логічного тому для кореня
 bootfs        ext2          тип файлової системи для розділу завантаження
 rootfs        ext2          тип файлової системи для кореня
 size          1G            розмір образу диска
 bootsize      128M          розмір файлової системи для завантаження
 partition     mbr           тип таблиці розділів

ДОДАВАННЯ ВІДДАЛЕНОГО СХОВИЩА

Документацію рівня програмного інтерфейсу щодо цього питання наведено у розділах "guestfs_add_drive_opts" in guestfs(3) і "ВІДДАЛЕНЕ СХОВИЩЕ" in guestfs(3).

У командному рядку ви можете скористатися параметром -a для додавання мережевих блокових пристроїв за допомогою формату у стилі адрес. Приклад:

 guestfish -a ssh://root@example.com/диск.img

Адреси не можна використовувати разом із командою "add". Еквівалентною командою у безпосередньому використанні програмному інтерфейсі є:

 ><fs> add /disk.img protocol:ssh server:tcp:example.com username:root

Можливі формати -a адреса описано нижче.

-a disk.img

-a file:///шлях/на/диску.img

Додати локальний образ диска (або пристрою) із назвою disk.img.

-a ftp://[user@]example.com[:port]/disk.img

-a ftps://[user@]example.com[:порт]/disk.img

-a http://[user@]example.com[:порт]/disk.img

-a https://[user@]example.com[:порт]/disk.img

-a tftp://[user@]example.com[:порт]/disk.img

Додати диск на віддаленому сервері FTP, HTTP або TFTP.

Еквівалентною командою із програмного інтерфейсу є така:

 ><fs> add /disk.img protocol:(ftp|...) server:tcp:example.com username:root

-a gluster://example.com[:порт]/назва_тому/образ

Додати образ диска, розташований у сховищі даних GlusterFS.

Сервером є комп'ютер, на якому запущено "glusterd", ним може бути "localhost".

Еквівалентною командою із програмного інтерфейсу є така:

 ><fs> add volname/image protocol:gluster server:tcp:example.com

-a iscsi://example.com[:порт]/назваt-iqn-призначення[/lun]

Додати диск з сервера iSCSI.

Еквівалентною командою із програмного інтерфейсу є така:

 ><fs> add target-iqn-name/lun protocol:iscsi server:tcp:example.com

-a nbd://example.com[:порт]

-a nbd://example.com[:порт]/назва_для_експортування

-a nbd://?socket=/сокет

-a nbd:///exportname?socket=/socket

Додати образ диска, розташований у сховищі даних Network Block Device (nbd).

The exportname part of the URI specifies an NBD export name, but is usually left empty.

Необов'язковим параметром ?socket може бути використано для визначення сокета домену Unix, крізь який можна обмінюватися даними із сервером NBD. Зауважте, що не можна поєднувати назву сервера (тобто TCP/IP) і шлях до сокета.

Еквівалентною командою із програмного інтерфейсу є така (без назви експортування):

 ><fs> add "" protocol:nbd server:[tcp:example.com|unix:/сокет]

-a rbd:///буфер/диск

-a rbd://example.com[:порт]/буфер/диск

Додати образ диска, розташований на томі сховища Ceph (RBD/librbd).

Хоча у libguestfs та Ceph передбачено підтримку декількох серверів, при використанні цього синтаксису адреси можна вказати лише один сервер.

Еквівалентною командою із програмного інтерфейсу є така:

 ><fs> add pool/disk protocol:rbd server:tcp:example.com:порт

-a sheepdog://[example.com[:порт]]/том/образ

Додати образ диска, розташований на томі Sheepdog.

Назва сервера є необов'язковою. Хоча у libguestfs та Sheepdog передбачено підтримку декількох серверів, при використанні цього синтаксису адреси можна вказати не більше одного сервера.

Еквівалентною командою із програмного інтерфейсу є така:

 ><fs> add volume protocol:sheepdog [server:tcp:example.com]

-a ssh://[користувач@]example.com[:порт]/диск.img

Додати образ диска, розташований на віддаленому сервері, доступ до якого здійснюється за допомогою протоколу Secure Shell (ssh) SFTP. Підтримку SFTP передбачено від початку в усіх основних серверах SSH.

Еквівалентною командою із програмного інтерфейсу є така:

 ><fs> add /disk protocol:ssh server:tcp:example.com [username:user]

Зауважте, що для адрес використовується синтаксис RFC 3986: зокрема, існують обмеження на дозволені символи для різних компонентів адреси. Деякі символи, зокрема ":", "@" і "/" має бути закодовано з використанням символу відсотків:

 $ guestfish -a ssh://користувач:пароль%40word@example.com/диск.img

У цьому випадку паролем є "pass@word".

СМУЖКИ ПОСТУПУ

Деякі (не усі) команди, які виконуються довго, надсилають сповіщення щодо поступу під час виконання. Guestfish перетворює такі повідомлення на смужки поступу.

Якщо виконання команди, де передбачено смужки поступу, триває понад 2 секунди і увімкнено смужки поступу, ви побачите таку смужку під рядком команди:

 ><fs> copy-size /великий-файл /інший-файл 2048M
 / 10% [#####-----------------------------------------] 00:30

Символ ліворуч прокручуватиметься у відповідь на кожне отримане сповіщення щодо поступу від модуля обробки. Це доволі добра гарантія того, що команда «щось робить», навіть якщо смужка поступу не рухається, оскільки команда здатна надсилати сповіщення щодо поступу. Коли на смужці поступу буде досягнуто рівня 100% і команда завершить роботу, символ автоматично зникне.

Якщо guestfish використовується як інтерактивна командна оболонка, смужки поступу буде типово увімкнено. Ви можете увімкнути їх навіть у неінтерактивному режимі за допомогою параметра --progress-bars або повністю вимкнути їх за допомогою параметра --no-progress-bars.

ЗАПИТ

Ви можете змінити або додати кольори до типового запиту щодо команди ("><fs>"), встановивши відповідне значення змінної середовища "GUESTFISH_PS1". Другий рядок ("GUESTFISH_OUTPUT") буде виведено після введення команди і перед її виведенням. Він надає вам змогу керувати розфарбовуванням виведених даних. Третій рядок ("GUESTFISH_INIT") виводиться перед повідомленням вітання і надає вам змогу розфарбувати це повідомлення. Четвертий рядок ("GUESTFISH_RESTORE") виводиться перед завершенням роботи guestfish.

Простий запит можна встановити за допомогою визначення для "GUESTFISH_PS1" якогось альтернативного рядка:

 $ GUESTFISH_PS1='(введіть команду) '
 $ export GUESTFISH_PS1
 $ guestfish
 [...]
 (введіть команду) ▂

Ви також можете використовувати послідовності спеціальних символів, які описано у наведеній нижче таблиці:

\\
Сам символ зворотної похилої риски.
\[
\]
(Ці послідовності має бути використано лише у "GUESTFISH_PS1".)

Розташовуйте непридатні до виведення символи (наприклад, коди термінала для кольорів) між "\[...\]". Це вкаже бібліотеці readline(3), що їй слід вважати таку підпослідовність символом нульової ширини. Це уможливить повторний показ, редагування та інші операції.

Символ гудка.
Символ ESC ASCII.
Символ розриву рядка.
Повернення каретки.
Символ ASCII, кодом якого є вісімкове значення NNN.
Символ ASCII, кодом якого є шістнадцяткове значення NN.

ПРИКЛАДИ ЗАПИТІВ

Зауважте, що для користування цими прикладами вам знадобиться термінал, у якому передбачено коди екранування ANSI.

  •  GUESTFISH_PS1='\[\e[1;30m\]><fs>\[\e[0;30m\] '
        

    Жирна чорна версія звичайного запиту.

  •  GUESTFISH_PS1='\[\e[1;32m\]><fs>\[\e[0;31m\] '
     GUESTFISH_OUTPUT='\e[0m'
     GUESTFISH_RESTORE="$GUESTFISH_OUTPUT"
     GUESTFISH_INIT='\e[1;34m'
        

    Синій текст вітання, зелений запит, червоні команди, чорне виведення команд.

WINDOWS 8

«Швидкий запуск» Windows 8 може заважати монтуванню у guestfish розділів NTFS. Див. "ПРИСИПЛЯННЯ WINDOWS ТА ШВИДКИЙ ЗАПУСК WINDOWS 8" in guestfs(3).

КОМАНДИ GUESTFISH

Команди у цьому розділі є допоміжними командами guestfish. Інакше кажучи, вони не є частиною програмного інтерфейсу guestfs(3).

help

 help
 help команда
 help -l|--list

Без параметра показує загальну довідкову інформацію.

Якщо вказано із параметром "команда", ця команда показує довідку щодо заданої команди.

Якщо вказано параметр -l або --list, буде показано список усіх команд.

exit

quit

Завершує роботу guestfish. Ви також можете скористатися комбінацією клавіш "^D".

alloc

allocate

 alloc назва_файла розмір

Створити порожній (нульовий) файл вказаного розміру, а потім додати його для подальшого вивчення.

Щоб дізнатися про ширші можливості зі створення образів, див. "disk-create".

Розмір можна вказати за допомогою стандартних суфіксів, наприклад "1M".

Для створення розріджених файлів слід використовувати замість цієї команди "sparse". Опис створення приготованого диска наведено у розділі "ОБРАЗИ ПРИГОТОВАНИХ ДИСКІВ".

copy-in

 copy-in локальний [локальний ...] /віддалений_каталог

"copy-in" копіює локальні файли або каталоги рекурсивно до образу диска, розташовуючи їх у каталозі із назвою /віддалений_каталог (цей каталог має існувати). Ця метакоманда guestfish перетворюється у послідовність "tar-in" та інших команд, якщо це потрібно.

Можна вказувати одразу декілька локальних файлів або каталогів, але останнім параметром обов'язково має бути віддалений каталог. Не можна використовувати символи-замінники.

copy-out

 copy-out віддалений [віддалений ...] локальний_каталог

"copy-out" копіює віддалені файли або каталоги рекурсивно з образу диска, розташовуючи їх на диску основної системи у каталозі із назвою /локальний_каталог (цей каталог має існувати). Ця метакоманда guestfish перетворюється у послідовність "download", "tar-out" та інших команд, якщо це потрібно.

Можна вказувати одразу декілька віддалених файлів або каталогів, але останнім параметром обов'язково має бути локальний каталог. Щоб отримати дані до поточного каталогу, скористайтеся записом ".", ось так:

 copy-out /home .

Символи-замінники не можна використовувати у звичайних командах, але ви можете скористатися ними за допомогою "glob", ось так:

 glob copy-out /home/* .

delete-event

 delete-event назва

Вилучає обробник подій, який раніше було зареєстровано як "назва". Якщо із тією самою назвою було зареєстровано декілька обробників подій, буде вилучено усі обробники.

Див. також команди guestfish "event" та "list-events".

display

 display назва_файла

Скористатися "display" (програмою для графічного показу) для показу файла зображення. Буде виконано отримання файла, а потім запущено "display" для його показу.

Щоб скористатися альтернативною програмою, встановіть значення для змінної середовища "GUESTFISH_DISPLAY_IMAGE". Наприклад, щоб скористатися програмою для показу зображень GNOME, віддайте таку команду:

 export GUESTFISH_DISPLAY_IMAGE=eog

Див. також display(1).

echo

 echo [параметри...]

Виводить параметри до термінала.

edit

vi

emacs

 edit назва_файла

Ця команда використовується для редагування файла. Файл буде отримано з образу, ви зможете локально внести до нього зміни, а результати внесення змін буде автоматично вивантажено на образ.

Редактор визначається змінною середовища $EDITOR. Втім, якщо ви ви скористаєтеся альтернативними варіантами, "vi" або "emacs", буде запущено відповідні редактори.

event

 event назва набір_подій "скрипт оболонки..."

Реєструє фрагмент скрипту оболонки, який буде виконано, якщо надійде повідомлення про подію. Див. опис "guestfs_set_event_callback" in guestfs(3), де наведено обговорення програмного інтерфейсу подій у libguestfs.

Значенням параметра "назва" є назва, яку ви хочете надати обробнику подій. Це може бути довільний рядок (навіть порожній). Його призначено для ідентифікації обробника для його вилучення за допомогою команди "delete-event" guestfish.

Значенням параметра "набір_подій" є список відокремлених комами записів однієї або декількох подій. Приклади: "close" або "close,trace". Спеціальне значення "*" означає «усі події».

Третім і останнім параметром команди є фрагмент скрипту оболонки (або будь-яка зовнішня програма), яку буде виконано, якщо станеться якась із подій із вказаного набору. Скрипт буде виконано за допомогою "$SHELL -c" або, якщо $SHELL не встановлено, за допомогою /bin/sh -c.

Фрагмент скрипту оболонки отримує параметри зворотного виклику як аргументи $1, $2 тощо. Справжня назва події, яку було викликано, доступна у змінній середовища $EVENT.

 event "" close "echo closed"
 event messages appliance,library,trace "echo $@"
 event "" progress "echo progress: $3/$4"
 event "" * "echo $EVENT $@"

Див. також команди guestfish "delete-event" і "list-events".

glob

 glob команда параметри...

Розгортає символи-замінники у будь-яких шляхах у списку аргументів і виконує команду "команда" циклічно для усіх відповідних шляхів.

Див. "WILDCARDS AND GLOBBING".

hexedit

 hexedit <назва_файла|пристрій>
 hexedit <назва_файла|пристрій> <макс>
 hexedit <назва_файла|пристрій> <початок> <макс>

Використовує hexedit (шістнадцятковий редактор) для редагування усього або частини двійкового файла або блокового пристрою.

Ця команда працює шляхом отримання даних усього файла або пристрою, локального редагування та наступного вивантаження даних. Якщо об'єм даних файла або пристрою є надто великим, вам слід вказати частину, яку ви хочете редагувати, за допомогою параметрів "макс" і/або "початок" "макс". Значення "початок" і "макс" слід вказувати у байтах зі звичними доступними модифікаторами, наприклад, "1M" (1 мегабайт).

Приклад для редагування перших декількох секторів на диску:

 hexedit /dev/sda 1M

Ви зможете редагувати будь-які дані у межах першого мегабайта даних на диску.

Щоб внести зміни до суперблоку файлової системи ext2 на /dev/sda1, віддайте таку команду:

 hexedit /dev/sda1 0x400 0x400

(тут ми припускаємо, що суперблок розташовано стандартно).

Для виконання цієї команди потрібна зовнішня програма hexedit(1). Вказати нестандартну програму можна за допомогою змінної середовища "HEXEDITOR".

Див. також "hexdump".

lcd

 lcd каталог

Змінює локальний каталог, тобто поточний каталог програми guestfish.

Зауважте, що команда "!cd" не виконає тієї дії, якої ви від неї могли б сподіватися.

list-events

 list-events

Виводить список обробників подій, зареєстрованих за допомогою команди "event" guestfish.

man

підручник

  man

Відкриває сторінку підручника щодо guestfish.

more

less

 more назва_файла
 less назва_файла

Використовується для перегляду файла.

Типовим засобом для перегляду є $PAGER. Втім, якщо ви скористаєтеся альтернативною командою "less", ви отримаєте саме команду "less".

reopen

  reopen

Закрити і повторно відкрити дескриптор libguestfs. Зазвичай, у цій команді немає потреби, оскільки дескриптор належним чином закривається під час виходу з guestfish. Втім, ця команда іноді корисна для тестування.

setenv

  setenv ЗМІННА значення

Встановити для змінної середовища "ЗМІННА" рядкове значення "значення".

Щоб вивести значення змінної середовища, скористайтеся командною оболонкою, ось так:

 !echo $ЗМІННА

sparse

 sparse назва_файла розмір

Створити порожній розріджений файл вказаного розміру, а потім додати його для подальшого вивчення.

В усіх аспектах команда працює так само як команда "alloc", окрім того, що файл образу розміщається із розрідженням, що означає, що блоки диска не пов'язується із файлом до того, як це стане потрібно. Розріджені файли на диску використовують місце на диску, лише якщо до них виконується запис, але працюють повільніше, і існує небезпека вичерпання доступного місця на диску під час дії із запису.

Щоб дізнатися про ширші можливості зі створення образів, див. "disk-create".

Розмір можна вказати за допомогою стандартних суфіксів, наприклад "1M".

Див. також команду guestfish "scratch".

supported

 supported

Ця команда повертає список усіх додаткових груп, які відомі файловій службі, і позначає ті служби, підтримку яких передбачено у поточній збірці базової системи libguestfs.

Див. також "AVAILABILITY" in guestfs(3).

time

 time команда аргументи...

Виконати команду у звичайному режимі, але після виконання вивести дані щодо витраченого часу. Корисна для вимірювання швидкодії.

unsetenv

  unsetenv ЗМІННА

Вилучити змінну "ЗМІННА" з середовища.

КОМАНДИ

acl-delete-def-file

 acl-delete-def-file каталог

Ця функція вилучає типовий список керування доступом POSIX (ACL), який пов'язано із каталогом "dir".

Працездатність цієї команди залежить від можливості "acl". Див. також "feature-available".

acl-get-file

 acl-get-file шлях тип-acl

Ця функція повертає список керування доступом POSIX (ACL), пов'язаний із "path". ACL буде повернуто у «довгій тестовій формі» (див. acl(5)).

Можливі значення параметра "acltype":

"access"
Повертає звичайний (на доступ) ACL для будь-якого файла, каталогу або іншого об'єкта файлової системи.
"default"
Повертає типовий ACL. Зазвичай, це має сенс лише, якщо "шлях" — це каталог.

Працездатність цієї команди залежить від можливості "acl". Див. також "feature-available".

acl-set-file

 acl-set-file шлях тип-acl acl

Ця функція встановлює список керування доступом POSIX (ACL), пов'язаний із шляхом "path".

Можливі значення параметра "acltype":

"access"
Встановлює звичайний (на доступ) ACL для будь-якого файла, каталогу або іншого об'єкта файлової системи.
"default"
Встановлює типовий ACL. Зазвичай, це має сенс лише, якщо "шлях" — це каталог.

Значенням параметра "acl" є новий ACL у «довгій текстовий формі» або «скороченій текстовій формі» (див. acl(5)). Новий ACL повністю заміняє будь-який попередній ACL файла. ACL має містити повні права доступу Unix (наприклад, "u::rwx,g::rx,o::rx").

Якщо ви вказуєте окремих користувачів або групи, слід вказувати і поле маски (наприклад, "m::rwx"), за яким слід вказувати поля "u:ідентифікатор:..." і/або "g:ідентифікатор:...". Отже, повний рядок ACL може виглядати ось так:

 u::rwx,g::rwx,o::rwx,m::rwx,u:500:rwx,g:500:rwx
 \      Права Unix        / \маска/ \      ACL        /

Вам слід використовувати числові значення UID і GID. Щоб пов'язати імена користувачів та назви груп із правильними значенням ідентифікаторів у контексті гостьової системи, скористайтеся функціями Augeas (див. "aug-init").

Працездатність цієї команди залежить від можливості "acl". Див. також "feature-available".

add-cdrom

 add-cdrom назва_файла

Ця функція додає віртуальний образ компакт-диска до гостьової системи.

Образ додається як придатний лише для читання диск, отже ця функція еквівалентна до "add-drive-ro".

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "add-drive-ro".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

add-domain

домен

 add-domain dom [libvirturi:..] [readonly:true|false] [iface:..] [live:true|false] [allowuuid:true|false] [readonlydisk:..] [cachemode:..] [discard:..] [copyonread:true|false]

Ця функція додає диски, долучені до вказаного за назвою домену libvirt "dom". Вона працює шляхом з'єднання із libvirt,
надсилання запиту щодо домену і XML домену до libvirt, обробки отриманих даних для дисків і виклику "add-drive-opts" для кожного з дисків.

Буде повернуто значення кількості доданих дисків. Ця операція є атомарною: якщо буде повернуто помилку, жодного диска не додано.

Ця функція виконує деякі мінімальні перевірки, щоб переконатися, що домен libvirt не запущено (якщо "readonly" не дорівнює true). У майбутніх версіях ми спробуємо реалізувати блокування libvirt для кожного диска.

Disks must be accessible locally. This often means that adding disks from a remote libvirt connection (see https://libvirt.org/remote.html) will fail unless those disks are accessible via the same device path locally too.

The optional "libvirturi" parameter sets the libvirt URI (see https://libvirt.org/uri.html). If this is not set then we connect to the default libvirt URI (or one set through an environment variable, see the libvirt documentation for full details).

Необов'язковий прапорець "live" керує тим, чи буде цей виклик намагатися з'єднатися із запущеним процесом "guestfsd" віртуальної машини, якщо буде виявлено відповідний елемент <channel> у визначення XML libvirt. Типовою поведінкою (якщо прапорець не встановлено) є поведінка, за якої спроби робитися не буде. Див. "ДОЛУЧЕННЯ ДО ЗАПУЩЕНИХ ФОНОВИХ СЛУЖБ" in guestfs(3), щоб дізнатися більше.

Якщо прапорець "allowuuid" має значення true (типовим значенням є false), тоді може бути передано UUID замість назви домену. Рядок "dom" обробляється спочатку як UUID і виконується пошук. Якщо нічого не вдасться знайти, "dom" обробляється як назва, як завжди.

Необов'язковий параметр "readonlydisk" керує тим, що ми робимо із дисками, які позначено як <readonly/> у XML libvirt. Можливі значення:

Якщо "readonly" має значення false:

Увесь виклик буде перервано із повідомленням про помилку, якщо буде виявлено хоча б один диск із прапорцем <readonly/>.

Якщо "readonly" має значення true:

Диски із прапорцем <readonly/> додано лише для читання.

Якщо "readonly" має значення false:

Диски із прапорцем <readonly/> додано лише для читання. Інші диски додано для читання і запису.

Якщо "readonly" має значення true:

Диски із прапорцем <readonly/> додано лише для читання.

Якщо "readonly" має значення false:

Диски із прапорцем <readonly/> додано для читання і запису.

Якщо "readonly" має значення true:

Диски із прапорцем <readonly/> додано лише для читання.

Якщо "readonly" має значення true або false:

Диски з прапорцем <readonly/> буде пропущено.

If present, the value of "logical_block_size" attribute of <blockio/> tag in libvirt XML will be passed as "blocksize" parameter to "add-drive-opts".

Інші необов'язкові параметри передаються безпосередньо до "add-drive-opts".

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

add-drive

add

add-drive-opts

 add-drive filename [readonly:true|false] [format:..] [iface:..] [name:..] [label:..] [protocol:..] [server:..] [username:..] [secret:..] [cachemode:..] [discard:..] [copyonread:true|false] [blocksize:N]

Ця функція додає образ диска, який має назву filename, до дескриптора. filename може бути звичайним файлом основної системи або пристроєм основної системи.

Якщо цю функцію викликають до "launch" (типовий випадок), тоді, коли ви вперше викликаєте цю функцію, диск з'являється у програмному інтерфейсі як /dev/sda, другого разу — /dev/sdb, тощо.

У libguestfs ≥ 1.20 ви можете викликати цю функцію і після запуску (з певними обмеженнями). Це називається «з'єднання у «гарячому» режимі». При такому з'єднанні вам слід вказати мітку ("label"), щоб новий диск отримав передбачувану назву. Докладніший опис наведено у розділі "З'ЄДНАННЯ У «ГАРЯЧОМУ» РЕЖИМІ" in guestfs(3).

Вам не обов'язково мати права адміністратора (root), коли ви використовуєте libguestfs. Втім, вам, очевидно, знадобляться достатні права доступу до файла, щоб виконувати відповідні дії із файлом (тобто доступ до читання, якщо ви хочете читати дані з образу, або доступ до запису, якщо ви хочете вносити зміни до образу).

Цей виклик перевіряє, чи існує filename.

filename може бути спеціальним рядком "/dev/null". Див. "НУЛЬОВІ ДИСКИ" in guestfs(3).

Необов'язковими аргументами є:

"readonly"
Якщо має значення true, образ вважатиметься придатним лише для читання. Запис буде дозволено, але дані зберігатимуться у тимчасовому знімку-накладці, який наприкінці сеансу роботи буде відкинуто. Зміни до диска, який ви додаєте, внесено не буде.
"format"
Примусово встановлює формат образу. Якщо ви не вкажете його (або скористаєтеся "add-drive" чи "add-drive-ro"), формат визначатиметься автоматично. Серед можливих форматів "raw" і "qcow2".

Автоматичне визначення формату є потенційною вадою захисту, якщо ви маєте справу з образами у форматі raw із ненадійних джерел. Див. CVE-2010-3851 і RHBZ#642934. Вказування формату явним чином закриває цю дірку у захисті.

"iface"
Цей рідкісний параметр надає вам змогу емулювати поведінку застарілого виклику "add-drive-with-if" (q.v.)
"name"
Назва, яку диск має у початковій гостьовій системі, наприклад, /dev/sdb. Використовується як підказка для процесу інспектування гостьової системи, якщо така назва наявна.
"label"
Надати диску мітку. Мітка має бути унікальним коротким рядком, у якому використано лише символи ASCII "[a-zA-Z]". Окрім звичайної назви у програмному інтерфейсі (наприклад /dev/sda), диск також можна буде називати /dev/disk/guestfs/мітка.

Див. "МІТКИ ДИСКІВ" in guestfs(3).

"protocol"
Необов'язковим аргументом протоколу можна скористатися для вибору альтернативного протоколу джерела.

Див. також "REMOTE STORAGE" in guestfs(3).

"protocol = "file""
filename вважатиметься локальним файлом або пристроєм. Це типова поведінка програми, якщо не вказано додатковий параметр протоколу.
"protocol = "ftp"|"ftps"|"http"|"https"|"tftp""
З'єднатися із віддаленим сервером FTP, HTTP або TFTP. Також має бути надано параметр "server", див. нижче.

Див. також "FTP, HTTP AND TFTP" in guestfs(3)

"protocol = "gluster""
З'єднатися із сервером GlusterFS. Також має бути надано параметр "server", див. нижче.

Див. також "GLUSTER" in guestfs(3).

"protocol = "iscsi""
З'єднатися із сервером iSCSI. Також має бути надано параметр "server", див. нижче. Має бути надано параметр "username", див. нижче. Має бути надано параметр "secret", див. нижче.

Див. також "ISCSI" in guestfs(3).

"protocol = "nbd""
З'єднатися із сервером Network Block Device. Також має бути надано параметр "server", див. нижче.

Див. також "NETWORK BLOCK DEVICE" in guestfs(3).

"protocol = "rbd""
З'єднатися із сервером Ceph (librbd/RBD). Також має бути надано параметр "server", див. нижче. Має бути надано параметр "username", див. нижче. Має бути надано параметр "secret", див. нижче.

Див. також "CEPH" in guestfs(3).

"protocol = "sheepdog""
З'єднатися із сервером Sheepdog. Також може бути надано параметр "server", див. нижче.

Див. також "SHEEPDOG" in guestfs(3).

"protocol = "ssh""
Встановити з’єднання з сервером Secure Shell (ssh).

Має бути надано параметр "server". Може бути надано параметр "username", див. нижче.

Див. також "SSH" in guestfs(3).

"server"
Для протоколів, які потребують доступу до віддаленого сервера, це список серверів.

 Протокол       Кількість потрібних серверів
 --------       --------------------------
 file           Список має бути порожнім або не слід користуватися параметром взагалі
 ftp|ftps|http|https|tftp  Точно один
 gluster        Точно один
 iscsi          Точно один
 nbd            Точно один
 rbd            Нуль або більше
 sheepdog       Нуль або більше
 ssh            Точно один
    

Кожен елемент у списку є рядком, який вказує на сервер. Рядок має бути записано у одному з таких форматів:

 назва_вузла
 назва_вузла:порт
 tcp:назва_вузла
 tcp:назва_вузла:порт
 unix:/шлях/до/сокета
    

Якщо номер порту не вказано, буде використано стандартний для протоколу номер (див. /etc/services).

"username"
Для протоколів "ftp", "ftps", "http", "https", "iscsi", "rbd", "ssh" та "tftp" визначає ім’я користувача віддаленої системи.

Якщо не вказано, для "ssh" буде використано ім'я локального користувача, а для ceph спроба пройти розпізнавання не виконуватиметься. Втім, зауважте, що іноді це може призводити до неочікуваних результатів, наприклад, якщо використовується модуль обробки libvirt, і модуль обробки libvirt налаштовано на запуск базової системи qemu від імені спеціального користувача, зокрема "qemu.qemu". Якщо сумніваєтеся, вкажіть потрібне вам ім'я користувача віддаленої системи.

"secret"
Лише для протоколу "rbd" це визначає «ключ», яким слід скористатися для з'єднання із віддаленим пристроєм. Дані має бути вказано у кодуванні base64.

Якщо не вказано, буде виконано пошук ключа, який відповідає вказаному імені користувача у типовому сховищі ключів. Якщо імені користувача не вказано, спроба пройти розпізнавання не виконуватиметься.

"cachemode"
Вкажіть, має libguestfs зважати на дії з синхронізації (безпечно, але повільно) чи ні (небезпечно, але швидко). Можливими значеннями цього рядка можуть бути:
"cachemode = "writeback""
Типове значення.

Дії із запису у програмному інтерфейсі не повертають керування, аж доки не буде завершено виклик write(2) у основній системі [втім, слід зауважити, що це не означає, що щось буде записано на диск].

Дії із синхронізації у програмному інтерфейсі, зокрема неявні синхронізації, спричинені журналюванням файлової системи, не повертатимуть керування, аж доки не буде завершено виклик fdatasync(2) у основній системі, що означатиме, що дані було надіслано на диск.

"cachemode = "unsafe""
У цьому режимі надійність не гарантовано. Libguestfs може кешувати дані і ігнорувати запити щодо синхронізації. Пасує лише тестовим та тимчасовим дискам.
"discard"
Увімкнути або вимкнути підтримку відкидання (або обрізання чи скасовування прив'язки) для цього диска. Якщо увімкнено, дії, подібні до "fstrim" зможуть відкидати / утоншувати / пробивати дірки у підлеглому файлі або пристрої основної системи.

Можливі варіанти параметрів відкидання:

"discard = "disable""
Вимкнути підтримку відкидання. Типова поведінка.
"discard = "enable""
Увімкнути підтримку відкидання. Завершується помилкою, якщо відкидання неможливе.
"discard = "besteffort""
Увімкнути, якщо можна, підтримку відкидання, але не завершувати роботу із повідомленням щодо помилки, якщо такої підтримки не передбачено.

Оскільки підтримку відкидання передбачено не для усіх модулів обробки і не для усіх підлеглих систем, це непоганий варіант, якщо ви хочете скористатися відкиданням, якщо воно можливе, але не маєте нічого проти того, щоб воно не працювало.

"copyonread"
Булевий параметр "copyonread" вмикає підтримку копіювання під час читання. Це стосується лише форматів дисків, які мають резервні файли, і спричиняє до того, що дані читання зберігатимуться у накладному шарі, що пришвидшуватиме повторні читання тих сами даних з диска.

Типовим є значення false.

"blocksize"
This parameter sets the sector size of the disk. Possible values are 512 (the default if the parameter is omitted) or 4096. Use 4096 when handling an "Advanced Format" disk that uses 4K sector size (https://en.wikipedia.org/wiki/Advanced_Format).

Only a subset of the backends support this parameter (currently only the libvirt and direct backends do).

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

add-drive-ro

add-ro

 add-drive-ro назва_файла

Ця функція є еквівалентом виклику "add-drive-opts" із додатковим параметром "GUESTFS_ADD_DRIVE_OPTS_READONLY", який встановлено у значення 1, отже диск додається лише для читання, а формат визначається автоматично.

add-drive-ro-with-if

 add-drive-ro-with-if назва_файла інтерфейс

Те саме, що і "add-drive-ro", але надає вам змогу вказати емуляцію інтерфейсу QEMU, яку буде використано під час роботи.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "add-drive".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

add-drive-scratch

scratch

 add-drive-scratch size [name:..] [label:..] [blocksize:N]

Ця команда додає тимчасовий робочий диск до дескриптора. Параметр "size" визначає його віртуальний розмір (у байтах). Робочий диск є початково порожнім (усі спроби читання повертатимуть лише нулі, аж доки ви не почнете записувати на нього дані). Диск вилучається після закриття дескриптора.

The optional arguments "name", "label" and "blocksize" are passed through to "add-drive-opts".

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

add-drive-with-if

 add-drive-with-if назва_файла інтерфейс

Те саме, що і "add-drive", але надає вам змогу вказати емуляцію інтерфейсу QEMU, яку буде використано під час роботи.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "add-drive".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

aug-clear

 aug-clear шлях

Встановлює значення, пов'язане "path" у "NULL". Те саме, що і команда augtool(1) "clear".

aug-close

 aug-close

Закрити поточний дескриптор Augeas і вивільнити усі ресурси, які ним використовуються. Після виклику слід викликати "aug-init" ще раз, перш ніж ви зможете скористатися будь-якими іншими функціями Augeas.

aug-defnode

 aug-defnode назва вираз значення

Визначає змінну "назва", чиїм значенням є результат обчислення виразу "вираз".

If "expr" evaluates to an empty nodeset, a node is created, equivalent to calling "aug-set" "expr", "val". "name" will be the nodeset containing that single node.

Якщо виконано успішно, повертає пару значень — кількість вузлів у наборі вузлів та булевий прапорець, якщо було створено вузол.

aug-defvar

 aug-defvar назва вираз

Визначає змінну Augeas "назва", чиїм значенням є результат обчислення виразу "вираз". Якщо значенням "вираз" є NULL, "назва" є невизначеною.

Якщо виконано успішно, повертає кількість вузлів у виразі "вираз" або 0, якщо обробка виразу "вираз" дає щось, що не є набором вузлів.

aug-get

 aug-get шлях

Виконати пошук значення, пов'язаного із шляхом "шлях". Якщо "шлях" визначає точно один вузол, буде повернуто "значення".

aug-init

 aug-initкорінь прапорці

Створити дескриптор Augeas для редагування файлів налаштувань. Якщо із цим сеансом guestfs вже було пов'язано дескриптор Augeas, його буде закрито.

Вам слід викликати цю команду до використання будь-яких інших команд "aug-*".

"корінь" — коренева тека файлової системи. Значенням "корінь" не повинен бути NULL. Замість значення NULL слід використовувати /.

Прапорці є тими самими, що і прапорці, визначені у <augeas.h>, застосування логічного АБО до таких цілих значень:

"AUG_SAVE_BACKUP" = 1
Зберігати початковий файл із додаванням до назви суфікса ".augsave".
"AUG_SAVE_NEWFILE" = 2
Зберігати зміни до файла із суфіксом назви ".augnew" і не перезаписувати початковий файл. Має вищий пріоритет за "AUG_SAVE_BACKUP".
"AUG_TYPE_CHECK" = 4
Лінзи перевірки типів.

Цей параметр буде корисним, лише якщо ви виконуєте діагностику лінз Augeas. Використання цього параметра може потребувати додаткової пам'яті для базової системи libguestfs. Ймовірно, вам варто встановити відповідне значення для змінної середовища "LIBGUESTFS_MEMSIZE" або викликати "set-memsize".

"AUG_NO_STDINC" = 8
Не використовувати стандартний шлях для завантаження модулів.
"AUG_SAVE_NOOP" = 16
Вимкнути дію зі збереження, просто записати, що могло б бути змінено.
"AUG_NO_LOAD" = 32
Не завантажувати ієрархію до "aug-init".

Щоб закрити дескриптор, ви можете викликати "aug-close".

Щоб дізнатися більше про Augeas, зверніться до http://augeas.net/.

aug-insert

 aug-insert шлях мітка true|false

Створити мітку-близнюка "мітка" для шляху "шлях", вставивши її до ієрархії перед або після записом шляху "шлях" (залежно від додаткового булевого прапорця "до").

"шлях" має збігатися із точно одним наявним вузлом у ієрархії, а "мітка" має бути міткою, тобто не містити /, "*", або завершуватися індексом у дужках, "[N]".

aug-label

 aug-label шлях

Повертає мітку (назву останнього елемента) для виразу шляху Augeas "шлях". "шлях" має відповідати точно одному вузлу, інакше функцією буде повернуто повідомлення про помилку.

aug-load

 aug-load

Завантажити файли до ієрархії.

Див. документацію Augeas щодо "aug_load", якщо хочете докладнішого опису.

aug-ls

 aug-ls шлях

Скорочена форма запису для побудови списку "aug-match" "шлях/*" і упорядковування вузлів-результатів за абеткою.

aug-match

 aug-match шлях

Повертає список шляхів, які відповідають виразу шляху "шлях". Повернуті записи шляхів є достатньо визначеними, щоб відповідати точно одному запису вузла у поточній ієрархії.

aug-mv

 aug-mv джерело призначення

Пересуває вузол "джерело" до "призначення". "джерело" має відповідати точно одному вузлу. "призначення" буде перезаписано, якщо воно вже існує.

aug-rm

 aug-rm шлях

Вилучити "шлях" і усі його підлеглі об'єкти.

Якщо виконано успішно, повертає кількість вилучених записів.

aug-save

 aug-save

Записує зміни з черги на диск.

Прапорці, які передаються "aug-init" впливають на те, як саме буде збережено файли.

aug-set

 aug-set шлях значення

Set the value associated with "augpath" to "val".

У програмному інтерфейсі Augeas можна спорожняти вузол наданням йому значення NULL. Через недогляд у програмному інтерфейсі libguestfs ви не зможете цього робити за допомогою цього виклику. Замість цього, доведеться викликати "aug-clear".

aug-setm

 aug-setm основа підлеглий значення

Змінити декілька вузлів Augeas однією командою. "основа" — вираз, що відповідає декільком вузлам. "підлеглий" — вираз шляху відносно шляху "основа". Буде знайдено усі вузли, які відповідають запису "основа", а потім для кожного вузла значення "підлеглий" буде змінено на "значення". Значенням "підлеглий" може бути "NULL", щоб призведе до внесення змін до вузлів "основа".

Повертає кількість модифікованих вузлів.

aug-transform

 aug-transform лінза файл [вилучення:true|false]

Додати перетворення Augeas до вказаної лінзи "лінза" так, щоб вона могла обробляти "файл".

Якщо значенням прапорця "вилучення" є true (типово його значенням є "false"), перетворення буде вилучено.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

available

 available 'групи ...'

Ця команда використовується для перевірки доступності певних груп функціональних можливостей у базовій системі, роботу яких можуть забезпечити не усі збірки базової системи libguestfs.

Список груп libguestfs та функцій, яким відповідають ці групи, наведено у розділі "ДОСТУПНІСТЬ" in guestfs(3). Ви також можете отримати цей список у робочому режимі викликом "available-all-groups".

Аргумент "групи" є списком назв груп. Приклад: "["inotify", "augeas"]" має перевірити доступність функцій inotify Linux та функцій Augeas (редагування файла налаштувань).

Ця команда не повертає повідомлення про помилку, якщо доступними є усі вказані групи.

Команда завершується повідомленням про помилку, якщо одна або декілька запитаних груп є недоступною у базовій системі.

Якщо до списку груп буде включено групу із невідомою назвою, команда завжди повертатиме повідомлення про помилку.

Нотатки:

  • "feature-available" є тим самим, що і цей виклик, але із дещо простішим у користуванні програмним інтерфейсом: цей виклик повертає булеве true/false замість надсилання повідомлення про помилку.
  • Перед викликом цієї функції слід викликати "launch".

    Причиною є те, що ми не знаємо, підтримку яких груп передбачено у базовій системі або фоновій службі, доки її не буде запущено, і вона не зможе відповідати на запити.

  • Якщо група функцій доступна, це не обов'язково означає, що функції працюватимуть. Вам все одно слід перевірити, чи не виникають помилки під час викликів окремих програмних інтерфейсів, навіть якщо вони доступні.
  • Зазвичай, збирання базової системи libguestfs із якомога ширшими функціональними можливостями є завданням пакувальників дистрибутивів. libguestfs із основної гілки коду, якщо програми зібрано із початкового коду із усіма залежностями, підтримуватиме роботу із усіма можливостями.
  • Цей виклик було додано у версії 1.0.80. У попередніх версіях libguestfs усе, що ви могли зробити, це спробувати виконати команду, щоб визначити, чи реалізовано її у фоновій службі. Див. також "version".

Див також "filesystem-available".

available-all-groups

 available-all-groups

Ця команда повертає список усіх додаткових груп, про які знає ця фонова служба. Зауважте, що буде повернуто список підтримуваних і непідтримуваних груп. Щоб визначити групи, підтримку яких передбачено у фоновій службі, вам слід викликати "available" / "feature-available" для кожного запису із повернутого списку.

Див. також "available", "feature-available" та "ДОСТУПНІСТЬ" in guestfs(3).

base64-in

 base64-in (файл_base64|-) назва_файла

Ця команда вивантажує закодовані у base64 дані з файла "файл_base64" до файла назва_файла.

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

base64-out

 base64-out назва_файла (файл_base64|-)

Ця команда отримує вміст файла назва_файла і записує його до локального файла "файл_base64" у кодуванні base64.

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

blkdiscard

 blkdiscard пристрій

Ця команда відкидає усі блоки на блоковому пристрої "пристрій", вивільняючи місце і передаючи його основній системі.

Ця операція потребує підтримки у libguestfs, файловій системі основної системи, qemu та ядрі основної системи. Якщо цієї підтримки немає, операція призведе до помилки або навіть виконуватиметься, але без усіляких наслідків. Вам слід встановити атрибут "discard" на підлеглому диску (див. "add-drive-opts").

Працездатність цієї команди залежить від можливості "blkdiscard". Див. також "feature-available".

blkdiscardzeroes

 blkdiscardzeroes пристрій

Цей виклик повертає true, якщо блоки на пристрої "пристрій", які було відкинуто викликом "blkdiscard", повернуто як блоки у нуль байтів під час наступного читання.

Якщо повертає false, може так статися, що відкинуті блоки читаються як застарілі або випадкові дані.

Працездатність цієї команди залежить від можливості "blkdiscardzeroes". Див. також "feature-available".

blkid

 blkid пристрій

Ця команда повертає атрибути блокового пристрою "пристрій". У виведеному хеші зазвичай є вказані нижче поля. Також у ньому можуть бути інші поля.

"UUID"
Код UUID цього пристрою.
"МІТКА"
Мітка пристрою.
"ВЕРСІЯ"
Версія програми blkid.
"ТИП"
Тип файлової системи або RAID для цього пристрою.
"ВИКОРИСТАННЯ"
Призначення цього пристрою, наприклад "filesystem" або "raid".

blockdev-flushbufs

 blockdev-flushbufs пристрій

Ця команда наказує ядру спорожнити внутрішні буфери, які пов'язано із пристроєм "пристрій".

Використовується програма blockdev(8).

blockdev-getbsz

 blockdev-getbsz пристрій

Повертає розмір блоку для пристрою.

Зауваження: цей розмір відрізняється від розміру у блоках і розміру блоку файлової системи. Крім того, цей параметр насправді ніде не використовується. Вам, ймовірно, не знадобляться ці дані. Файлові системі мають власні правила щодо вибору розміру блоку.

Використовується програма blockdev(8).

blockdev-getro

 blockdev-getro пристрій

Повертає булеве значення, яке визначається тим, чи призначено блоковий пристрій лише для читання (true, якщо пристрій призначено лише для читання, false, якщо ні).

Використовується програма blockdev(8).

blockdev-getsize64

 blockdev-getsize64 пристрій

Повертає розмір пристрою у байтах.

Див. також "blockdev-getsz".

Використовується програма blockdev(8).

blockdev-getss

 blockdev-getss пристрій

Ця команда повертає розмір сектора на блоковому пристрої. Зазвичай, розміром є 512, але на сучасних пристроях розмір може бути більшим.

(Зауважте, що це не розмір у секторах. Щоб отримати розмір у секторах, скористайтеся "blockdev-getsz").

Використовується програма blockdev(8).

blockdev-getsz

 blockdev-getsz пристрій

Цей повертає розмір пристрою у одиницях 512-байтових секторах (навіть якщо розмір сектора не дорівнює 512 байтів ...дивно).

Див. також "blockdev-getss", щоб дізнатися справжній розмір сектора пристрою, і "blockdev-getsize64" для отримання кориснішого розміру у байтах.

Використовується програма blockdev(8).

blockdev-rereadpt

 blockdev-rereadpt пристрій

Повторно прочитати таблицю розділів з пристрою "пристрій".

Використовується програма blockdev(8).

blockdev-setbsz

 blockdev-setbsz пристрій розмір_блоку

Цей виклик не виконує ніяких дій і ніколи цього не робив через ваду у blockdev. Не використовуйте його.

Якщо вам потрібно встановити розмір блоку файлової системи, скористайтеся параметром "blocksize" "mkfs".

Ця функція вважається застарілою. Замінника не передбачено. Зверніться до документації із програмного інтерфейсу у підручнику з guestfs(3), щоб дізнатися більше.

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

blockdev-setra

 blockdev-setra пристрій сектори

Встановити випереджальне читання (у 512-байтових секторах) для пристрою.

Використовується програма blockdev(8).

blockdev-setro

 blockdev-setro пристрій

Переводити блоковий пристрій з назвою "пристрій" у режим лише читання.

Використовується програма blockdev(8).

blockdev-setrw

 blockdev-setrw пристрій

Встановлює для блокового пристрою із назвою "пристрій" режим читання-запису.

Використовується програма blockdev(8).

btrfs-balance-cancel

 btrfs-balance-cancel шлях

Скасувати поточний баланс на файловій системі btrfs.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-balance-pause

 btrfs-balance-pause шлях

Призупинити запущений баланс у файловій системі btrfs

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-balance-resume

 btrfs-balance-resume шлях

Поновити призупинений баланс на файловій системі btrfs.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-balance-status

 btrfs-balance-status шлях

Показати стан використовуваного або призупиненого балансу на файловій системі btrfs.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-device-add

 btrfs-device-add 'пристрої ...' файлова система

Додати список пристроїв у записі "пристрої" до файлової системи btrfs, змонтованої до файлової системи "файлова система". Якщо "пристрої" є порожнім списком, не виконувати ніяких дій.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-device-delete

 btrfs-device-delete 'пристрої ...' файлова система

Вилучити "пристрої" з файлової системи btrfs, змонтованої до точки "файлова система". Якщо запис "пристрої" є порожнім списком, не виконувати ніяких дій.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-filesystem-balance

btrfs-balance

 btrfs-filesystem-balance файлова_система

Збалансувати фрагменти файлової системи btrfs, змонтованої до точки "файлова_система", між підлеглими пристроями.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-filesystem-defragment

 btrfs-filesystem-defragment шлях [витирання:true|false] [стискання:..]

Виконати дефрагментацію файла або каталогу на файловій системі btrfs. Для параметра «стискання» передбачено два значення: zlib або lzo.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-filesystem-resize

 btrfs-filesystem-resize точка_монтування [size:N]

Ця команда змінює розмір файлової системи btrfs.

Зауважте, що на відміну від інших викликів команд зміни розмірів, файлову систему має бути змонтовано, а параметром команди є точка монтування, а не пристрій (це вимога самої btrfs).

Додатковими параметрами є:

"розмір"
Новий розмір (у байтах) файлової системи. Якщо не вказано, файлову систему буде розширено до максимального розміру.

Див. також btrfs(8).

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-filesystem-show

 btrfs-filesystem-show пристрій

Вивести усі пристрої, на які поширюються файлові системи з пристрою "пристрій".

Якщо у системі наявні не усі пристрої для файлових систем, ця функція завершується повідомленням про помилку, а для "errno" встановлюється значення "ENODEV".

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-filesystem-sync

 btrfs-filesystem-sync файлова_система

Примусово синхронізувати файлову систему btrfs, яку змонтовано до точки "файлова_система".

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-fsck

 btrfs-fsck пристрій [superblock:N] [repair:true|false]

Використовується для перевірки файлової системи btrfs, "пристрій" — файл пристрою, у якому зберігається файлова система.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-image

 btrfs-image 'джерело ...' образ [рівень_стискання:N]

Використовується для створення образу файлової системи btrfs. Усі дані буде перезаписано нулями, але метадані і подібні дані буде збережено.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-qgroup-assign

 btrfs-qgroup-assign джерело призначення шлях

Додає q-групу "джерело" до батьківської q-групи "призначення". Ця команда може групувати декілька q-груп до батьківської q-групи для спільного використання загальних обмежень.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-qgroup-create

 btrfs-qgroup-create ідентифікатор_qgroup підтом

Створити групу квот (q-групу) для підтому "підтом".

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-qgroup-destroy

 btrfs-qgroup-destroy ідентифікатор_qgroup підтом

Знищити групу квот.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-qgroup-limit

 btrfs-qgroup-limit підтом розмір

Обмежити розмір підтому із шляхом "підтом".

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-qgroup-remove

 btrfs-qgroup-remove джерело призначення шлях

Вилучити q-групу "джерело" з батьківської q-групи "призначення".

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-qgroup-show

 btrfs-qgroup-show шлях

Вивести усі групи квот підтомів у файловій системі btrfs разом із даними щодо їхнього використання.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-quota-enable

 btrfs-quota-enable файлова_система true|false

Увімкнути або вимкнути підтримку квот підтомів для файлової системи, яка містить "шлях".

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-quota-rescan

 btrfs-quota-rescan файлова_система

Викинути усі числові дані qgroup і виконати повторне сканування з поточними налаштуваннями.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-replace

 btrfs-replace пристрій_джерела пристрій_призначення точка_монтування

Замінити пристрій файлової системи btrfs. На «живій» файловій системі здублювати на пристрій призначення дані, які на поточний момент зберігаються на пристрої джерела. Після завершення операції пристрій джерела буде витерто і вилучено з файлової системи.

 C<пристрій_призначення> повинен мати той самий або більший розмір за
C<пристрій_джерела>. Пристрої, які на поточний момент змонтовано, не можна
використовувати як C<пристрій_призначення>.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-rescue-chunk-recover

 btrfs-rescue-chunk-recover пристрій

Відновити дерево фрагментів файлової системи btrfs шляхом послідовного сканування пристроїв.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-rescue-super-recover

 btrfs-rescue-super-recover пристрій

Відновити пошкоджені суперблоки із якісних копій.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-scrub-cancel

 btrfs-scrub-cancel шлях

Скасувати витирання, що виконується у файловій системі btrfs.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-scrub-resume

 btrfs-scrub-resume шлях

Відновити раніше скасований або перерваний зріз на файловій системі btrfs.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-scrub-start

 btrfs-scrub-start шлях

Читає усі дані і метадані на файловій системі і використовує контрольні суми та копії-дублікати зі сховища даних RAID для ідентифікації та відновлення усіх пошкоджених даних.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-scrub-status

 btrfs-scrub-status шлях

Показати дані щодо стану витирання, яке виконується або завершено на файловій системі btrfs.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-set-seeding

 btrfs-set-seeding пристрій true|false

Увімкнути або вимкнути можливість розсіювання для пристрою, на якому міститься файлова система btrfs.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-subvolume-create

btrfs-subvolume-create-opts

 btrfs-subvolume-create призначення [ідентифікатор_qgroup:..]

Створити підтом btrfs. Значенням аргументу "призначення" є каталог призначення і назва підтому у формі /шлях/до/призначення/назва. Додатковий параметр "ідентифікатор q-групи" відповідає q-групі, до якої слід додати створений підтом.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-subvolume-delete

 btrfs-subvolume-delete підтом

Вилучити вказаний за назвою підтом або знімок btrfs.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-subvolume-get-default

 btrfs-subvolume-get-default файлова_система

Отримати типовий підтом або знімок файлової системи, змонтований до точки "точка монтування".

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-subvolume-list

 btrfs-subvolume-list фс

Виводить список знімків btrfs і підтоми файлової системи btrfs, яку змонтовано до точки "файлова_система".

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-subvolume-set-default

 btrfs-subvolume-set-default ідентифікатор файлова_система

Встановити підтом файлової системи btrfs "файлова_система", який буде типово змонтовано. Див. "btrfs-subvolume-list", щоб отримати список підтомів.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-subvolume-show

 btrfs-subvolume-show підтом

Повернути докладні дані щодо підтому.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfs-subvolume-snapshot

btrfs-subvolume-snapshot-opts

 btrfs-subvolume-snapshot джерело призначення [ro:true|false] [qgroupid:..]

Створити знімок підтому btrfs. Значенням аргументу "призначення" є каталог призначення і назва знімка у формі /шлях/до/призначення/назва. Типово, новостворений знімок придатний до запису. Якщо значенням додаткового параметра "ro" є true, буде створено знімок придатний лише до читання. Додатковий параметр "ідентифікатор q-групи" відповідає q-групі, до якої слід додати створений знімок.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfstune-enable-extended-inode-refs

 btrfstune-enable-extended-inode-refs пристрій

Вмикає розширені посилання на inode.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfstune-enable-skinny-metadata-extent-refs

 btrfstune-enable-skinny-metadata-extent-refs пристрій

Вмикає розширені посилання на спрощені метадані.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

btrfstune-seeding

 btrfstune-seeding пристрій true|false

Увімкнути розсіювання пристрою btrfs. Примусово робить файлову систему придатною лише для читання, щоб її можна було використовувати для побудови інших файлових систем.

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

c-pointer

 c-pointer

У прив'язках до мов, відмінних від C, ця функція надає змогу отримати підлеглий вказівник C на дескриптор (тобто "h *"). Так зроблено, щоб уможливити взаємодію інших бібліотек із libguestfs.

canonical-device-name

 canonical-device-name пристрій

Ця допоміжна функція корисна для показу назв пристроїв користувачеві. Вона приймає декілька неформатованих назв пристроїв і повертає їх у відповідному форматі:

/dev/hdX
/dev/vdX
Дані повертаються у форматі /dev/sdX. Зауважте, що це працює для назв пристроїв і розділів. Це, у наближеному вигляді, обернення алгоритму, описаного у розділі "ІМЕНУВАННЯ БЛОКОВИХ ПРИСТРОЇВ" in guestfs(3).
/dev/mapper/VG-LV
/dev/dm-N
Перетворені до форми /dev/VG/LV за допомогою "lvm-canonical-lv-name".

Інші рядки повертаються незмінними.

cap-get-file

 cap-get-file шлях

Ця функція повертає можливості Linux, пов'язані із шляхом "шлях". Набір можливостей повертається у текстовій формі (див. cap_to_text(3)).

Якщо з файлом не пов'язано можливостей, буде повернуто порожній рядок.

Працездатність цієї команди залежить від можливості "linuxcaps". Див. також "feature-available".

cap-set-file

 cap-set-file шлях можливості

Ця функція встановлює можливості Linux, пов'язані із шляхом "шлях". Набір можливостей "можливості" має бути передано у текстовій формі (див. cap_from_text(3)).

Працездатність цієї команди залежить від можливості "linuxcaps". Див. також "feature-available".

case-sensitive-path

 case-sensitive-path шлях

Цією функцією можна скористатися для використання записів шляхів без врахування регістру символів у системах із врахуванням регістру у шляхах. Це може знадобитися при читанні з файлів налаштувань Windows або реєстру Windows до справжнього шляху.

Команда працює із особливістю драйвера файлових систем ntfs-3g Linux (та, ймовірно, інших драйверів), яка полягає у тому, що, хоча у підлеглій файловій системі регістр символів не враховується, драйвер експортує файлову систему до Linux як таку, де регістр символів враховується.

Одним із наслідків цього є те, що спеціалізовані каталоги, зокрема C:\windows, можуть показуватися як /WINDOWS або /windows (або інші записи), залежно від точних характеристик їхнього створення. У самій Windows це не спричиняє ніяких проблем.

Bug or feature? You decide: https://www.tuxera.com/community/ntfs-3g-faq/#posixfilenames1

"case-sensitive-path" намагається визначити справжній регістр символів кожного запису у шляху. Команда повертає визначений шлях, якщо існує відповідний повний шлях або його батьківський каталог. Якщо існує батьківський каталог, але повний шлях не існує, буде визначено регістр для батьківського каталогу, а решту запису буде додано без змін. Наприклад, якщо існує файл "/Windows/System32/netkvm.sys":

"case-sensitive-path" ("/windows/system32/netkvm.sys")
"Windows/System32/netkvm.sys"
"case-sensitive-path" ("/windows/system32/NoSuchFile")
"Windows/System32/NoSuchFile"
"case-sensitive-path" ("/windows/system33/netkvm.sys")
ERROR

Зауваження: через описану вище поведінку "case-sensitive-path" не можна використовувати для перевірки наявності файла.

Зауваження: ця функція не обробляє назви дисків, зворотні похилі риски тощо.

Див. також "realpath".

cat

 cat шлях

Повертає вміст файла із назвою "шлях".

Оскільки у C ця функція повертає "char *", не існує способу відрізнити символ "\0" у вмісті файла і кінець рядка. Для обробки двійкових файлів скористайтеся функцією "read-file" або "download".

checksum

 checksum тип_контрольної_суми шлях

Цей виклик обчислює контрольну суму MD5, SHAx або CRC для файла із назвою "шлях".

Тип контрольної суми задається параметром "тип_контрольної_суми". Можливі значення цього параметра:

"crc"
Обчислити суму циклічної перевірки надлишковості (CRC) за стандартом POSIX для команди "cksum".
"md5"
Compute the MD5 hash (using the md5sum(1) program).
"sha1"
Compute the SHA1 hash (using the sha1sum(1) program).
"sha224"
Compute the SHA224 hash (using the sha224sum(1) program).
"sha256"
Compute the SHA256 hash (using the sha256sum(1) program).
"sha384"
Compute the SHA384 hash (using the sha384sum(1) program).
"sha512"
Compute the SHA512 hash (using the sha512sum(1) program).

Контрольна сума повертається у форматі рядка, придатного до друку (ASCII)

Для отримання контрольної суми пристрою скористайтеся "checksum-device".

Щоб отримати контрольні суми декількох файлів одразу, скористайтеся "/checksums-out".

checksum-device

 checksum-device тип_контрольної_суми пристрій

Цей виклик обчислює контрольну суму MD5, SHAx або CRC для вмісту пристрою із назвою "пристрій". Типи підтримуваних контрольних сум описано у документації до команди "checksum" .

checksums-out

 checksums-out тип_контрольної_суми каталог (файл_сум|-)

Ця команда обчислює контрольні суми звичайних файлів у каталозі каталог і видає список контрольних сум до локального файла результатів "файл_сум".

Командою можна скористатися для перевірки цілісності віртуальної машини. Втім, щоб забезпечити надійний захист, вам слід звернути увагу на виведені командою обчислення контрольних сум дані (використовується програма з GNU coreutils). Зокрема, якщо назва файла складається із символів, які непридатні до друку, coreutils використовує спеціалізований синтаксис із символом зворотної похилої риски. Щоб дізнатися більше, ознайомтеся із файлом info GNU coreutils.

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

chmod

 chmod режим шлях
Змінити режим (права доступу) для шляху C<шлях> на C<режим>. Передбачено
підтримку лише числових записів режимів.

Зауваження: при використанні цієї команди з guestfish, "режим", типово, має бути вказано у десятковій формі, якщо не буде додано префікса 0 для вісімкової форми запису, тобто слід вказувати 0700 замість 700.

На встановлений режим доступу впливає umask.

chown

 chown власник група шлях

Змінити власника файла на "власник" і групу на "група".

Передбачено підтримку лише числових uid і gid. Якщо ви хочете скористатися текстовими назвами, вам доведеться знайти і обробити файл паролів власноруч (підтримка Augeas робить це завдання відносно простим).

clear-backend-setting

 clear-backend-setting назва

Якщо рядок параметрів модуля дорівнює "name" або починається з "name=", цей рядок вилучається з параметрів модуля.

Цей виклик повертає кількість рядків, які було вилучено (може бути значення 0, 1 або більше за 1).

Див. "МОДУЛЬ" in guestfs(3), "ПАРАМЕТРИ МОДУЛЯ" in guestfs(3).

command

 command 'параметри...'

Цей виклик запускає команду з гостьової файлової системи. Файлову систему має бути змонтовано, вона має містити сумісну операційну систему (тобто якусь систему Linux із такою або сумісною архітектурою процесора).

Єдиним параметром є список аргументів у стилі argv. Першим елементом цього списку є назва програми, яку слід запустити. Наступні елементи є параметрами цієї програми. Список має бути непорожнім (тобто містити принаймні назву програми). Зауважте, що команда працює безпосередньо і не викликає командної оболонки (див. "sh").

Повернутим значенням є усі дані, виведені командою до stdout.

Якщо команда повертає ненульовий стан виходу, тоді ця функція повертає повідомлення про помилку. Рядок повідомлення про помилку міститиме вміст stderr від команди.

Змінна середовища $PATH міститиме принаймні /usr/bin і /bin. Якщо вам потрібна програм з іншої теки, вам слід вказати шлях до неї повністю у першому параметрі.

Бібліотеки спільного використання та файли даних, потрібні для запуску програми, мають бути доступними у файлових системах, які змонтовано до належних точок монтування. Забезпечити відповідність монтування усіх файлових систем має функція або програма, з якої викликається команда.

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

command-lines

 command-lines 'аргументи...'

Те саме, що і "command", але результат буде поділено на список рядків.

Див. також "sh-lines"

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

compress-device-out

 compress-device-out тип_стискання пристрій (z-пристрій|-) [рівень:N]

Ця команда стискає вміст пристрою "пристрій" і записує його до локального файла "z-пристрій".

Параметр "тип_стискання" і необов'язковий параметр "рівень" мають те саме значення, що і у команді "compress-out".

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

compress-out

 compress-out тип_стискання файл (z-файл|-) [рівень:N]

Ця команда стискає вміст файла "файл" і записує його до локального файла "z-файл".

Вибір програми для стискання керується параметром "тип_стискання". Поточні варіанти значень: "compress", "gzip", "bzip2", "xz" або "lzop". У деяких збірках libguestfs передбачено підтримку не усіх типів стискання. Якщо підтримки типу стискання не передбачено, буде виведено повідомлення про помилку, яке міститиме рядок «not supported».

Необов'язковий параметр "рівень" керує рівнем стискання. Значення і типові параметри залежать від використаної програми для стискання.

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

config

 config параметр-г-в значення-г-в

Цією командою можна скористатися для додавання довільних параметрів гіпервізору у формі -параметр значення. Насправді, параметр не є зовсім довільним — ми не даємо вам встановлювати певні параметри, які суперечать параметрам, які ви використовуєте.

Першим символом рядка "параметр-г-в" має бути "-" (дефіс).

"hvvalue" може дорівнювати NULL.

copy-attributes

 copy-attributes джерело призначення [all:true|false] [mode:true|false] [xattributes:true|false] [ownership:true|false]

Копіювати атрибути шляху (який може вказувати на файл або каталог) до іншого шляху.

By default no attribute is copied, so make sure to specify any (or "all" to copy everything).

Додаткові аргументи вказують, які атрибути має бути скопійовано:

"mode"
Копіювати частину режиму файла з запису "джерело" до запису "призначення". Скопіювати можна лише права доступу UNIX і липкі біти, setuid або setgid.
"xattributes"
Копіювати розширені атрибути Linux (xattrs) з запису "джерело" до запису "призначення". Цей прапорець не виконує ніяких дій, якщо можливість linuxxattrs недоступна (див. "feature-available").
"ownership"
Копіювати uid власника і gid групи з запису "джерело" до запису "призначення".
"all"
Копіювати усі атрибути із запису "джерело" до запису "призначення". Вмикання цього прапорця вмикає усі інші прапорці, якщо їх ще не було вказано.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

copy-device-to-device

 copy-device-to-device джерело призначення [srcoffset:N] [destoffset:N] [size:N] [sparse:true|false] [append:true|false]

Чотири команди "copy-device-to-device", "copy-device-to-file", "copy-file-to-device" та "copy-file-to-file" надають вам змогу скопіювати джерело (пристрій або файл) до призначення (пристрою або файла).

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

Джерело і призначення можуть бути одним і тим самим об'єктом. Втім, області перекриття може бути скопійовано неправильно.

Якщо призначенням є файл, його буде, якщо потрібно, створено. Якщо файл призначення є недостатньо великим, його буде розширено.

Якщо призначенням є файл і не встановлено прапорець "append", файл призначення буде обрізано. Якщо встановлено прапорець "append", копію буде дописано до початкового файла призначення. У поточній версії прапорець "append" не можна встановлювати для пристроїв.

Якщо значенням прапорця "sparse" є true, виклик уникатиме запису блоку, які містять лише нулі, що має допомогти у певних ситуаціях, коли резервний диск є обмеженим у ресурсах. Зауважте, що якщо призначення ще не занулено, використання цього параметра призведе до некоректних результатів.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

copy-device-to-file

 copy-device-to-file джерело призначення [srcoffset:N] [destoffset:N] [size:N] [sparse:true|false] [append:true|false]

Див. "copy-device-to-device", щоб ознайомитися із загальним оглядом цього виклику.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

copy-file-to-device

 copy-file-to-device джерело призначення [srcoffset:N] [destoffset:N] [size:N] [sparse:true|false] [append:true|false]

Див. "copy-device-to-device", щоб ознайомитися із загальним оглядом цього виклику.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

copy-file-to-file

 copy-file-to-file джерело призначення [srcoffset:N] [destoffset:N] [size:N] [sparse:true|false] [append:true|false]

Див. "copy-device-to-device", щоб ознайомитися із загальним оглядом цього виклику.

Це не функція для копіювання файлів. Цю функцію призначено для копіювання блоків у наявних файлах. Загальними функціями для копіювання та пересування файлів є функції "cp", "cp-a" та "mv".

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

copy-size

 copy-size джерело призначення розмір

Ця команда копіює точно "розмір" байтів з одного пристрою або файла джерела "джерело" до іншого пристрою або файла "призначення".

Зауважте, що команду не вдасться виконати успішно, якщо джерело є надто малим або призначення є недостатньо великим.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "copy-device-to-device".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

cp

 cp джерело призначення

Копіює файл з "джерело" до "призначення", де "призначення" — або назва файла призначення або назва каталогу призначення.

cp-a

 cp-a джерело призначення

Копіює файл або каталог з "джерела" до "призначення" рекурсивно з використанням команди "cp -a".

cp-r

 cp-r джерело призначення

Копіює файл або каталог з "джерела" до "призначення" рекурсивно з використанням команди "cp -rP".

Більшості користувачів слід використовувати "cp-a" замість цієї команди. Ця команда корисна, якщо вам не хочеться зберігати права доступу, оскільки у файловій системі призначення їх не передбачено (в основному при записів до файлових систем FAT DOS).

cpio-out

 cpio-out каталог (файл cpio|-) [format:..]

Ця команда пакує вміст каталогу каталог отримує його до локального файла "файл cpio".

Передбачено додатковий параметр "format", яким можна скористатися для вибору формату. У поточній версії передбачено підтримку лише таких форматів:

"newc"
Новий портативний формат (SVR4). Цей формат вважається сумісним із cpio-подібним форматом, який використовується ядром Linux для initramfs.

Цей формат є типовим.

"crc"
Новий портативний формат (SVR4) із контрольною сумою.

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

cryptsetup-close

 cryptsetup-close device

This closes an encrypted device that was created earlier by "cryptsetup-open". The "device" parameter must be the name of the mapping device (ie. /dev/mapper/mapname) and not the name of the underlying block device.

Працездатність цієї команди залежить від можливості "luks". Див. також "feature-available".

cryptsetup-open

 cryptsetup-open device mapname [readonly:true|false] [crypttype:..]

This command opens a block device which has been encrypted according to the Linux Unified Key Setup (LUKS) standard, Windows BitLocker, or some other types.

"пристрій" — шифрований блоковий пристрій або розділ.

The caller must supply one of the keys associated with the encrypted block device, in the "key" parameter.

Ця команда створює блоковий пристрій із назвою /dev/mapper/назва_прив'язки. Читання та запис на цій блоковий пристрій відбувається із розшифровуванням та шифруванням на підлеглому пристрої "пристрій".

"mapname" cannot be "control" because that name is reserved by device-mapper.

If the optional "crypttype" parameter is not present then libguestfs tries to guess the correct type (for example LUKS or BitLocker). However you can override this by specifying one of the following types:

"luks"
A Linux LUKS device.
"bitlk"
A Windows BitLocker device.

The optional "readonly" flag, if set to true, creates a read-only mapping.

Якщо на цьому блоковому пристрої містяться групи томів LVM, видимими їх можна зробити за допомогою виклику "lvm-scan" зі значенням параметра "activate" рівним "true".

Скористайтеся командою "list-dm-devices", щоб отримати список усіх пристроїв засобу прив'язування пристроїв.

Для виконання цієї команди потрібні будуть один або декілька параметрів ключів або паролів. Guestfish надсилатиме запит щодо цих параметрів окремо.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "luks". Див. також "feature-available".

dd

 dd джерело призначення

Ця команда копіює з одного пристрою або файла джерела "джерело" до іншого пристрою або файла "призначення". Зазвичай, цією командою слід користуватися для копіювання на пристрій чи розділ з пристрою чи розділу, наприклад, для дублювання файлової системи.

Якщо призначенням є пристрій, він має бути таким самим або більшим за розміром за файл або пристрій джерела, інакше копіювання виконати не вдасться. Ця команда не може виконувати часткове копіювання (див. "copy-device-to-device").

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "copy-device-to-device".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

device-index

 device-index пристрій

Ця функція приймає назву пристрою (наприклад, «/dev/sdb») і повертає індекс пристрою у списку пристроїв.

Нумерація індексів починається з 0. Іменований пристрій має існувати, наприклад, як рядок, повернутий з "list-devices".

Див. також "list-devices", "part-to-dev".

df

 df

This command runs the df(1) command to report disk space used.

Ця команда здебільшого корисна для інтерактивних сеансів. Її не призначено для випадків, коли ви намагаєтеся обробити виведений командою рядок. Скористайтеся командою "statvfs", якщо віддаєте команди з інших програм.

df-h

 df-h

Ця команда запускає програму "df -h" для отримання даних щодо використаного місця на диску у зручному для читання форматі.

Ця команда здебільшого корисна для інтерактивних сеансів. Її не призначено для випадків, коли ви намагаєтеся обробити виведений командою рядок. Скористайтеся командою "statvfs", якщо віддаєте команди з інших програм.

disk-create

 disk-create назва_файла формат розмір [backingfile:..] [backingformat:..] [preallocation:..] [compat:..] [clustersize:N]

Створити порожній образ диска із назвою назва_файла (файл основної системи) із форматом "формат" (зазвичай, "raw" або "qcow2"). Розмір визначається параметром "розмір" у байтах.

Якщо команда використовується із необов'язковим параметром "backingfile", знімок створюється на основі файла резервної копії. У цьому випадку "розмір" має бути передано як "-1". Розмір знімка є таким самим, як і розмір файла резервної копії, який визначається автоматично. Вам також варто передати "backingformat" для опису формату "backingfile".

Якщо назва_файла відповідає блоковому пристрою, пристрій буде форматовано. Параметр "розмір" ігнорується, оскільки блокові пристрої мають незмінний встановлений розмір.

Іншими необов’язковими параметрами є:

"preallocation"
Якщо форматом є "raw", цей параметр може мати значення "off" (або "sparse") або "full" для створення розрідженого або повністю розподіленого файла, відповідно. Типовим є значення "off".

Якщо форматом є "qcow2", цей параметр може мати значення "off" (або "sparse"), "metadata" або "full". Попереднє отримання місця під метадані є швидшим, коли виконується багато записів, але використовує більше місця. Типовим є значення "off".

"compat"
Лише "qcow2": передайте рядок 1.1, щоб скористатися розширеним форматом qcow2, підтримку якого передбачено у qemu ≥ 1.1.
"clustersize"
Лише "qcow2": змінити розмір кластера qcow2. Типовим є 65536 (байтів). Встановлювати можна будь-яке значення, яке є степенем двійки від 512 до 2097152.

Зауважте, що цей виклик не додає новий диск до дескриптора. Вам доведеться викликати "add-drive-opts" окремо.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

disk-format

 disk-format назва файла

Визначити і повернути формат образу диска із назвою назва_файла. Значенням назва_файла може бути також пристрій основної системи. Якщо формат образу диска визначити не вдасться, буде повернуто рядок "unknown".

Зауважте, що визначення формату диска може бути небезпечною дією за певних обставин. Див. "CVE-2010-3851" in guestfs(3).

Див. також: "ФОРМАТИ ОБРАЗІВ ДИСКІВ" in guestfs(3)

disk-has-backing-file

 disk-has-backing-file назва_файла

Визначає і повідомляє, чи є у образу диска назва_файла файл резервної копії.

Зауважте, що визначення можливостей диска може, за певних обставин, зашкодити захисту системи. Див. "CVE-2010-3851" in guestfs(3).

disk-virtual-size

 disk-virtual-size назва файла

Визначає і повідомляє віртуальний розмір у байтах образу диска із назвою назва_файла.

Зауважте, що визначення можливостей диска може, за певних обставин, зашкодити захисту системи. Див. "CVE-2010-3851" in guestfs(3).

dmesg

 dmesg

This returns the kernel messages (dmesg(1) output) from the guest kernel. This is sometimes useful for extended debugging of problems.

Іншим способом отримання тих самих даних є вмикання докладних повідомлень за допомогою "set-verbose" або встановленням змінної середовища "LIBGUESTFS_DEBUG=1" перед запуском програми.

download

 download назва_віддаленого_файла (назва_файла|-)

Отримати файл назва_віддаленого_файла і зберегти його як назва_файла на локальній машині.

Значенням параметра назва_файла також може бути іменований канал обробки даних.

Див. також "upload", "cat".

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

download-blocks

 download-blocks пристрій початок кінець (назва_файла|-) [unallocated:true|false]

Отримати модулі даних з адреси початок до адреси кінець з розділу диска (наприклад /dev/sda1) і зберегти їх до файла назва_файла у локальній машині.

Використання цього програмного інтерфейсу на форматах образів розріджених дисків, зокрема QCOW може призвести до великих заповнених нулями файлів, отриманих до основної системи.

Розмір модуля даних залежить від реалізації файлової системи. На файлових системах NTFS модулі даних називаються кластерами, а у ExtX вони називаються фрагментами.

Якщо для необов'язкового прапорця "unallocated" встановлено значення true (типовим значенням є false), буде видобуто лише нерозміщені блоки. Це корисно для виявлення прихованих даних або отримання вилучених файлів, модулі даних яких ще не перезаписано.

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "sleuthkit". Див. також "feature-available".

download-inode

 download-inode пристрій inode (назва_файла|-)

Отримати файл, заданий за допомогою inode, з розділу диска (наприклад /dev/sda1) і зберегти його із назвою назва_файла у локальній системі.

Для виконання цієї команди диск не обов'язково має бути змонтовано.

Команда здатна отримувати вилучені файли та файли недоступні системі.

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

Працездатність цієї команди залежить від можливості "sleuthkit". Див. також "feature-available".

download-offset

 download-offset назва_віддаленого_файла (назва_файла|-) відступ розмір

Отримати файл назва_віддаленого_файла і зберегти його як назва_файла на локальній машині.

Читання відбувається з файла назва_віддаленого_файла, розмір визначається параметром "розмір", читання розпочинається з позиції "відступ" (вказана область має перебувати у межах файла або пристрою).

Зауважте, що немає обмеження на обсяг даних, які може бути отримано за допомогою цього виклику, на відміну від команди "pread", і цей виклик завжди читає дані до кінця, якщо не станеться помилки.

Див. також "download", "pread".

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

drop-caches

 drop-caches що_скидати

This instructs the guest kernel to drop its page cache, and/or dentries and inode caches. The parameter "whattodrop" tells the kernel what precisely to drop, see https://linux-mm.org/Drop_Caches

Встановлення для "що_скидати" значення 3 призведе до скидання усього.

Це автоматично викликає sync(2) перед операцією, отже вивільняє максимальний обсяг пам'яті гостьової системи.

du

 du шлях

Ця команда викликає команду "du -s" для оцінки використання місця на диску для шляху "шлях".

"шлях" може бути адресою файла або каталогу. Якщо "шлях" є каталогом, оцінка включатиме дані для самого каталогу та усіх його підкаталогів (рекурсивно).

Результатом є оцінка розміру у кілобайтах (тобто у одиницях, які відповідають 1024 байтам).

e2fsck

 e2fsck пристрій [correct:true|false] [forceall:true|false]

Ця команда виконує перевірку файлової системи ext2/ext3 на пристрої "пристрій". Вона може приймати такі необов'язкові аргументи:

"correct"
Автоматично виправляти файлову систему. Використання цього параметра призведе до того, що e2fsck автоматично виправлятиме усі проблеми файлової системи, які може бути безпечно виправлено без втручання людини.

Цей параметр не можна використовувати одночасно із параметром "forceall".

"forceall"
Припускати відповідь «так» на усі питання; уможливлює неінтерактивне використання e2fsck.

Цей параметр не можна використовувати одночасно із параметром "correct".

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

e2fsck-f

 e2fsck-f пристрій

Ця команда виконує команду "e2fsck -p -f пристрій", тобто запускає засіб перевірки файлової системи ext2/ext3 для пристрою "пристрій" у неінтерактивному режимі (-p), навіть якщо файлову систему позначено як безпомилкову (-f).

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "e2fsck".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

echo-daemon

 echo-daemon 'слова ...'

Ця команда з'єднує список слів "слова", у якому окремі слова розділено пробілами, і повертає рядок-результат.

Ви можете скористатися цією командою для перевірки з'єднання із фоновою службою.

Див. також "ping-daemon".

egrep

 egrep формальний_вираз шлях

This calls the external egrep(1) program and returns the matching lines.

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "grep".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

egrepi

 egrepi формальний_вираз шлях

Викликає зовнішню програму "egrep -i" і повертає рядки-відповідники.

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "grep".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

equal

 equal файл1 файл2

Порівнює два файли, файл1 і файл2 і повертає true, якщо їхній вміст повністю ідентичний; якщо це не так, повертає false.

Для порівнювання використовується зовнішня програма cmp(1).

exists

 exists шлях

Ця команда повертає "true" тоді і лише тоді, коли існує файл, каталог (або будь-який інший об'єкт файлової системи) із вказаною назвою "шлях".

Див. також "is-file", "is-dir", "stat".

extlinux

 extlinux каталог

Встановлює завантажувач SYSLINUX на пристрій, змонтований до каталогу каталог. На відміну від команди "syslinux", якій потрібна файлова система FAT, ця команда може бути використана для файлових систем ext2/3/4 та btrfs.

Параметр каталог може бути точкою монтування або каталогом у точці монтування.

Крім того, вам слід позначити розділ як «активний» ("part-set-bootable"), і на першому секторі усього диска має бути встановлено MBR (наприклад, за допомогою "pwrite-device"). До складу пакунка SYSLINUX включено деякі з відповідних MBR. Щоб дізнатися більше, див. сторінку підручника extlinux(1).

Додатково налаштувати SYSLINUX можна за допомогою файла із назвою extlinux.conf у каталозі файлової системи каталог. Докладніше про це та вміст файла можна дізнатися зі сторінки підручника extlinux(1).

Див. також "syslinux".

Працездатність цієї команди залежить від можливості "extlinux". Див. також "feature-available".

f2fs-expand

 f2fs-expand пристрій

Розгортає файлову систему f2fs, щоб її розмір збігався із розміром базового пристрою.

Працездатність цієї команди залежить від можливості "f2fs". Див. також "feature-available".

fallocate

 fallocate шлях довжина

Ця команда отримує місце для файла (заповнене нульовими байтами) із назвою "шлях" і розміром "довжина" байтів. Якщо файл вже існує, його буде перезаписано.

Не слід плутати цю команду із специфічною для guestfish командою "alloc", яка отримує місце для файла у основній системі і долучає його як пристрій.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "fallocate64".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

fallocate64

 fallocate64 шлях довжина

Ця команда отримує місце для файла (заповнене нульовими байтами) із назвою "шлях" і розміром "довжина" байтів. Якщо файл вже існує, його буде перезаписано.

Зауважте, що ця команда отримує блоки на диску для файла. Щоб створити розріджений файл, скористайтеся "truncate-size".

Застаріла команда "fallocate" виконує те саме завдання, але через недогляд функція надає змогу використовувати лише 30-бітові довжини, що обмежує максимальний можливий розмір створених за допомогою цієї команди файлів 1 ГБ.

Не слід плутати цю команду із специфічними для guestfish командами "alloc" та "sparse", які створюють файл у основній системі і долучають його як пристрій.

feature-available

 feature-available 'групи ...'

Те саме, що і "available", але повертає простий результат у булевій формі true або false замість виклику виключення, якщо можливості не буде виявлено. Із іншими аспектами документації можна ознайомитися у розділі "available".

fgrep

 fgrep шаблон шлях

This calls the external fgrep(1) program and returns the matching lines.

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "grep".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

fgrepi

 fgrepi шаблон шлях

Викликає зовнішню програму "fgrep -i" і повертає рядки-відповідники.

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "grep".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

файл

 file шлях

Для визначення типу або вмісту файла використовується стандартна програма file(1).

Цей виклик також прозоро обробляє різні типи стиснутих файлів.

Команда, яку буде виконано, — це "file -zb шлях". Зокрема, слід зауважити, що до виведених даних не буде додано назву файла (параметр -b).

Виведені дані залежать від того, що виведе підлегла команда file(1), їх може бути змінено у майбутньому у спосіб, який залишається поза нашим контролем. Іншими словами, ABI щодо виведених даних не гарантовано.

Див. також file(1), "vfs-type", "lstat", "is-file", "is-blockdev" (тощо), "is-zero".

file-architecture

 file-architecture назва_файла

Визначає архітектуру виконуваного файла назва_файла і повертає її значення, якщо воно визначене у програмі.

Архітектурами, визначеними у поточній версії є:

"aarch64"
64-бітовий ARM.
"arm"
32-бітовий ARM.
"i386"
Цей рядок буде повернуто для всіх виконуваних файлів для 32-бітових процесорів i386, i486, i586, i686, незалежно від точного значення версії процесора, визначеного для виконуваного файла.
"ia64"
Intel Itanium.
"ppc"
32-бітовий Power PC.
"ppc64"
64-бітовий Power PC (зворотний порядок байтів).
"ppc64le"
64-бітовий Power PC (прямий порядок байтів).
"riscv32"
"riscv64"
"riscv128"
32-, 64- і 128- бітові різновиди RISC-V.
"s390"
31-бітовий IBM S/390.
"s390x"
64-бітовий IBM S/390.
"sparc"
32-бітовий SPARC.
"sparc64"
64-бітовий SPARC V9 або новіша версія.
"x86_64"
64-бітовий x86-64.

У майбутніх версіях Libguestfs може повертати і інші рядки назв архітектур.

Функція працює принаймні для таких типів файлів:

  • багатьох типів виконуваних файлів Un*x та Linux
  • багатьох типів бібліотек спільного використання Un*x та Linux
  • виконуваних файлів Windows Win32 та Win64
  • DLL Windows Win32 і Win64

    виконувані файли та DLL Win32 повертають "i386".

    виконувані файли та DLL Win64 повертають "x86_64".

  • модулів ядра Linux
  • образів нового стилю initrd Linux
  • деяких ядер vmlinuz Linux для архітектур, відмінних від x86

Що не можна зробити у поточній версії:

  • статичні бібліотеки (libfoo.a)
  • initrd Linux у старому стилі, зі стиснутою файловою системою ext2 (RHEL 3)
  • ядра vmlinuz Linux x86

    Образи vmlinuz архітектури x86 (формат bzImage) складаються із суміші 16-бітового, 32-бітового і стисненого коду. Їх дуже важко розпаковувати. Якщо ви хочете визначити архітектуру ядра, скористайтеся архітектурою пов'язаного initrd або модулів ядра.

filesize

 filesize файл

Ця команда повертає розмір файла файл у байтах.

Щоб отримати інші статистичні дані щодо файла, скористайтеся "stat", "lstat", "is-dir", "is-file" тощо. Щоб отримати розмір блокового пристрою, скористайтеся "blockdev-getsize64".

filesystem-available

 filesystem-available файлова_система

Перевірити, чи передбачено у libguestfs підтримку вказаної за назвою файлової системи. Аргумент "файлова_система" є назвою файлової системи, наприклад, "ext3".

Перед використанням цієї команди вам слід викликати "/launch".

Головним чином корисне для перевірки того, що підтримки не передбачено. Те, що команда повертає true, ще не означає, що певну файлову систему може бути створено чи змонтовано, оскільки помилки можуть траплятися через інші причини, зокрема невідповідність версії файлової системи, несумісність можливостей або недоступність належного засобу mkfs.<файлова_система>.

Див. також "available", "feature-available", "AVAILABILITY" in guestfs(3).

filesystem-walk

 filesystem-walk пристрій

Пройтися внутрішньою структурою розділу диска (наприклад /dev/sda1) з метою визначення і повернення списку усіх файлів та каталогів, які на ньому зберігаються.

Для виконання цієї команди монтування розділу диска не є обов'язковим.

Буде повернуто усі записи у файловій системі. Ця функція може виводити список вилучених або недоступних файлів. Записи не упорядковуються.

Структура "tsk_dirent" містить вказані нижче поля.

"tsk_inode"
Номер вузла у файловій системі. Може дорівнювати 0, якщо вузол було вилучено.
"tsk_type"
Базові дані щодо типу файлів. Докладний список значень наведено нижче.
"tsk_size"
Розмір файла у байтах. Може мати значення "-1", якщо вузол файла було вилучено.
"tsk_name"
Шлях до файла відносно його каталогу.
"tsk_flags"
Бітове поле, яке містить додаткові дані щодо запису. Є результатом застосування логічного АБО до таких значень:
0x0001
Якщо встановлено значення 1, файл розміщено у файловій системі, і файл є видимим. Якщо ні, файл було вилучено. За певних обставин функцією "download_inode" можна скористатися для відновлення вилучених файлів.
0x0002
У деяких файлових системах, зокрема NTFS та Ext2 і новіших, назву файла відокремлено від структури метаданих. Цей біт встановлюється у значення 1, якщо назва файла перебуває у нерозміщеному стані, а структура даних — у розміщеному. Це, загалом кажучи, неявно вказує на те, що метадані було повторно використано для нового файла. Тому дані щодо типу файла, розміру файла, часових позначок, кількості посилань та призначення символічного посилання можуть не відповідати даним початкового вилученого запису.
0x0004
Цей біт встановлюється у значення 1, якщо файл було стиснуто з використанням вбудованої підтримки стискання у файловій системі (NTFS). Програмний інтерфейс не може визначити застосований рівень стискання.
"tsk_atime_sec"
"tsk_atime_nsec"
"tsk_mtime_sec"
"tsk_mtime_nsec"
"tsk_ctime_sec"
"tsk_ctime_nsec"
"tsk_crtime_sec"
"tsk_crtime_nsec"
Час доступу, внесення змін, останньої зміни стану та часу створення, відповідно, у форматі Unix, визначений у секундах і наносекундах.
"tsk_nlink"
Кількість назв файлів, які вказують на цей запис.
"tsk_link"
Якщо записом є символічне посилання, у цьому полі міститиметься шлях до файла призначення.

Поле "tsk_type" міститиме один із таких символів:

'b'
Блоковий особливий
'c'
Символьний особливий
'd'
Каталог
'f'
FIFO (іменований канал)
'l'
Символічне посилання
'r'
Звичайний файл
's'
Сокет
'h'
Тіньовий inode (Solaris)
'w'
Витерти inode (BSD)
'u'
Невідомий тип файла

Працездатність цієї команди залежить від можливості "libtsk". Див. також "feature-available".

fill

 fill c кількість шлях

Ця команда створює новий файл із назвою "шлях". Спочатку файл буде заповнено вісімковими значеннями до довжини "кількість". Вісімкове значення задається параметром "c", де "c" має бути числом у діапазоні "[0..255]".

Для заповнення файла нульовими байтами (розріджено) набагато ефективнішим є використання "truncate-size". Для створення файла, заповненого повторюваними вказаними послідовностями байтів, скористайтеся командою "fill-pattern".

fill-dir

 fill-dir каталог число

Ця корисна для тестування файлових систем функція створює "число" порожніх файлів у каталозі "каталог" із назвами від 00000000 до "число-1" (тобто кожна назва файла складається з 8 цифр, які доповнено нулями).

fill-pattern

 fill-pattern взірець кількість шлях

Ця функція подібна до "fill", але створює файл довжини "кількість", заповнений повторюваними наборами байтів "взірець". Якщо потрібно, взірець буде обрізано так, щоб довжина файла складала точно "кількість" байтів.

find

 find каталог

Ця команда виводить список усіх файлів і каталогів, рекурсивно, починаючи з каталогу каталог. В основному, еквівалентна команді оболонки "find каталог -print", але виведені дані буде дещо оброблено. Опис обробки наведено нижче.

Ця команда повертає список рядків без будь-якого префікса. Отже, якщо структура каталогів є такою:

 /tmp/a
 /tmp/b
 /tmp/c/d

повернутий "find" /tmp список складатиметься з 4 елементів:

 a
 b
 c
 c/d

Якщо каталог не є каталогом, ця команда повертає помилку.

Список результатів буде впорядковано.

find0

 find0 каталог (файли|-)

Ця команда виводить список усіх файлів і каталогів, рекурсивно, починаючи з каталогу каталог, записуючи отриманий список до зовнішнього файла із назвою файли.

Ця команда працює так само, як "find", за такими виключеннями:

  • Список результат записується до зовнішнього файла.
  • Записи (назви файлів) у результаті буде відокремлено символами "\0". Див. параметр find(1) -print0.
  • Список результатів не буде впорядковано.

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

find-inode

 find-inode пристрій inode

Шукає усі записи, пов'язані із заданим inode.

Для кожного запису буде повернуто структуру "tsk_dirent". Див. "filesystem_walk", щоб дізнатися більше про структури "tsk_dirent".

Працездатність цієї команди залежить від можливості "libtsk". Див. також "feature-available".

findfs-label

 findfs-label мітка

Ця команда виконує пошук у файлових системах і повертає ту з них, яка має вказану мітку. Якщо таких систем не буде знайдено, буде повернуто повідомлення про помилку.

Для визначення мітки файлової системи скористайтеся "vfs-label".

findfs-uuid

 findfs-uuid uuid

Ця команда виконує пошук у файлових системах і повертає ту з них, яка має вказаний UUID. Якщо таких систем не буде знайдено, буде повернуто повідомлення про помилку.

Для визначення UUID файлової системи скористайтеся "vfs-uuid".

fsck

 fsck тип_файлової_системи пристрій

Виконує перевірку файлової системи (fsck) на пристрої "пристрій", де дані зберігаються у файловій системі типу "тип_файлової_системи".

Повернуте ціле число є станом. Зі списком кодів стану "fsck" можна ознайомитися у документації до fsck(8).

Нотатки:

  • Якщо кодів стану декілька, виводиться їхня сума.
  • Ненульовий повернутий код може означати «успіх», наприклад, якщо помилки у файловій системі було виправлено.
  • Підтримки перевірки або відновлення томів NTFS не передбачено (у linux-ntfs).

Ця команда повністю еквівалентна запуску "fsck -a -t тип_файлової_системи пристрій".

fstrim

 fstrim точка_монтування [offset:N] [length:N] [minimumfreeextent:N]

Обрізати вільне місце на файловій системі, змонтованій до точки монтування "точка_монтування". Файлову систему має бути змонтовано для читання і запису.

Вміст файлової системи змінено не буде, але усе вільне місце на ній буде «обрізано», тобто, якщо розглядати пристрій основної системи, повернуто до пристрою, що зробить образ диска розрідженішим і уможливить повторне використання невикористаного простору у файлах qcow2 тощо.

Ця операція потребує підтримки у libguestfs, змонтованій файловій системі, файловій системі основної системи, qemu та ядрі основної системи. Якщо цієї підтримки немає, операція призведе до помилки або навіть виконуватиметься.

Якщо у драйвері віртуальної файлової системи ядра не передбачено обрізання, цей виклик завершиться повідомленням про помилку із номером помилки "ENOTSUP". У поточній версії таке трапляється під час спроб обрізання файлових систем FAT.

Див. також "zero-free-space". Це дещо інша операція, яка занулює вільне місце у файловій системі. Ви можете викликати "fstrim" замість команди або після команди "zero-free-space".

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "fstrim". Див. також "feature-available".

get-append

 get-append

Повертає додаткові параметри ядра, які було додано до командного рядка ядра базової системи libguestfs.

Якщо повернуто "NULL", до командного рядка не додавалося параметрів.

get-attach-method

 get-attach-method

Повертає назву поточного модуля.

Див. "set-backend" та "МОДУЛЬ" in guestfs(3).

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "get-backend".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

get-autosync

 get-autosync

Отримати значення прапорця автоматичної синхронізації.

get-backend

 get-backend

Повертає назву поточного модуля.

Ця властивість дескриптора раніше називалася «метод долучення».

Див. "set-backend" та "МОДУЛЬ" in guestfs(3).

get-backend-setting

 get-backend-setting назва

Знайти рядок параметрів модуля обробки, який або дорівнює "назва", або починається із запису "назва=". Якщо знайдено рядок "назва", буде повернуто рядок "1". Якщо знайдено рядок "назва=", буде повернуто частину рядка після знаку рівності (може бути повернуто порожній рядок).

Якщо відповідного параметра не знайдено, ця функція повертає повідомлення про помилку. У такому випадку для номера помилки (див. "last-errno") буде встановлено значення "ESRCH".

Див. "МОДУЛЬ" in guestfs(3), "ПАРАМЕТРИ МОДУЛЯ" in guestfs(3).

get-backend-settings

 get-backend-settings

Повертає поточні параметри модуля.

Цей виклик повертає рядки параметрів усіх модулів. Якщо вам потрібен лише один параметр модуля, скористайтеся командою "get-backend-setting".

Див. "МОДУЛЬ" in guestfs(3), "ПАРАМЕТРИ МОДУЛЯ" in guestfs(3).

get-cachedir

 get-cachedir

Отримати назву каталогу, який використовується дескриптором для зберігання кешу базової системи.

get-direct

 get-direct

Повертає значення прапорця безпосередньої роботи із базовою системою.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "internal-get-console-socket".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

get-e2attrs

 get-e2attrs файл

Ця команда повертає атрибути файла, пов'язані із назвою файл.

Атрибути є пов'язаним зі кожним записом inode набором бітів, який впливає на поведінку файла. Атрибути повертаються як рядок літер (описано нижче). Рядок може бути порожнім, що означає, що ніяких атрибутів для файла не встановлено.

Ці атрибути є, лише якщо файл зберігається у файловій системі ext2/3/4. Використання цієї команди для інших типів файлових систем призведе до помилки.

У поточній версії передбачено такі повернуті символи (атрибути файла):

'A'
Під час доступу до файла його atime не змінюється.
'a'
До файла можна лише дописувати дані.
'c'
Файл стиснено на диску.
'D'
(Лише для каталогів.) Зміни до цього каталогу синхронно записуються на диск.
'd'
Файл не є кандидатом на резервне копіювання (див. dump(8)).
'E'
Файл стиснуто з помилками.
'e'
Файл використовує розширення.
'h'
Файл зберігає свої блоки у одиницях розміру блоків файлової системи замість секторів.
'I'
(Лише каталоги.) У каталозі використовуються хешовані дерева ієрархії.
'i'
Цей файл є незмінним. До нього не можна вносити зміни, його не можна вилучати або перейменовувати. На цей файл не можна створювати посилання.
'j'
Файл входить до журналу даних.
's'
Після вилучення файла усі його блоки буде перезаписано нулями.
'S'
Зміни до цього файла синхронно записуються на диск.
'T'
(Лише каталоги.) Це підказка засобу розміщення у блоках щодо того, що підкаталоги, які містяться у цьому каталозі слід розподілити між блоками. Якщо немає, засіб розподілу за блоками спробує згрупувати підкаталоги.
't'
Для файлів вимикає об'єднання «хвостів». (Не використовується у основних реалізаціях ext2.)
'u'
Коли файл вилучається, його блоки буде збережено, уможливлюючи відновлення вилученого файла.
'X'
Можна отримувати доступ до необробленого вмісту стисненого файла.
'Z'
Для стисненого файла встановлено прапорець незавершеної зміни.

У майбутніх версіях може бути додано інші атрибути файлів. Тип встановлюваних атрибутів залежить від типу файла. Докладний опис можна знайти на сторінці підручника щодо chattr(1).

Див. також "set-e2attrs".

Не слід плутати ці атрибути із розширеними атрибутами (див. "getxattr").

get-e2generation

 get-e2generation файл

Повертає генерацію файла ext2 для файла. Генерація (яку зазвичай називають «версією») є числом, пов'язаним із inode. Найпоширенішою областю використання є сервери NFS.

Генерація є характерною особливістю файлової системи ext2/3/4. Використання цієї команди для інших типів файлових систем призведе до помилки.

Див. "set-e2generation".

get-e2label

 get-e2label пристрій

Ця команда повертає мітку файлової системи ext2/3/4 для файлової системи на пристрої "пристрій".

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "vfs-label".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

get-e2uuid

 get-e2uuid пристрій

Ця команда повертає UUID файлової системи ext2/3/4 для файлової системи на пристрої "пристрій".

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "vfs-uuid".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

get-hv

 get-hv

Повертає назву виконуваного файла поточного гіпервізору.

Це значення ніколи не дорівнює NULL. Якщо його ще не встановлено, команда поверне типову назву виконуваного файла qemu.

get-identifier

 get-identifier

Отримати ідентифікатор дескриптора. Див. "set-identifier".

get-libvirt-requested-credential-challenge

 get-libvirt-requested-credential-challenge індекс

Виконати перевірку (за даними libvirt) реєстраційних даних із номером "індекс". Якщо у libvirt не буде знайдено відповідника для перевірки, команда поверне порожній рядок, "".

Документацію і приклад коду наведено у розділі "РОЗПІЗНАВАННЯ ЗА ДОПОМОГОЮ LIBVIRT" in guestfs(3).

get-libvirt-requested-credential-defresult

 get-libvirt-requested-credential-defresult індекс

Отримати типовий результат (за даними libvirt) реєстраційних даних із номером "індекс". Якщо у libvirt не буде знайдено відповідника для типового результату, команда поверне порожній рядок, "".

Документацію і приклад коду наведено у розділі "РОЗПІЗНАВАННЯ ЗА ДОПОМОГОЮ LIBVIRT" in guestfs(3).

get-libvirt-requested-credential-prompt

 get-libvirt-requested-credential-prompt індекс

Отримати запит (за даними libvirt) реєстраційних даних із номером "індекс". Якщо у libvirt не буде знайдено відповідника для запиту, команда поверне порожній рядок, "".

Документацію і приклад коду наведено у розділі "РОЗПІЗНАВАННЯ ЗА ДОПОМОГОЮ LIBVIRT" in guestfs(3).

get-libvirt-requested-credentials

 get-libvirt-requested-credentials

Цю команду слід викликати під час зворотного виклику подій для подій типу "GUESTFS_EVENT_LIBVIRT_AUTH".

Повертає список реєстраційних даних, запит на які надсилає libvirt. Можливі значення є підмножиною рядків, які надаються, коли ви викликаєте "set-libvirt-supported-credentials".

Документацію і приклад коду наведено у розділі "РОЗПІЗНАВАННЯ ЗА ДОПОМОГОЮ LIBVIRT" in guestfs(3).

get-memsize

 get-memsize

Отримує розмір у мегабайтах отриманої для гіпервізору пам'яті.

Якщо для цього дескриптора не було викликано "set-memsize" і якщо не було встановлено "LIBGUESTFS_MEMSIZE", якщо команда повертає типове вкомпільоване значення розміру пам'яті (memsize).

Докладніший опис архітектури libguestfs наведено у підручнику з guestfs(3).

get-network

 get-network

Повертає значення прапорця вмикання мережі.

get-path

 get-path

Повертає поточний шлях пошуку.

Це значення ніколи не дорівнює NULL. Якщо його ще не встановлено, команда поверне типовий вміст змінної середовища PATH.

get-pgroup

 get-pgroup

Повертає прапорець групи процесів.

get-pid

PID

 get-pid

Повертає ідентифікатор гіпервізору. Якщо жодного гіпервізору не запущено, команда поверне повідомлення про помилку.

Це внутрішній виклик, який використовується для діагностики і тестування.

get-program

 get-program

Отримати назву програми. Див. "set-program".

get-qemu

 get-qemu

Повертає назву поточного виконуваного файла гіпервізору (типово, qemu).

Це значення ніколи не дорівнює NULL. Якщо його ще не встановлено, команда поверне типову назву виконуваного файла qemu.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "get-hv".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

get-recovery-proc

 get-recovery-proc

Повертає прапорець вмикання відновлення процесу.

get-selinux

 get-selinux

Повертає поточне значення прапорця selinux, який передається базовій системі під час її завантаження. Див. "set-selinux".

Докладніший опис архітектури libguestfs наведено у підручнику з guestfs(3).

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "selinux-relabel".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

get-smp

 get-smp

Повертає кількість віртуальних процесорів, які пов'язано із базовою системою.

get-sockdir

 get-sockdir

Отримати назву каталогу, який використовується дескриптором для зберігання файлів тимчасових сокетів.

This is different from "get-tmpdir", as we need shorter paths for sockets (due to the limited buffers of filenames for UNIX sockets), and "get-tmpdir" may be too long for them.

Типове значення керується змінною середовища "XDG_RUNTIME_DIR": якщо встановлено "XDG_RUNTIME_DIR", її значення буде типовим. Якщо ж значення змінної не встановлено, типовим значенням буде /tmp.

get-tmpdir

 get-tmpdir

Отримати назву каталогу, який використовується дескриптором для зберігання тимчасових файлів.

get-trace

 get-trace

Повертає прапорець трасування команди.

get-umask

 get-umask

Повертає поточне значення umask. Типовим значенням umask є 022, якщо інше значення не було встановлено за допомогою виклику "umask".

get-verbose

 get-verbose

Повертає значення прапорця докладності повідомлень.

getcon

 getcon

Ця команда отримує контекст безпеки SELinux фонової служби.

Див. документацію з SELINUX у guestfs(3) та "setcon"

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "selinux-relabel".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

Працездатність цієї команди залежить від можливості "selinux". Див. також "feature-available".

getxattr

 getxattr шлях назва

Отримати окремий розширений атрибут з файла "шлях" за назвою "назва". У цьому виклику виконується перехід за символічними посиланнями. Якщо ви хочете визначити розширений атрибут для самого символічного посилання, скористайтеся "lgetxattr".

Зазвичай, краще отримати усі розширені атрибути файла одним викликом "getxattrs". Втім, у реалізації деяких файлових систем у Linux є вади, які заважають отримання повного списку атрибутів. Для таких файлових систем (найпоширенішою з яких є ntfs-3g) вам доведеться визначити назви потрібних вам розширених атрибутів і викликати цю функцію.

Значеннями розширених атрибутів є блоки двійкових даних. Якщо розширеного атрибута із назвою "назва" не існує, командою буде повернуто повідомлення про помилку.

Див. також "getxattrs", "lgetxattr", attr(5).

Працездатність цієї команди залежить від можливості "linuxxattrs". Див. також "feature-available".

getxattrs

 getxattrs шлях

Ця команда виводить список розширених атрибутів файла або каталогу "шлях".

На рівні системи, ця команда є поєднанням викликів listxattr(2) і getxattr(2).

Див. також "lgetxattrs", attr(5).

Працездатність цієї команди залежить від можливості "linuxxattrs". Див. також "feature-available".

glob-expand

glob-expand-opts

 glob-expand шаблон [directoryslash:true|false]

Ця команда виконує пошук усіх назв шляхів, які збігаються із шаблоном "шаблон", відповідно до правил розгортання замінників, які використовуються командною оболонкою.

Якщо шляхів знайдено не буде, команда поверне порожній список (не помилку).

Це обгортка навколо функції C glob(3) із прапорцями "GLOB_MARK|GLOB_BRACE". Див. відповідну сторінку підручника, щоб дізнатися більше.

Аргумент "directoryslash" визначає, чи слід використовувати прапорець "GLOB_MARK" для glob(3). Типовим його значенням є true (використовувати). Його можна явним чином вимкнути, щоб команда не повертала завершальних символів похилої риски у назвах каталогів.

Зауважте, що схожої команди для розгортання назв пристроїв (наприклад /dev/sd*) не існує. З цією метою слід використовувати "list-devices", "list-partitions" тощо.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

grep

grep-opts

 grep формальний_вираз шлях [extended:true|false] [fixed:true|false] [insensitive:true|false] [compressed:true|false]

This calls the external grep(1) program and returns the matching lines.

Необов'язковими прапорцями є такі:

"extended"
Використовувати розширені формальні вирази. Те саме, що використання прапорця -E.
"fixed"
Фіксована відповідність (не використовувати формальні вирази). Те саме, що використання прапорця -F.
"insensitive"
Не враховувати під час пошуку регістр символів. Те саме, що використання прапорця -i.
"compressed"
Use zgrep(1) instead of grep(1). This allows the input to be compress- or gzip-compressed.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

grepi

 grepi формальний_вираз шлях

Ця функція викликає зовнішню програму "grep -i" і повертає відповідні рядки.

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "grep".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

grub-install

 grub-install корінь пристрій

Ця команда встановлює GRUB 1 (Grand Unified Bootloader) на "пристрій" із кореневим каталогом "корінь".

Нотатки:

  • У програмному інтерфейсі поточної версії немає способів встановити завантажувач grub2, який використовується у більшості сучасних гостьових систем Linux. Команду grub2 можна запустити з самої гостьової системи, втім, у такого способу запуску є певні проблеми, описані у розділі "ЗАПУСК КОМАНД" in guestfs(3).
  • This uses grub-install(8) from the host. Unfortunately grub is not always compatible with itself, so this only works in rather narrow circumstances. Careful testing with each guest version is advisable.
  • Якщо grub-install повідомляє про помилку «No suitable drive was found in the generated device map.», ймовірно, вам слід спочатку створити файл /boot/grub/device.map, який міститиме прив'язки назв пристроїв grub до назв пристроїв Linux. Зазвичай, достатньо створити файл з таким вмістом:

     (hd0) /dev/vda
        

    замінивши /dev/vda на назву пристрою для встановлення.

Працездатність цієї команди залежить від можливості "grub". Див. також "feature-available".

 head шлях

Ця команда повертає перші 10 рядків файла як список рядків.

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

head-n

 head-n к-ть_рядків шлях

Якщо параметр "к-ть_рядків" є додатним числом, повертає перші "к-ть_рядків" рядків з файла "шлях".

Якщо значенням параметра "к-ть_рядків" є від'ємне число, команда повертає усі рядки з файла "шлях", окрім останніх "к-ть_рядків" рядків.

Якщо значенням параметра "к-ть_рядків" є нуль, команда повертає порожній список.

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

hexdump

 hexdump шлях

Ця команда виконує "hexdump -C" для вказаного файла "шлях". Результатом виконання є зручний для читання канонічний шістнадцятковий дамп файла.

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

hivex-close

 hivex-close

Закрити поточний елемент керування hivex.

Обгортка до команди hivex(3) із тією ж самою назвою.

Працездатність цієї команди залежить від можливості "hivex". Див. також "feature-available".

hivex-commit

 hivex-commit назва_файла

Вносить (записує) зміни до рою.

Якщо значенням необов'язкового параметра назва_файла є null, зміни буде записано до того самого рою, який було відкрито. Якщо значенням не є null, зміни буде записано до вказаного альтернативного файла, а початковий рій залишиться незмінним.

Обгортка до команди hivex(3) із тією ж самою назвою.

Працездатність цієї команди залежить від можливості "hivex". Див. також "feature-available".

hivex-node-add-child

 hivex-node-add-child батьківський_запис назва

Додати дочірній вузол до із назвою "назва" до батьківського запису "батьківський_запис".

Обгортка до команди hivex(3) із тією ж самою назвою.

Працездатність цієї команди залежить від можливості "hivex". Див. також "feature-available".

hivex-node-children

 hivex-node-children вузол

Повертає список вузлів, які є підключами вузла "вузол".

Обгортка до команди hivex(3) із тією ж самою назвою.

Працездатність цієї команди залежить від можливості "hivex". Див. також "feature-available".

hivex-node-delete-child

 hivex-node-delete-child вузол

Вилучаєe "вузол", якщо потрібно, рекурсивно.

Обгортка до команди hivex(3) із тією ж самою назвою.

Працездатність цієї команди залежить від можливості "hivex". Див. також "feature-available".

hivex-node-get-child

 hivex-node-get-child nodeh назва

Повертає дочірній вузол із назвою "назва" для вузла "вузол", якщо такий існує. Може повернути 0, що означатиме, що вузла із вказаною назвою не існує.

Обгортка до команди hivex(3) із тією ж самою назвою.

Працездатність цієї команди залежить від можливості "hivex". Див. також "feature-available".

hivex-node-get-value

 hivex-node-get-value nodeh ключ

Повертає значення, пов'язане із вузлом "вузол", яке має назву "ключ", якщо таке існує. Може повернути 0, що означатиме, що ключа із вказаною назвою не існує.

Обгортка до команди hivex(3) із тією ж самою назвою.

Працездатність цієї команди залежить від можливості "hivex". Див. також "feature-available".

hivex-node-name

 hivex-node-name nodeh

Повернути назву "nodeh".

Обгортка до команди hivex(3) із тією ж самою назвою.

Працездатність цієї команди залежить від можливості "hivex". Див. також "feature-available".

hivex-node-parent

 hivex-node-parent nodeh

Повернути батьківський вузол "nodeh".

Обгортка до команди hivex(3) із тією ж самою назвою.

Працездатність цієї команди залежить від можливості "hivex". Див. також "feature-available".

hivex-node-set-value

 hivex-node-set-value вузол ключ тип значення

Встановлює або замінює окреме значення у вузлі "вузол". Значенням аргументу "ключ" є назва, "тип" — тип, а "значення" — дані.

Обгортка до команди hivex(3) із тією ж самою назвою.

Працездатність цієї команди залежить від можливості "hivex". Див. також "feature-available".

hivex-node-values

 hivex-node-values nodeh

Повертає масив кортежів (ключ, тип даних, дані), пов'язаний із "nodeh".

Обгортка до команди hivex(3) із тією ж самою назвою.

Працездатність цієї команди залежить від можливості "hivex". Див. також "feature-available".

hivex-open

 hivex-open назва_файла [verbose:true|false] [debug:true|false] [write:true|false] [unsafe:true|false]

Відкриває файл рою реєстру Windows із назвою назва_файла. Якщо вже існував дескриптор hivex, пов'язаний із цим сеансом guestfs, його буде закрито.

Обгортка до команди hivex(3) із тією ж самою назвою.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "hivex". Див. також "feature-available".

hivex-root

 hivex-root

Повернути кореневий вузол гілки.

Обгортка до команди hivex(3) із тією ж самою назвою.

Працездатність цієї команди залежить від можливості "hivex". Див. також "feature-available".

hivex-value-key

 hivex-value-key valueh

Повертає ключ (назву) поля для кортежу (ключ, тип даних, дані).

Обгортка до команди hivex(3) із тією ж самою назвою.

Працездатність цієї команди залежить від можливості "hivex". Див. також "feature-available".

hivex-value-string

 hivex-value-string значення

Ця команда викликає "hivex-value-value" (яка повертає поле даних на основі кортежу значень hivex). Далі, припускається, що вмістом поля є рядок UTF-16LE, який перетворюється на рядок UTF-8 (або, якщо це неможливо, команда повертає повідомлення про помилку).

Команда корисна для читання рядків з реєстру Windows. Втім, вона працює нестабільно, оскільки реєстр не є строго типізованим, а поля можуть містити довільні або неочікувані дані.

Працездатність цієї команди залежить від можливості "hivex". Див. також "feature-available".

hivex-value-type

 hivex-value-type valueh

Повертає значення поля типу даних для кортежу (ключ, тип даних, дані).

Обгортка до команди hivex(3) із тією ж самою назвою.

Працездатність цієї команди залежить від можливості "hivex". Див. також "feature-available".

hivex-value-utf8

 hivex-value-utf8 valueh

Ця команда викликає "hivex-value-value" (яка повертає поле даних на основі кортежу значень hivex). Далі, припускається, що вмістом поля є рядок UTF-16LE, який перетворюється на рядок UTF-8 (або, якщо це неможливо, команда повертає повідомлення про помилку).

Команда корисна для читання рядків з реєстру Windows. Втім, вона працює нестабільно, оскільки реєстр не є строго типізованим, а поля можуть містити довільні або неочікувані дані.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "hivex-value-string".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

Працездатність цієї команди залежить від можливості "hivex". Див. також "feature-available".

hivex-value-value

 hivex-value-value valueh

Повертає значення поля даних для кортежу (ключ, тип даних, дані).

Обгортка до команди hivex(3) із тією ж самою назвою.

Див. також "hivex-value-utf8".

Працездатність цієї команди залежить від можливості "hivex". Див. також "feature-available".

initrd-cat

 initrd-cat шлях_initrd назва_файла

Ця команда розпаковує файл назва_файла з файла initrd із назвою шлях_initrd. Назву файла слід вказувати без початкового символу /.

Наприклад, у guestfish ви можете скористатися такою командою для вивчення скрипту завантаження (зазвичай, він має назву /init), який міститься у initrd Linux або образі initramfs:

 initrd-cat /boot/initrd-<версія>.img init

Див. також "initrd-list".

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

initrd-list

 initrd-list шлях

Ця команда виводить список файлів, які містяться у initrd.

Записи у списку буде виведено без початкового символу /. Список буде упорядковано за появою файлів (не обов'язково за абеткою). Назви каталогів буде показано у списку як окремі записи.

У старих ядрах Linux (2.4 і старіших) як initrd використовується стиснена файлова система ext2. У нашій команді передбачено підтримку лише новішого формату initramfs (стиснених файлів cpio).

inotify-add-watch

 inotify-add-watch шлях маска

Спостерігати для запису "шлях" за появою подій зі списку "маска".

Зауважте, що якщо запис "шлях" є каталогом, спостереження вестиметься і за подіями у каталозі, але не виконуватиметься рекурсивно (у підкаталогах).

Зауваження для викликів з-поза C та з-поза Linux: події inotify визначено у ABI ядра Linux. Список наведено у /usr/include/sys/inotify.h.

Працездатність цієї команди залежить від можливості "inotify". Див. також "feature-available".

inotify-close

 inotify-close

Ця команда закриває дескриптор inotify, який раніше було відкрито inotify_init. Команда вилучає усі спостереження, викидає усі події з черги і скасовує надання пам'яті для усіх ресурсів.

Працездатність цієї команди залежить від можливості "inotify". Див. також "feature-available".

inotify-files

 inotify-files

Ця функція є корисною обгорткою навколо "inotify-read", яка просто повертає список назв шляхів об'єктів, які було оброблено touch. Список назв шляхів буде упорядковано, дублікати записів буде вилучено.

Працездатність цієї команди залежить від можливості "inotify". Див. також "feature-available".

inotify-init

 inotify-init макс_подій

Ця команда створює дескриптор inotify. Підсистемою inotify можна скористатися для отримання сповіщень щодо подій, які відбуваються із об'єктами у файловій системі гостьової операційної системи.

Значенням параметра "макс_подій" є максимальна кількість подій, які може бути додано до черги між викликами "inotify-read" або "inotify-files". Якщо буде передано значення 0, буде використано типове значення для ядра (або раніше встановлене значення). Для Linux 2.6.29 типовим значенням є 16384 подій. Якщо обмеження буде перевищено, ядро просто відкидатиме події, але записуватиме повідомлення щодо факту відкидання, встановлюючи прапорець "IN_Q_OVERFLOW" у списку повернутої структури (див. "inotify-read").

Перш ніж буде створено якесь повідомлення про подію, вам слід додати певні спостереження до внутрішнього списку спостережень. Див. "inotify-add-watch" та "inotify-rm-watch".

Записи подій з черги мають періодично читатися викликом "inotify-read" (або "inotify-files", який є корисною обгорткою навколо "inotify-read"). Якщо записи подій не читатимуться достатньо часто, внутрішню чергу записів може бути переповнено.

Після використання дескриптор слід закрити викликом "inotify-close". У процесі закриття буде автоматично вилучено усі спостереження.

Огляд інтерфейсу inotify, який відкриває ядро Linux, можна знайти на сторінці підручника inotify(7). Саме цей інтерфейс, грубо кажучи, ми і відкриваємо за допомогою libguestfs. Зауважте, що для кожного екземпляра libguestfs відкривається один загальний дескриптор inotify.

Працездатність цієї команди залежить від можливості "inotify". Див. також "feature-available".

inotify-read

 inotify-read

Повертає повну чергу подій, які трапилися з моменту попереднього виклику читання черги.

Якщо подій не траплялося, повертає порожній список.

Зауваження: щоб переконатися, що усі записи подій було прочитано, вам слід повторно викликати цю функцію, аж доки не буде повернуто порожній список. Причиною є те, що виклик читає записи подій до досягнення максимального розміру черги повідомлень appliance-to-host і лишає решту подій у черзі.

Працездатність цієї команди залежить від можливості "inotify". Див. також "feature-available".

inotify-rm-watch

 inotify-rm-watch wd

Вилучити раніше визначене спостереження inotify. Див. "inotify-add-watch".

Працездатність цієї команди залежить від можливості "inotify". Див. також "feature-available".

inspect-get-arch

 inspect-get-arch корінь

Повертає архітектуру інспектованої операційної системи. Список можливих повернутих значень можна знайти у описі "file-architecture".

Якщо архітектуру визначити не вдасться, буде повернуто рядок "unknown".

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3).

inspect-get-distro

 inspect-get-distro корінь

Ця команда повертає дистрибутив інспектованої операційної системи.

У поточній версії визначено такі дистрибутиви:

"alpinelinux"
Alpine Linux.
"altlinux"
ALT Linux.
"archlinux"
Arch Linux.
"buildroot"
Дистрибутив, що походить від buildroot, але не той, який ми можемо окремо визначити.
"centos"
CentOS.
"cirros"
Cirros.
"coreos"
CoreOS.
"debian"
Debian.
"fedora"
Fedora.
"freebsd"
FreeBSD.
"freedos"
FreeDOS.
"frugalware"
Frugalware.
"gentoo"
Gentoo.
"kalilinux"
Kali Linux.
"linuxmint"
Linux Mint.
"mageia"
Mageia.
"mandriva"
Mandriva.
"meego"
MeeGo.
"msdos"
Microsoft DOS.
"neokylin"
NeoKylin.
"netbsd"
NetBSD.
"openbsd"
OpenBSD.
"openmandriva"
OpenMandriva Lx.
"opensuse"
OpenSUSE.
"oraclelinux"
Oracle Linux.
"pardus"
Pardus.
"pldlinux"
PLD Linux.
"redhat-based"
Дистрибутив, що походить від Red Hat.
"rhel"
Red Hat Enterprise Linux.
"scientificlinux"
Scientific Linux.
"slackware"
Slackware.
"sles"
SuSE Linux Enterprise Server або Desktop.
"suse-based"
Дистрибутив, заснований на openSuSE.
"ttylinux"
ttylinux.
"ubuntu"
Ubuntu.
"unknown"
Дистрибутив, тип якого не вдалося визначити.
"voidlinux"
Void Linux.
"windows"
У Windows немає дистрибутивів. Цей рядок буде повернуто, якщо операційна система належить до сімейства Windows.

У майбутніх версіях libguestfs цією командою можуть повертатися інші рядки. Функція, звідки викликається команда, має готуватися до обробки будь-якого рядка.

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3).

inspect-get-drive-mappings

 inspect-get-drive-mappings root

Цей виклик корисний для Windows, де використовується примітивна система призначення літер дисків (зокрема C:\) до розділів. Цей програмний інтерфейс інспектування вивчає реєстр Windows, щоб визначити спосіб прив'язування дисків і розділів до літер, і повертає хеш-таблицю, як у наведеному нижче прикладі:

 C      =>     /dev/vda2
 E      =>     /dev/vdb1
 F      =>     /dev/vdc1

Зауважте, що ключі є літерами дисків. Для Windows регістр символів запису ключа не враховується і складається із простої літери диска без символу-відокремлювача, двокрапки.

У майбутньому ми можемо реалізувати підтримку інших операційних систем, де також використовуються літери для дисків, але ключі для таких систем можуть не бути незалежними від регістру символів і можуть перевищувати за довжиною 1 символ. Наприклад, у OS-9 диски називалися "h0", "h1" тощо.

Для гостьових систем Windows у поточній версії повертається лише прив'язка жорстких дисків. Портативні диски (зокрема DVD-ROM) ігноруються.

У гостьових системах, де не використовується прив'язка дисків, або прив'язку дисків не можна визначити, ця команда повертає таблицю порожніх хешів.

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3) Див. також "inspect-get-mountpoints", "inspect-get-filesystems".

inspect-get-filesystems

 inspect-get-filesystems корінь

Ця команда повертає список усіх файлових систем, які, як ми вважаємо, пов'язано із вказаною операційною системою. Це, зокрема, коренева файлова система, інші звичайні файлові системи та незмонтовані пристрої, зокрема диски резервної пам'яті.

У випадку віртуальної машини із варіантами завантаження операційних систем файлова система може бути спільною для одразу декількох операційних систем.

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3) Див. також "inspect-get-mountpoints".

inspect-get-format

 inspect-get-format корінь

До libguestfs 1.38 було передбачено певну ненадійну підтримку виявлення образів компакт-дисків для встановлення. Цей програмний інтерфейс мав повертати таке:

"installed"
Це встановлена операційна система.
"installer"
Інспектований образ диска не є встановленою операційною системою, а лише придатним до завантаження диском, компакт-диском із портативною операційною системою або чимось подібним.
"unknown"
Формат цього образу диска є невідомим.

У libguestfs ≥ 1.38 ця команда повертала лише "installed". Скористайтеся безпосередньо libosinfo для визначення системи на компакт-диску зі встановлювачем.

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3).

Ця функція вважається застарілою. Замінника не передбачено. Зверніться до документації із програмного інтерфейсу у підручнику з guestfs(3), щоб дізнатися більше.

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

inspect-get-hostname

 inspect-get-hostname корінь

Ця функція повертає назву вузла операційної системи, яку визначено засобом інспектування за файлами налаштувань гостьової операційної системи.

Якщо назву вузла не вдасться визначити, буде повернуто рядок "unknown".

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3).

inspect-get-icon

 inspect-get-icon корінь [favicon:true|false] [highquality:true|false]

Ця функція повертає піктограму, яка відповідає інспектованій операційній системі. Піктограма повертається як буфер, який містить зображення PNG (перекодується до PNG, якщо потрібно).

Якщо отримання піктограми неможливе, ця функція повертає буфер нульової довжини (не-NULL). Функції, які викликають цю команду, мають перевіряти цей випадок.

Libguestfs починає із пошуку файла із назвою /etc/favicon.png або C:\etc\favicon.png і, якщо дані зберігаються у належному форматі, буде повернуто вміст цього файла. Ви можете вимкнути такі піктограми передаванням для необов'язкового параметра "favicon" значення false (типовим значенням є true).

Якщо пошук favicon завершиться невдачею, буде виконано пошук відповідної піктограми у інших місцях гостьової системи.

Якщо для необов'язкового параметра "highquality" встановлено значення true, команда повертатиме лише високоякісні піктограми, тобто піктограми із високою роздільною здатністю і каналом прозорості. Типово, (зі значенням false) буде повернуто будь-яку знайдено піктограму, навіть якщо її якість буде низькою.

Нотатки:

  • На відміну від більшості інших викликів програмного інтерфейсу, перш ніж ви викличете цю команду, диски гостьової системи має бути змонтовано, оскільки під час виклику доведеться читати дані з файлової системи гостьової операційної системи.
  • Безпека: Дані піктограми походять із ненадійної гостьової системи, ними слід користуватися обережно. Відомі випадки додавання шкідливого коду до файлів PNG. Переконайтеся, що ви користуєтеся libpng (або іншими відповідними бібліотеками) останньої версії, перш ніж намагатися обробити або показати піктограму.
  • Розмір повернутого зображення PNG може бути довільним. Зображення може бути неквадратним. Libguestfs намагається повернути найбільшу доступну піктограму найвищої якості. Програма сама має масштабувати її до бажаного розміру.
  • Extracting icons from Windows guests requires the external wrestool(1) program from the "icoutils" package, and several programs (bmptopnm(1), pnmtopng(1), pamcut(1)) from the "netpbm" package. These must be installed separately.
  • Піктограми операційної системи захищено авторськими правами. Перш ніж використовувати захищені авторським правом дані у власних програмах, проконсультуйтеся щодо законодавчих аспектів такого використання.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

inspect-get-major-version

 inspect-get-major-version корінь

Ця команда повертає номер основної версії інспектованої операційної системи.

У Windows використовується послідовна схема нумерування версій, яку не відображено у назвах ринкових продуктів операційної системи. Зокрема, операційна система, яку ми знаємо за назвою «Windows 7», насправді має номер 6.1 (тобто основна версія = 6, додаткова версія = 1). Ви можете визначити справжні номери версій випусків Windows за статтями Вікіпедії або MSDN.

Якщо версію не вдасться визначити, буде повернуто 0.

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3).

inspect-get-minor-version

 inspect-get-minor-version корінь

Ця команда повертає номер додаткової версії інспектованої операційної системи.

Якщо версію не вдасться визначити, буде повернуто 0.

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3) Див. також "inspect-get-major-version".

inspect-get-mountpoints

 inspect-get-mountpoints корінь

Ця команда повертає хеш даних щодо місця, у якому, як ми гадаємо, має бути змонтовано файлові системи, пов'язані із операційною системою. Слід зауважити, що ці дані, у найкращому випадку, визначено на основі здогадок, заснованих на вивченні файлів налаштувань, зокрема /etc/fstab. Зокрема, використання цієї команди може призвести до отримання записів файлових систем, яких не існує або які непридатні до монтування. У коді, який викликатиме команду, слід правильно обробити випадки, коли під час спроби монтування отриманих файлових систем ставатимуться помилки.

У кожного з елементів повернутої хеш-таблиці буде ключ, який відповідатиме шляху до точки монтування (наприклад, /boot), і значення, яке відповідатиме файловій системі, яку має бути змонтовано до цієї точки монтування (наприклад, /dev/sda1).

Непридатні до монтування пристрої, зокрема пристрої резервної пам'яті на диску, не включатимуться до повернутого списку.

Для операційних систем, подібних до Windows, де для позначення дисків усе ще використовуються літери, ця команда поверне запис першого диска «змонтованого до» /. Щоб дізнатися більше про прив'язку літер дисків до розділів, див. "inspect-get-drive-mappings".

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3) Див. також "inspect-get-filesystems".

inspect-get-osinfo

 inspect-get-osinfo корінь

Ця функція повертає можливий скорочений ідентифікатор libosinfo, що відповідає гостьовій системі.

Зауваження: повернутий ідентифікатор є лише припущенням libguestfs і не гарантує, що такий ідентифікатор справді існує у osinfo-db.

Якщо ідентифікатор не вдасться визначити, буде повернуто рядок "unknown".

inspect-get-package-format

 inspect-get-package-format корінь

Ця функція і "inspect-get-package-management" повертають формат пакунків та засіб для керування пакунками, який використовується у інспектованій операційній системі. Наприклад, для Fedora ці функції мають повернути "rpm" (формат пакунків) та "yum" або "dnf" (засіб для керування пакунками).

Ця команда поверне рядок "unknown", якщо не вдасться визначити формат пакунків або якщо у операційній системі не використовується система пакунків (наприклад, у Windows).

Можливі варіанти рядків: "rpm", "deb", "ebuild", "pisi", "pacman", "pkgsrc", "apk", "xbps". У майбутніх версіях libguestfs може бути реалізовано повернення інших рядків.

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3).

inspect-get-package-management

 inspect-get-package-management корінь

"inspect-get-package-format" і ця функція повертають формат пакунків та засіб для керування пакунками, який використовується у інспектованій операційній системі. Наприклад, для Fedora ці функції мають повернути "rpm" (формат пакунків) та "yum" або "dnf" (засіб для керування пакунками).

Ця команда поверне рядок "unknown", якщо не вдасться визначити засіб для керування пакунками або якщо у операційній системі не використовується система пакунків (наприклад, у Windows).

Можливі варіанти повернутих рядків: "yum", "dnf", "up2date", "apt" (для усіх похідних Debian), "portage", "pisi", "pacman", "urpmi", "zypper", "apk", "xbps". У майбутніх версіях libguestfs може бути реалізовано повернення інших рядків.

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3).

inspect-get-product-name

 inspect-get-product-name корінь

Ця команда повертає назву продукту для інспектованої операційної системи. Назва продукту, у загальному випадку, є рядком довільної форми, який може бути показано користувачеві, але який не призначено для обробки програмами.

Якщо назву продукту визначити не вдалося, буде повернуто рядок "unknown".

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3).

inspect-get-product-variant

 inspect-get-product-variant root

Ця команда повертає варіант продукту інспектованої операційної системи.

Для гостьових операційних систем Windows ця команда повертає вміст ключа реєстру "HKLM\Software\Microsoft\Windows NT\CurrentVersion" "InstallationType", який типово є рядком, зокрема "Client" або "Server" (можливі й інші варіанти). Цим рядком можна скористатися для розрізнення домашніх і промислових версій Windows для випусків із однаковим номером версії (наприклад, Windows 7 і Windows 2008 Server обидві мають номер версії 6.1, але перша має значення варіанта "Client", а друга — "Server").

Для промислових версій гостьових систем Linux у майбутньому ми маємо намір реалізувати код, який повертатиме варіанти продукту, зокрема "Desktop", "Server" тощо. Але у поточній версії цей код ще не реалізовано.

Якщо варіант продукту визначити не вдалося, буде повернуто рядок "unknown".

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3) Див. також "inspect-get-product-name", "inspect-get-major-version".

inspect-get-roots

 inspect-get-roots

Ця функція є зручним способом отримання списку кореневих пристроїв, повернутого попереднім викликом "inspect-os", але без повторного виконання усієї процедури інспектування.

Команда повертає порожній список, якщо не буде знайдено кореневих пристроїв або якщо не було викликано "inspect-os".

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3).

inspect-get-type

 inspect-get-type корінь

Ця команда повертає тип інспектованої операційної системи. У поточній версії визначено такі типи:

"linux"
Будь-яка заснована на Linux операційна система.
"windows"
Будь-яка операційна система Microsoft Windows.
"freebsd"
FreeBSD.
"netbsd"
NetBSD.
"openbsd"
OpenBSD.
"hurd"
GNU/Hurd.
"dos"
MS-DOS, FreeDOS та інші.
"minix"
MINIX.
"unknown"
Не вдалося визначити тип операційної системи.

У майбутніх версіях libguestfs цією командою можуть повертатися інші рядки. Функція, звідки викликається команда, має готуватися до обробки будь-якого рядка.

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3).

inspect-get-windows-current-control-set

 inspect-get-windows-current-control-set root

Ця команда повертає Windows CurrentControlSet інспектованої гостьової системи. CurrentControlSet є назвою ключа реєстру, наприклад "ControlSet001".

У цій команді припускається, що гостьовою системою є Windows і що її реєстр можна вивчити засобами інспектування. Якщо ці припущення не справджуються, команда поверне повідомлення про помилку.

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3).

inspect-get-windows-software-hive

 inspect-get-windows-software-hive корінь

Ця команда повертає шлях до рою (двійкового файла реєстру Windows), який відповідає HKLM\SOFTWARE.

У цій команді припускається, що гостьовою системою є Windows і що у гостьовій системі є файл рою програмного забезпечення із відповідною назвою. Якщо ці припущення не справджуються, команда поверне повідомлення про помилку. Ця команд не виконує перевірки того, що знайдений рій є коректним роєм реєстру Windows.

Ви можете скористатися командою "hivex-open" для читання або запису рою.

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3).

inspect-get-windows-system-hive

 inspect-get-windows-system-hive корінь

Ця команда повертає шлях до рою (двійкового файла реєстру Windows), який відповідає HKLM\SYSTEM.

У цій команді припускається, що гостьовою системою є Windows і що у гостьовій системі є файл рою системи із відповідною назвою. Якщо ці припущення не справджуються, команда поверне повідомлення про помилку. Ця команда не виконує перевірки того, що знайдений рій є коректним роєм реєстру Windows.

Ви можете скористатися командою "hivex-open" для читання або запису рою.

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3).

inspect-get-windows-systemroot

 inspect-get-windows-systemroot корінь

Ця команда повертає системний кореневий каталог інспектованої гостьової системи Windows. Системним кореневим каталогом є шлях, зокрема /WINDOWS.

У цій команді припускається, що гостьовою системою є Windows і що її системний кореневий каталог можна визначити засобами інспектування. Якщо ці припущення не справджуються, команда поверне повідомлення про помилку.

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3).

inspect-is-live

 inspect-is-live корінь

Ця команда є застарілою і завжди повертає "false".

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3).

Ця функція вважається застарілою. Замінника не передбачено. Зверніться до документації із програмного інтерфейсу у підручнику з guestfs(3), щоб дізнатися більше.

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

inspect-is-multipart

 inspect-is-multipart корінь

Ця команда є застарілою і завжди повертає "false".

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3).

Ця функція вважається застарілою. Замінника не передбачено. Зверніться до документації із програмного інтерфейсу у підручнику з guestfs(3), щоб дізнатися більше.

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

inspect-is-netinst

 inspect-is-netinst корінь

Ця команда є застарілою і завжди повертає "false".

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3).

Ця функція вважається застарілою. Замінника не передбачено. Зверніться до документації із програмного інтерфейсу у підручнику з guestfs(3), щоб дізнатися більше.

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

inspect-list-applications

 inspect-list-applications кореневий_каталог

Повертає список програм, встановлених у операційній системі.

Зауваження: ця команда працює інакше за інші частини програмного інтерфейсу інспектування. Вам слід викликати "inspect-os", потім "inspect-get-mountpoints", потім змонтувати диски, потім викликати цю команду. Побудова списку програм є значно складнішою операцією, яка потребує доступу до усієї файлової системи. Також зауважте, що на відміну від інших команд "inspect-get-*", які лише повертають дані, кешовані у дескрипторі libguestfs, ця команда справді читає частини змонтованої файлової системи під час виконання.

Ця команда повертає порожній список, якщо засобу інспектування не вдасться визначити список програм.

Структура application містить такі поля:

"app_name"
The name of the application. For Linux guests, this is the package name.
"app_display_name"
Показана назва програми, іноді локалізована відповідно до мови встановлення гостьової операційної системи.

Якщо дані недоступні, команда поверне порожній рядок "". Там, де потрібно щось показати, можна скористатися замість цієї команди командою "app_name".

"app_epoch"
Для засобів керування пакунками, у яких використовуються епохи, це поле містить дані щодо епохи пакунка (ціле число). Якщо дані недоступні, буде повернуто значення 0.
"app_version"
Рядок версії програми або пакунка. Якщо такого рядка не передбачено, буде повернуто порожній рядок "".
"app_release"
Рядок випуску програми або пакунка у системах пакування, де передбачено підтримку відповідних даних. Якщо такого рядка не передбачено, буде повернуто порожній рядок "".
"app_install_path"
Шлях встановлення програми (у операційних системах, зокрема Windows, де використовуються шляхи встановлення). Цей шлях записується у форматі, який використовується гостьовою операційною системою, а не у форматі шляху libguestfs.

Якщо не передбачено, буде повернуто порожній рядок "".

"app_trans_path"
Шлях для встановлення, перетворений у шлях libguestfs. Якщо такого шляху не передбачено, буде повернуто порожній рядок "".
"app_publisher"
Назва розповсюджувача програми у системах пакування, де передбачено підтримку відповідних даних. Якщо такої назви не передбачено, буде повернуто порожній рядок "".
"app_url"
Адреса (сайта) програми. Якщо такої адреси не передбачено, буде повернуто порожній рядок "".
"app_source_package"
Для систем пакування, де передбачено таку підтримку, назва пакунка із початковим кодом. Якщо такої назви не передбачено, буде повернуто порожній рядок "".
"app_summary"
Короткий (зазвичай, у один рядок) опис програми або пакунка. Якщо такого опису не передбачено, буде повернуто порожній рядок "".
"app_description"
Докладніший опис програми або пакунка. Якщо опис недоступний, замість нього буде повернуто порожній рядок "".

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3).

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "inspect-list-applications2".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

inspect-list-applications2

 inspect-list-applications2 кореневий_каталог

Повертає список програм, встановлених у операційній системі.

Зауваження: ця команда працює інакше за інші частини програмного інтерфейсу інспектування. Вам слід викликати "inspect-os", потім "inspect-get-mountpoints", потім змонтувати диски, потім викликати цю команду. Побудова списку програм є значно складнішою операцією, яка потребує доступу до усієї файлової системи. Також зауважте, що на відміну від інших команд "inspect-get-*", які лише повертають дані, кешовані у дескрипторі libguestfs, ця команда справді читає частини змонтованої файлової системи під час виконання.

Ця команда повертає порожній список, якщо засобу інспектування не вдасться визначити список програм.

Структура application містить такі поля:

"app2_name"
The name of the application. For Linux guests, this is the package name.
"app2_display_name"
Показана назва програми, іноді локалізована відповідно до мови встановлення гостьової операційної системи.

Якщо дані недоступні, команда поверне порожній рядок "". Там, де потрібно щось показати, можна скористатися замість цієї команди командою "app2_name".

"app2_epoch"
Для засобів керування пакунками, у яких використовуються епохи, це поле містить дані щодо епохи пакунка (ціле число). Якщо дані недоступні, буде повернуто значення 0.
"app2_version"
Рядок версії програми або пакунка. Якщо такого рядка не передбачено, буде повернуто порожній рядок "".
"app2_release"
Рядок випуску програми або пакунка у системах пакування, де передбачено підтримку відповідних даних. Якщо такого рядка не передбачено, буде повернуто порожній рядок "".
"app2_arch"
Рядок архітектури програми або пакунка у системах пакування, де передбачено підтримку відповідних даних. Якщо такого рядка не передбачено, буде повернуто порожній рядок "".
"app2_install_path"
Шлях встановлення програми (у операційних системах, зокрема Windows, де використовуються шляхи встановлення). Цей шлях записується у форматі, який використовується гостьовою операційною системою, а не у форматі шляху libguestfs.

Якщо не передбачено, буде повернуто порожній рядок "".

"app2_trans_path"
Шлях для встановлення, перетворений у шлях libguestfs. Якщо такого шляху не передбачено, буде повернуто порожній рядок "".
"app2_publisher"
Назва розповсюджувача програми у системах пакування, де передбачено підтримку відповідних даних. Якщо такої назви не передбачено, буде повернуто порожній рядок "".
"app2_url"
Адреса (сайта) програми. Якщо такої адреси не передбачено, буде повернуто порожній рядок "".
"app2_source_package"
Для систем пакування, де передбачено таку підтримку, назва пакунка із початковим кодом. Якщо такої назви не передбачено, буде повернуто порожній рядок "".
"app2_summary"
Короткий (зазвичай, у один рядок) опис програми або пакунка. Якщо такого опису не передбачено, буде повернуто порожній рядок "".
"app2_description"
Докладніший опис програми або пакунка. Якщо опис недоступний, замість нього буде повернуто порожній рядок "".

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3).

inspect-os

 inspect-os

Ця функція використовує інші функції libguestfs та певну евристику для інспектування дисків (зазвичай, диски належать до віртуальної машини) під час пошуку операційних систем.

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

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

Ви можете передати повернуті рядки кореневих каталогів іншим функціями "inspect-get-*", щоб отримати подальші відомості щодо усіх операційних систем, зокрема назву і версію.

Ця функція використовує інші можливості libguestfs, зокрема "mount-ro" і "umount-all", щоб монтувати і демонтовувати файлові системи і переглядати їхній вміст. Її слід викликати до того, як буде змонтовано диски. Ця функція також може використовувати Augeas, отже усі наявні дескриптори Augeas буде закрито.

Ця функція не може розшифровувати зашифровані диски. Якщо диск зашифровано, про його розшифровування має подбати (надати відповідні ключі) функція виклику.

З докладнішими даними можна ознайомитися у розділі "INSPECTION" in guestfs(3).

Див. також "list-filesystems".

is-blockdev

is-blockdev-opts

 is-blockdev шлях [followsymlinks:true|false]

Повертає "true" і лише тоді, якщо існує блоковий пристрій із вказаною назвою "шлях".

Якщо додатковий прапорець "followsymlinks" має значення true, функція поверне true, якщо існує символічне посилання (або ланцюжок символічних посилань), який завершується блоковим пристроєм.

Ця команда лише шукає файли у файловій системі гостьової системи. У цій команді як параметр "шлях" не можна використовувати розділи і блокові пристрої libguestfs (наприклад /dev/sda).

Див. також "stat".

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

is-chardev

is-chardev-opts

 is-chardev шлях [followsymlinks:true|false]

Повертає "true" і лише тоді, якщо існує символьний пристрій із вказаною назвою "шлях".

Якщо додатковий прапорець "followsymlinks" має значення true, функція поверне true, якщо існує символічне посилання (або ланцюжок символічних посилань), який завершується символьним пристроєм.

Див. також "stat".

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

is-config

 is-config

Повертає true тоді і лише тоді, коли налаштовується цей дескриптор (у стані "CONFIG").

Докладніший опис станів наведено у підручнику з guestfs(3).

is-dir

is-dir-opts

 is-dir шлях [followsymlinks:true|false]

Повертає "true" і лише тоді, якщо існує каталог із вказаною назвою "шлях". Зауважте, що команда повертає false для усіх інших об'єктів, зокрема файлів.

Якщо додатковий прапорець "followsymlinks" має значення true, функція поверне true, якщо існує символічне посилання (або ланцюжок символічних посилань), який завершується каталогом.

Див. також "stat".

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

is-fifo

is-fifo-opts

 is-fifo шлях [followsymlinks:true|false]

Повертає "true" і лише тоді, якщо існує FIFO (іменований канал) із вказаною назвою "шлях".

Якщо додатковий прапорець "followsymlinks" має значення true, функція поверне true, якщо існує символічне посилання (або ланцюжок символічних посилань), який завершується FIFO.

Див. також "stat".

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

is-file

is-file-opts

 is-file шлях [followsymlinks:true|false]

Повертає "true" і лише тоді, якщо існує звичайний файл із вказаною назвою "шлях". Зауважте, що команда повертає false для усіх інших об'єктів, зокрема каталогів.

Якщо додатковий прапорець "followsymlinks" має значення true, функція поверне true, якщо існує символічне посилання (або ланцюжок символічних посилань), який завершується файлом.

Див. також "stat".

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

is-lv

 is-lv монтування

Ця команда перевіряє, чи є "монтування" логічним томом, і повертає true тоді і лише тоді, коли це так.

is-socket

is-socket-opts

 is-socket шлях [followsymlinks:true|false]

Повертає "true" і лише тоді, якщо існує сокет домену UNIX із вказаною назвою "шлях".

Якщо додатковий прапорець "followsymlinks" має значення true, функція поверне true, якщо існує символічне посилання (або ланцюжок символічних посилань), який завершується сокетом.

Див. також "stat".

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

 is-symlink шлях

Повертає "true" і лише тоді, якщо існує символічне посилання із вказаною назвою "шлях".

Див. також "stat".

is-whole-device

 is-whole-device пристрій

Ця команда повертає "true" тоді і лише тоді, коли "пристрій" стосується повного блокового пристрою, тобто не розділу і не логічного пристрою.

is-zero

 is-zero шлях

Повертає true тоді і лише тоді, коли файл існує і є порожнім або містить лише нульові байти.

is-zero-device

 is-zero-device пристрій

Повертає true тоді і лише тоді, коли пристрій існує і містить лише нульові байти.

Зауважте, що на пристроях великого об'єму виконання цієї програми може бути досить тривалим.

isoinfo

 isoinfo файл_образу_iso

Це те саме, що і "isoinfo-device", але працює для файла ISO, розташованого всередині якоїсь іншої змонтованої файлової системи. Зауважте, що у типовому випадку, коли ви додали файл ISO як пристрій libguestfs, вам не слід викликати цю команду. Замість цього, слід викликати "isoinfo-device".

isoinfo-device

 isoinfo-device пристрій

"пристрій" є пристроєм ISO. Ця команда повертає структуру даних, прочитану з дескриптора основного тому (еквівалента суперблоку у ISO) вказаного пристрою.

Зазвичай, ефективніше скористатися командою isoinfo(1) з параметром -d у основній системі для аналізу файлів ISO, а не використовувати засоби libguestfs.

For information on the primary volume descriptor fields, see https://wiki.osdev.org/ISO_9660#The_Primary_Volume_Descriptor

journal-close

 journal-close

Завершити роботу обробника журналу.

Працездатність цієї команди залежить від можливості "journal". Див. також "feature-available".

journal-get

 journal-get

Читає поточний запис журналу. Команда повертає усі поля у журналі як набір пар значень "(назва_атрибута, значення_атрибута)". Значенням "назва_атрибута" є назва поля (рядок).

Значенням "значення_атрибута" є значення поля (двійковий набір даних, часто, але не завжди, рядок). Будь ласка, зауважте, що "значення_атрибута" є масивом байтів, а не рядком C, який завершується символом \0.

Дані може бути обрізано за пороговою довжиною (див. "journal-set-data-threshold", "journal-get-data-threshold").

Якщо ви не обмежуєте порогове значення даних (0), ця команда може прочитати запис журналу довільного розміру, тобто розмір не обмежуватиметься протоколом libguestfs.

Працездатність цієї команди залежить від можливості "journal". Див. також "feature-available".

journal-get-data-threshold

 journal-get-data-threshold

Отримує поточне значення порогу даних для читання записів журналу. Це значення є підказкою журналу щодо того, що засіб журналювання може обрізати поля даних до цього розміру під час читання (зауважте також, що засіб журналювання може і не обрізати їх). Якщо команда повертає 0, порогове обмеження не встановлено.

Див. також "journal-set-data-threshold".

Працездатність цієї команди залежить від можливості "journal". Див. також "feature-available".

journal-get-realtime-usec

 journal-get-realtime-usec

Отримує поточну часову позначку (за годинником системи) поточного запису журналу

Працездатність цієї команди залежить від можливості "journal". Див. також "feature-available".

journal-next

 journal-next

Переводить до наступного запису журналу. Вам слід викликати цю команду принаймні один раз, одразу після відкриття дескриптора, перш ніж ви зможете читати дані.

Ця команда повертає булеве значення, яке повідомляє вам, чи існують ще записи журналу для читання. Значення "true" означає, що ви можете прочитати наступний запис (наприклад, за допомогою "journal-get"), а значення "false" означає, що досягнуто кінця журналу.

Працездатність цієї команди залежить від можливості "journal". Див. також "feature-available".

journal-open

 journal-open каталог

Відкриває журналу systemd, який зберігається у каталозі каталог. Усі раніше відкриті дескриптори журналу при цьому буде закрито.

Вміст журналу можна прочитати за допомогою "journal-next" і "journal-get".

Після завершення використання журналу вам слід закрити дескриптор викликом "journal-close".

Працездатність цієї команди залежить від можливості "journal". Див. також "feature-available".

journal-set-data-threshold

 journal-set-data-threshold порогове_значення

Встановлює значення порогу даних для читання записів журналу. Це значення є підказкою журналу щодо того, що засіб журналювання може обрізати поля даних до цього розміру під час читання (зауважте також, що засіб журналювання може і не обрізати їх). Якщо ви встановите значення 0, порогове обмеження застосовано не буде.

Див. також "journal-get-data-threshold".

Працездатність цієї команди залежить від можливості "journal". Див. також "feature-available".

journal-skip

 journal-skip пропуск

Прокручування записів журналу вперед ("пропуск ≥ 0") або назад ("пропуск < 0").

Команда повертає кількість записів, на яку насправді вдалося просунутися (зауважте, що "rskip ≥ 0"). Якщо повернуте значення не дорівнює пропуску за модулем ("|пропуск|"), ви досягли кінця або початку журналу.

Працездатність цієї команди залежить від можливості "journal". Див. також "feature-available".

kill-subprocess

 kill-subprocess

Ця команда завершує роботу гіпервізору.

Не виконуйте цього виклику, краще скористайтеся "shutdown".

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "shutdown".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

launch

run

 launch

Вам слід викликати цю команду після налаштовування дескриптора (наприклад, після додавання дисків), але перед виконанням із ним будь-яких інших дій.

Не викликайте "launch" двічі для одного і того самого дескриптора. Хоча такий виклик і не призведе до помилки (з історичних причин), точну поведінку бібліотеки у цьому випадку не визначено. Дескриптори є доволі невибагливими до ресурсів об'єктами, тому варто створювати окремий новий дескриптор для кожного запуску.

lchown

 lchown власник група шлях

Змінює власника файла на "власник" і групу на "група". Команда подібна до "chown", але якщо "шлях" є символічним посиланням, буде змінено параметри самого посилання, а не файла чи каталогу, на яке воно вказує.

Передбачено підтримку лише числових uid і gid. Якщо ви хочете скористатися текстовими назвами, вам доведеться знайти і обробити файл паролів власноруч (підтримка Augeas робить це завдання відносно простим).

ldmtool-create-all

 ldmtool-create-all

Ця функція сканує усі блокові пристрої, шукаючи динамічні томи дисків і розділи, а потім створює пристрої для усіх знайдених записів.

Викликати "list-ldm-volumes"і "list-ldm-partitions" для повернення списку усіх пристроїв.

Зауважте, що зазвичай вам не потрібно викликати цю команду явним чином, оскільки вона виконується автоматично під час виконання "launch". Втім, може виникнути потреба у виклику цієї функції, якщо ви з'єднували диски у «гарячому» режимі або щойно створили динамічний диск Windows.

Працездатність цієї команди залежить від можливості "ldm". Див. також "feature-available".

ldmtool-diskgroup-disks

 ldmtool-diskgroup-disks група_дисків

Повертає диски у групі динамічних дисків Windows. Значенням параметра "група_дисків" має бути GUID групи дисків, одним із елементів списку, який повертає "ldmtool-scan".

Працездатність цієї команди залежить від можливості "ldm". Див. також "feature-available".

ldmtool-diskgroup-name

 ldmtool-diskgroup-name група_дисків

Повертає назву групи динамічних дисків Windows. Значенням параметра "група_дисків" має бути GUID групи дисків, одним із елементів списку, який повертає "ldmtool-scan".

Працездатність цієї команди залежить від можливості "ldm". Див. також "feature-available".

ldmtool-diskgroup-volumes

 ldmtool-diskgroup-volumes група_дисків

Повертає томи у групі динамічних дисків Windows. Значенням параметра "група_дисків" має бути GUID групи дисків, одним із елементів списку, який повертає "ldmtool-scan".

Працездатність цієї команди залежить від можливості "ldm". Див. також "feature-available".

ldmtool-remove-all

 ldmtool-remove-all

Загалом, ця функція є оберненою до "ldmtool-create-all". Вона вилучає прив'язки пристроїв для усіх томів динамічних дисків Windows.

Працездатність цієї команди залежить від можливості "ldm". Див. також "feature-available".

ldmtool-scan

 ldmtool-scan

Ця функція шукає динамічні диски Windows. Вона повертає список ідентифікаторів (GUID) для усіх груп дисків, які було знайдено. Ці ідентифікатори можна передавати іншим функціям "ldmtool-*".

Ця функція сканує усі блокові пристрої. Щоб виконати сканування якоїсь підмножини блокових пристроїв, скористайтеся функцією "ldmtool-scan-devices".

Працездатність цієї команди залежить від можливості "ldm". Див. також "feature-available".

ldmtool-scan-devices

 ldmtool-scan-devices 'пристрої...'

Ця функція шукає динамічні диски Windows. Вона повертає список ідентифікаторів (GUID) для усіх груп дисків, які було знайдено. Ці ідентифікатори можна передавати іншим функціям "ldmtool-*".

Параметр "пристрої" є списком блокових пристроїв, на яких слід виконати пошук. Якщо список є порожнім, буде виконано сканування усіх блокових пристроїв.

Працездатність цієї команди залежить від можливості "ldm". Див. також "feature-available".

ldmtool-volume-hint

 ldmtool-volume-hint група_дисків том

Повертає поле підказки для тому із назвою "том" у групі дисків із GUID "група_дисків". Таку підказку може бути не визначено. Якщо підказку не визначено, команда поверне порожній рядок. У полі підказки часто, але не завжди, міститься назва диска у Windows, наприклад "E:".

Працездатність цієї команди залежить від можливості "ldm". Див. також "feature-available".

ldmtool-volume-partitions

 ldmtool-volume-partitions група_дисків том

Повертає список розділів на томі із назвою "том" у групі дисків із GUID "група_дисків".

Працездатність цієї команди залежить від можливості "ldm". Див. також "feature-available".

ldmtool-volume-type

 ldmtool-volume-type група_дисків том

Повертає тип тому із назвою "том" у групі дисків із GUID "група_дисків".

Можливими типами томів, які повертає ця команда є такі: "simple", "spanned", "striped", "mirrored", "raid5". Також може бути повернуто інші типи.

Працездатність цієї команди залежить від можливості "ldm". Див. також "feature-available".

lgetxattr

 lgetxattr шлях назва

Отримати окремий розширений атрибут з файла "шлях" за назвою "назва". Якщо "шлях" є символічним посиланням, ця команда поверне розширений атрибут з символічного посилання.

Зазвичай, краще отримати усі розширені атрибути файла одним викликом "getxattrs". Втім, у реалізації деяких файлових систем у Linux є вади, які заважають отримання повного списку атрибутів. Для таких файлових систем (найпоширенішою з яких є ntfs-3g) вам доведеться визначити назви потрібних вам розширених атрибутів і викликати цю функцію.

Значеннями розширених атрибутів є блоки двійкових даних. Якщо розширеного атрибута із назвою "назва" не існує, командою буде повернуто повідомлення про помилку.

Див. також "lgetxattrs", "getxattr", attr(5).

Працездатність цієї команди залежить від можливості "linuxxattrs". Див. також "feature-available".

lgetxattrs

 lgetxattrs шлях

Те саме, що і "getxattrs", але якщо "шлях" є символічним посиланням, повертає розширені атрибути самого символічного посилання.

Працездатність цієї команди залежить від можливості "linuxxattrs". Див. також "feature-available".

list-9p

 list-9p

Виводить список усіх файлових систем 9p, з'єднаних із гостьовою системою. Повертає список теґів монтування.

list-devices

 list-devices

Вивести список усіх блокових пристроїв.

Буде повернуто повні назви блокових пристроїв, наприклад /dev/sda.

Див. також "list-filesystems".

list-disk-labels

 list-disk-labels

Якщо ви додаєте диски з використанням необов'язкового параметра "мітка" команди "add-drive-opts", ви можете скористатися цією командою для прив'язування міток до простих блокових пристроїв та назв розділів (наприклад /dev/sda та /dev/sda1).

Ця команда повертає таблицю хешів, у якій ключами є мітки дисків (без префіксів /dev/disk/guestfs), а значеннями є повні назви простих блокових пристроїв та розділів (наприклад /dev/sda і /dev/sda1).

list-dm-devices

 list-dm-devices

Виводить список усіх пристроїв засобу прив'язування пристроїв.

У повернутому списку міститимуться пристрої /dev/mapper/*, наприклад, пристрої, створені попереднім викликом "luks-open".

Пристрої засобу прив'язування пристроїв, які відповідають логічним томам не буде включено до повернутого списку. Якщо вам потрібен список логічних томів, скористайтеся командою "lvs".

list-filesystems

 list-filesystems

Ця команда засобу інспектування шукає усі файлові системи на розділах, блокових пристроях та логічних томах і повертає список "монтувань", де містяться дані щодо файлових систем та їхнього типу.

Повернуте значення є хешем, де ключами є пристрої, на яких містяться файлові системи, а значеннями є типи файлових систем. Приклад:

 "/dev/sda1" => "ntfs"
 "/dev/sda2" => "ext2"
 "/dev/vg_guest/lv_root" => "ext4"
 "/dev/vg_guest/lv_swap" => "swap"

Ключем не обов'язково є блоковий пристрій. Ним також може бути не зовсім прозорий рядок «mountable», який можна передавати "mount".

Значенням може бути особливий рядок «unknown», який означає, що вміст пристрою не вдалося визначити або пристрій є порожнім. Рядок «swap» означає розділ резервної пам'яті Linux.

У libguestfs ≤ 1.36 ця команда запускає інші команди libguestfs, серед яких можуть бути команди "mount" і "umount". Тому її слід віддавати поближче до launch і лише тоді, коли ще нічого не змонтовано. Це обмеження було усунено у libguestfs ≥ 1.38.

Не усі файлові системи із повернутого списку є придатними до монтування. Зокрема, у списку можуть бути розділи резервної пам'яті. Крім того, ця команда не перевіряє, чи є кожна зі знайдених файлових систем коректною і придатною до монтування. Деякі із систем можуть бути придатними до монтування, але потребувати спеціальних параметрів. Файлові системи можуть належати різним логічним операційними системами (для пошуку операційних систем скористайтеся командою "inspect-os").

list-ldm-partitions

 list-ldm-partitions

Ця функція повертає усі розділи динамічних дисків Windows, які було знайдено на час запуску. Повернутим значенням є список назв пристроїв.

Працездатність цієї команди залежить від можливості "ldm". Див. також "feature-available".

list-ldm-volumes

 list-ldm-volumes

Ця функція повертає усі томи динамічних дисків Windows, які було знайдено на час запуску. Повернутим значенням є список назв пристроїв.

Працездатність цієї команди залежить від можливості "ldm". Див. також "feature-available".

list-md-devices

 list-md-devices

Вивести список усіх пристроїв md у Linux.

list-partitions

 list-partitions

Вивести усі розділи, визначені як блокові пристрої.

Буде повернуто назви пристроїв розділів повністю, наприклад /dev/sda1

Не повертає логічних томів. Для логічних томів слід викликати "lvs".

Див. також "list-filesystems".

ll

 ll каталог

List the files in directory (relative to the root directory, there is no cwd) in the format of "ls -la".

Ця команда здебільшого корисна для інтерактивних сеансів. Її не призначено для випадків, коли ви намагаєтеся обробити виведений командою рядок.

llz

 llz каталог

List the files in directory in the format of "ls -laZ".

Ця команда здебільшого корисна для інтерактивних сеансів. Її не призначено для випадків, коли ви намагаєтеся обробити виведений командою рядок.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "lgetxattrs".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

ln

 ln призначення назва_посилання

This command creates a hard link.

ln-f

 ln-f призначення назва_посилання

This command creates a hard link, removing the link "linkname" if it exists already.

ln-s

 ln-s призначення назва_посилання

Ця команда створює символічне посилання за допомогою команди "ln -s".

ln-sf

 ln-sf призначення назва_посилання

Ця команда створює символічне посилання за допомогою команди "ln -sf". Наявність параметра -f вилучає посилання ("назва_посилання"), якщо таке вже існує.

lremovexattr

 lremovexattr xattr шлях

Те саме, що і "removexattr", але якщо "шлях" є символічним посиланням, вилучає розширені атрибути самого символічного посилання.

Працездатність цієї команди залежить від можливості "linuxxattrs". Див. також "feature-available".

ls

 ls каталог

List the files in directory (relative to the root directory, there is no cwd). The "." and ".." entries are not returned, but hidden files are shown.

ls0

 ls0 каталог (назви файлів|-)

Цю спеціалізовану команду використовують для отримання списку назв файлів у каталозі "каталог". Список назв файлів буде записано до локального файла назви_файлів (у основній системі).

У файлі результатів обробки назви файлів буде відокремлено символами "\0".

Серед записів результатів не буде "." і "..". Назви файлів не упорядковуватимуться.

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

lsetxattr

 lsetxattr розширений_атрибут значення довжина_значення шлях

Те саме, що і "setxattr", але якщо "шлях" є символічним посиланням, встановлює розширений атрибут самого символічного посилання.

Працездатність цієї команди залежить від можливості "linuxxattrs". Див. також "feature-available".

lstat

 lstat шлях

Повертає дані щодо файла за вказаним шляхом "шлях".

Те саме, що і "stat", але якщо "шлях" є символічним посиланням, статистику буде зібрано для цього посилання, а не для запису, на який воно посилається.

Це те саме, що системний виклик lstat(2).

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "lstatns".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

lstatlist

 lstatlist шлях 'назви ...'

Цей виклик надає змогу виконувати дію "lstat" над декількома файлами, які зберігаються у каталозі "шлях". Значенням аргументу "назви" є список файлів у цьому каталозі.

Команда повертає список структур статистичних даних із однозначною відповідністю до списку "назви". Якщо якоїсь із назв не існує або для якоїсь із назв не вдасться зібрати статистичні дані, для поля "st_ino" структури буде встановлено значення "-1".

Цю команду призначено для програм, яким потрібно ефективно будувати список вмісту каталогів без виконання багатьох обходів. Див. також "lxattrlist", якщо потрібний подібний ефективний підхід для отримання розширених атрибутів.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "lstatnslist".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

lstatns

 lstatns шлях

Повертає дані щодо файла за вказаним шляхом "шлях".

Те саме, що і "statns", але якщо "шлях" є символічним посиланням, статистику буде зібрано для цього посилання, а не для запису, на який воно посилається.

Це те саме, що системний виклик lstat(2).

lstatnslist

 lstatnslist шлях 'назви ...'

Цей виклик надає змогу виконувати дію "lstatns" над декількома файлами, які зберігаються у каталозі "шлях". Значенням аргументу "назви" є список файлів у цьому каталозі.

Команда повертає список структур статистичних даних із однозначною відповідністю до списку "назви". Якщо якоїсь із назв не існує або для якоїсь із назв не вдасться зібрати статистичні дані, для поля "st_ino" структури буде встановлено значення "-1".

Цю команду призначено для програм, яким потрібно ефективно будувати список вмісту каталогів без виконання багатьох обходів. Див. також "lxattrlist", якщо потрібний подібний ефективний підхід для отримання розширених атрибутів.

luks-add-key

 luks-add-key пристрій слот_ключів

Ця команда додає новий ключ на пристрій LUKS "пристрій". Ключем "ключ" є будь-який наявний ключ, його буде використано для доступу до пристрою. Значенням параметра "новий_ключ" є новий ключ, який слід додати. Значенням параметра "слот_ключів" є слот ключів, який має бути замінено.

Зауважте, що якщо у слоті "слот_ключів" вже міститься ключ, успішно виконати цю команду не вдасться. Вам доведеться спочатку скористатися командою "luks-kill-slot" для вилучення наявного ключа.

Для виконання цієї команди потрібні будуть один або декілька параметрів ключів або паролів. Guestfish надсилатиме запит щодо цих параметрів окремо.

Працездатність цієї команди залежить від можливості "luks". Див. також "feature-available".

luks-close

 luks-close пристрій

Ця команда закриває пристрій LUKS, який раніше було створено за допомогою "luks-open" або "luks-open-ro". Значенням параметра "пристрій" має бути назва пристрою прив'язки LUKS (тобто /dev/mapper/назва_прив'язки), а не назва підлеглого блокового пристрою.

This function is deprecated. In new code, use the "cryptsetup-close" call instead.

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

Працездатність цієї команди залежить від можливості "luks". Див. також "feature-available".

luks-format

 luks-format пристрій слот_ключів

This command erases existing data on "device" and formats the device as a LUKS encrypted device. "key" is the initial key, which is added to key slot "keyslot". (LUKS supports 8 key slots, numbered 0-7).

Для виконання цієї команди потрібні будуть один або декілька параметрів ключів або паролів. Guestfish надсилатиме запит щодо цих параметрів окремо.

Працездатність цієї команди залежить від можливості "luks". Див. також "feature-available".

luks-format-cipher

 luks-format-cipher пристрій слот_ключів шифрування

Ця команда виконує ті самі дії, що і "luks-format", але, крім того, надає вам змогу вказати використане "шифрування".

Для виконання цієї команди потрібні будуть один або декілька параметрів ключів або паролів. Guestfish надсилатиме запит щодо цих параметрів окремо.

Працездатність цієї команди залежить від можливості "luks". Див. також "feature-available".

luks-kill-slot

 luks-kill-slot пристрій слот_ключів

Ця команда вилучає ключ у слоті ключів "слот_ключів" із зашифрованого пристрою LUKS "пристрій". Значенням параметра "ключ" має бути один з інших ключів.

Для виконання цієї команди потрібні будуть один або декілька параметрів ключів або паролів. Guestfish надсилатиме запит щодо цих параметрів окремо.

Працездатність цієї команди залежить від можливості "luks". Див. також "feature-available".

luks-open

 luks-open пристрій назва_прив'язки

Ця команда відкриває блоковий пристрій, який було зашифровано відповідно до стандарту Linux Unified Key Setup (LUKS).

"пристрій" — шифрований блоковий пристрій або розділ.

Засіб виклику має надати один з ключів, пов'язаних із блоковим пристроєм LUKS, у параметрі "ключ".

Ця команда створює блоковий пристрій із назвою /dev/mapper/назва_прив'язки. Читання та запис на цій блоковий пристрій відбувається із розшифровуванням та шифруванням на підлеглому пристрої "пристрій".

Якщо на цьому блоковому пристрої містяться групи томів LVM, видимими їх можна зробити за допомогою виклику "lvm-scan" зі значенням параметра "activate" рівним "true".

Скористайтеся командою "list-dm-devices", щоб отримати список усіх пристроїв засобу прив'язування пристроїв.

Для виконання цієї команди потрібні будуть один або декілька параметрів ключів або паролів. Guestfish надсилатиме запит щодо цих параметрів окремо.

This function is deprecated. In new code, use the "cryptsetup-open" call instead.

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

Працездатність цієї команди залежить від можливості "luks". Див. також "feature-available".

luks-open-ro

 luks-open-ro пристрій назва_прив'язки

Виконує ті самі дії, що і "luks-open", але зі створенням прив'язки, яка придатна лише для читання даних.

Для виконання цієї команди потрібні будуть один або декілька параметрів ключів або паролів. Guestfish надсилатиме запит щодо цих параметрів окремо.

This function is deprecated. In new code, use the "cryptsetup-open" call instead.

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

Працездатність цієї команди залежить від можливості "luks". Див. також "feature-available".

luks-uuid

 luks-uuid device

This returns the UUID of the LUKS device "device".

Працездатність цієї команди залежить від можливості "luks". Див. також "feature-available".

lvcreate

 lvcreate логічний_том група_томів мегабайти

Ця команда створює логічний том LVM із назвою "логічний_том" у групі томів "група_томів" із розміром "мегабайти" мегабайтів.

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

lvcreate-free

 lvcreate-free логічний_том група_томів відсотки

Створює логічний том LVM із назвою /dev/група_томів/логічний_том, який використовуватиме приблизно "відсоткиt" % залишкового вільного місця у групі томів. Найпоширенішим є використання значення "відсотки" рівного 100 для створення найбільшого можливого логічного тому.

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

lvm-canonical-lv-name

 lvm-canonical-lv-name назва_логічного_тому

Ця команда перетворює альтернативні схеми найменування логічних томів, які можуть зустрітися на практиці, на канонічні назви. Приклад: /dev/mapper/група_томів-логічний_том буде перетворено на /dev/група_томів/логічний_том.

This command returns an error if the "lvname" parameter does not refer to a logical volume. In this case errno will be set to "EINVAL".

Див. також "is-lv", "canonical-device-name".

lvm-clear-filter

 lvm-clear-filter

Скасовує дію "lvm-set-filter". LVM зможе бачити усі блокові пристрої.

Крім того, ця команда спорожняє кеш LVM і виконує сканування груп томів.

lvm-remove-all

 lvm-remove-all

Ця команда вилучає усі логічні томи, групи томів та фізичні томи LVM.

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

lvm-scan

 lvm-scan true|false

Ця команда виконує сканування усіх блокових пристроїв і повторно будує список фізичних томів, груп томів та логічних томів LVM.

Якщо параметр "activate" має значення "true", новознайдені групи томів і логічні томи активуються, тобто пристрої LV /dev/VG/LV стають видимими.

Коли запускається обробник libguestfs, він шукає наявні пристрої, тому, зазвичай, потреби у використанні цього програмного інтерфейсу немає. Втім, він є корисним, якщо ви додали новий пристрій або вилучили наявний пристрій (так трапляється при використанні програмного інтерфейсу "luks-open").

lvm-set-filter

 lvm-set-filter 'пристрої...'

Ця команда встановлює фільтр пристроїв LVM так, що LVM зможе «бачити» лише блокові пристрої зі списку "пристрої" і ігноруватиме усі інші з'єднані блокові пристрої.

Там, де образи дисків містять дублікати фізичних томів або груп томів, ця команда корисна для того, щоб LVM ігнорувала такі дублікати і уникала конфліктів. Слід також зауважити, що існує два типи дублювання: клоновані фізичні томи або групи томів, які мають однакові UUIDs; та групи томів, які не було клоновано, але які мають однакові назви. За звичайних умов, створення таких дублікатів неможливе, але їх може бути створено за межами LVM, наприклад, внаслідок клонування образів дисків або втручання до метаданих LVM.

Крім того, ця команда спорожняє кеш LVM і виконує сканування груп томів.

Ви можете фільтрувати усі блокові пристрої або окремі розділи.

Цією командою не можна користуватися, якщо якась з груп томів використовується (наприклад, містить змонтовану файлову систему), навіть якщо ви не викидаєте за допомогою фільтрування цю групу томів.

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

lvremove

 lvremove пристрій

Вилучає логічний том LVM "пристрій", де "пристрій" — це шлях до логічного тому, наприклад /dev/група_томів/логічний_том.

Ви також можете вилучити усі логічні томи у групі томів, вказавши назву групи томів, /dev/група_томів.

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

lvrename

 lvrename логічний_том новий_логічний_том

Перейменувати логічний том "логічний_том" на том із назвою "новий_логічний_том".

lvresize

 lvresize пристрій мегабайти

Ця команда змінює розмір (розширює або стискає) наявний логічний том LVM до розміру "мегабайти". Якщо розміри тому зменшуються, дані у відкинутій у результаті зменшення розмірів частині тому буде втрачено.

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

lvresize-free

 lvresize-free логічний_том відсотки

This expands an existing logical volume "lv" so that it fills "pc" % of the remaining free space in the volume group. Commonly you would call this with pc = 100 which expands the logical volume as much as possible, using all remaining free space in the volume group.

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

lvs

 lvs

Виводить список усіх виявлених логічних томів. Є еквівалентом команди lvs(8).

Ця команда повертає список назв пристроїв логічних томів (наприклад /dev/VolGroup00/LogVol00).

Див. також "lvs-full", "list-filesystems".

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

lvs-full

 lvs-full

Виводить список усіх виявлених логічних томів. Є еквівалентом команди lvs(8). «Повна» версія включає усі поля.

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

lvuuid

 lvuuid пристрій

Ця команда повертає UUID логічного тому LVM "пристрій".

lxattrlist

 lxattrlist шлях 'назви ...'

Цей виклик надає змогу отримувати розширені атрибути декількох файлів, які зберігаються у каталозі "шлях". Значенням аргументу "назви" є список файлів у цьому каталозі.

On return you get a flat list of xattr structs which must be interpreted sequentially. The first xattr struct always has a zero-length "attrname". "attrval" in this struct is zero-length to indicate there was an error doing "lgetxattr" for this file, or is a C string which is a decimal number (the number of following attributes for this file, which could be "0"). Then after the first xattr struct are the zero or more attributes for the first named file. This repeats for the second and subsequent files.

Цю команду призначено для програм, яким потрібно ефективно будувати список вмісту каталогів без виконання багатьох обходів. Див. також "lstatlist", якщо потрібний подібний ефективний підхід для отримання стандартних статистичних даних.

Працездатність цієї команди залежить від можливості "linuxxattrs". Див. також "feature-available".

max-disks

 max-disks

Повертає максимальну кількість дисків, які може бути додано до дескриптора (наприклад, за допомогою "add-drive-opts" та подібних команд).

Цю функцію було додано у libguestfs 1.19.7. У попередніх версіях libguestfs діяло обмеження у 25.

Див. "МАКСИМАЛЬНА КІЛЬКІСТЬ ДИСКІВ" in guestfs(3), щоб дізнатися більше про це.

md-create

 md-create назва 'пристрої...' [missingbitmap:N] [nrdevices:N] [spare:N] [chunk:N] [level:..]

Створює пристрій md (RAID) Linux із назвою "назва" на пристроях зі списку "пристрої".

Додатковими параметрами є:

"missingbitmap"
Бітова карта пристроїв, яких не вистачає. Якщо біт встановлено, це означає, що до масиву додано пристрій, якого не вистачає. Найменший біт відповідає першому пристрої у масиві.

Приклади:

Якщо "пристрої = ["/dev/sda"]" і "missingbitmap = 0x1", масивом-результатом має бути "[<missing>, "/dev/sda"]".

Якщо "пристрої = ["/dev/sda"]" і "missingbitmap = 0x2", масивом-результатом має бути "["/dev/sda", <missing>]".

Типовим є значення 0 (немає пристроїв, яких не вистачає).

Довжина запису "пристрої" + кількість бітів, встановлених у "missingbitmap" має дорівнювати "nrdevices" + "spare".

"nrdevices"
Кількість активних пристроїв RAID.

Якщо не встановлено, типовим значенням є довжина запису "пристрої" плюс кількість бітів, які встановлено у "missingbitmap".

"spare"
Кількість резервних пристроїв.

Якщо не встановлено, типовим значенням є 0.

"chunk"
Розмір фрагмента у байтах.
"level"
The RAID level, which can be one of: "linear", "raid0", 0, "stripe", "raid1", 1, "mirror", "raid4", 4, "raid5", 5, "raid6", 6, "raid10", 10. Some of these are synonymous, and more levels may be added in future.

Якщо не встановлено, типовим значенням є "raid1".

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "mdadm". Див. також "feature-available".

md-detail

 md-detail md

This command exposes the output of "mdadm -DY <md>". The following fields are usually present in the returned hash. Other fields may also be present.

"level"
Рівень RAID пристрою MD.
"devices"
Кількість підлеглих пристроїв у пристрої MD.
"metadata"
Використана версія метаданих.
"uuid"
UUID пристрою MD.
"name"
Назва пристрою MD.

Працездатність цієї команди залежить від можливості "mdadm". Див. також "feature-available".

md-stat

 md-stat md

Ця команда повертає список підлеглих пристроїв, з яких складається окремий програмний масив RAID пристрою "md".

Щоб отримати список пристроїв програмних RAID, скористайтеся викликом "list-md-devices".

Кожна повернута структура відповідає одному пристрою із додатковими відомостями щодо стану:

"mdstat_device"
Назва підлеглого пристрою.
"mdstat_index"
Індекс цього пристрою у масиві.
"mdstat_flags"
Прапорці, пов'язані із цим пристроєм. Ця рядок містить (неупорядкованими) нуль або більше таких прапорців:
"W"
write-mostly
"F"
пристрій працює з помилками
"S"
пристрій є запасною частиною RAID
"R"
заміна

Працездатність цієї команди залежить від можливості "mdadm". Див. також "feature-available".

md-stop

 md-stop md

Ця команда деактивує масив MD із назвою "md". Роботу пристрою буде припинено, але без знищення або занулення.

Працездатність цієї команди залежить від можливості "mdadm". Див. також "feature-available".

mkdir

 mkdir шлях

Створює каталог із назвою "шлях".

mkdir-mode

 mkdir-mode шлях режим

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

Для типових файлових систем Linux справжній режим доступу, який встановлюється, визначається виразом "режим & ~umask & 01777". У файлових системах, які не є природними для Linux, цей режим може визначатися у інший спосіб.

Див. також "mkdir", "umask"

mkdir-p

 mkdir-p шлях

Створює каталог із назвою "шлях" зі створенням усіх потрібних проміжних каталогів. Результат подібний до результату дії команди оболонки "mkdir -p".

mkdtemp

 mkdtemp tmpl

Ця команда створює тимчасовий каталог. Значенням параметра "tmpl" має бути повна назва шляху до тимчасового каталогу із завершальними шістьма символами «XXXXXX».

Приклади: «/tmp/myprogXXXXXX» або «/Temp/myprogXXXXXX». Другий варіант є придатним для файлових систем Windows.

Буде повернуто назву тимчасового каталогу, який було створено.

Тимчасовий каталог буде створено із режимом доступу 0700, його власником буде користувач root.

За вилучення тимчасового каталогу і його вмісту після використання відповідає функція виклику.

Див. також mkdtemp(3)

mke2fs

 mke2fs пристрій [blockscount:N] [blocksize:N] [fragsize:N] [blockspergroup:N] [numberofgroups:N] [bytesperinode:N] [inodesize:N] [journalsize:N] [numberofinodes:N] [stridesize:N] [stripewidth:N] [maxonlineresize:N] [reservedblockspercentage:N] [mmpupdateinterval:N] [journaldevice:..] [label:..] [lastmounteddir:..] [creatoros:..] [fstype:..] [usagetype:..] [uuid:..] [forcecreate:true|false] [writesbandgrouponly:true|false] [lazyitableinit:true|false] [lazyjournalinit:true|false] [testfs:true|false] [discard:true|false] [quotatype:true|false] [extent:true|false] [filetype:true|false] [flexbg:true|false] [hasjournal:true|false] [journaldev:true|false] [largefile:true|false] [quota:true|false] [resizeinode:true|false] [sparsesuper:true|false] [uninitbg:true|false]

"mke2fs" використовується для створення файлових систем ext2, ext3 та ext4 на пристрої "пристрій".

Необов'язковий параметр "blockscount" визначає розмір файлової системи у блоках. Якщо його не вказано, типовим значенням буде розмір пристрою "пристрій". Зауважте, що якщо файлова система буде надто малою для того, щоб містити журнал, "mke2fs" без додаткових повідомлень створить файлову систему ext2.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

mke2fs-J

 mke2fs-J тип_файлової_системи розмір_блоку пристрій журнал

Ця команда створює файлову систему ext2/3/4 на пристрої "пристрій" із зовнішнім журналом на розділі "журнал". Вона еквівалентна до такої команди:

 mke2fs -t тип_файлової_системи -b розмір_блоку -J device=<журнал> <пристрій>

Див. також "mke2journal".

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "mke2fs".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

mke2fs-JL

 mke2fs-JL тип_файлової_системи розмір_блоку пристрій мітка

Ця команда створює файлову систему ext2/3/4 на пристрої "пристрій" із зовнішнім журналом на розділі із міткою "мітка".

Див. також "mke2journal-L".

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "mke2fs".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

mke2fs-JU

 mke2fs-JU тип_файлової_системи розмір_блоку пристрій uuid

Ця команда створює файлову систему ext2/3/4 на пристрої "пристрій" із зовнішнім журналом на розділі із UUID "uuid".

Див. також "mke2journal-U".

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "mke2fs".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

Працездатність цієї команди залежить від можливості "linuxfsuuid". Див. також "feature-available".

mke2journal

 mke2journal розмір_блоку пристрій

Ця команда створює зовнішній журнал ext2 на пристрої "пристрій". Вона еквівалентна до такої команди:

 mke2fs -O пристрій_журналу -b розмір_блоку пристрій

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "mke2fs".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

mke2journal-L

 mke2journal-L розмір_блоку мітка пристрій

Ця команда створює зовнішній журнал ext2 на пристрої "пристрій" з міткою "мітка".

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "mke2fs".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

mke2journal-U

 mke2journal-U розмір_блоку uuid пристрій

Ця команда створює зовнішній журнал ext2 на пристрої "пристрій" із UUID "uuid".

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "mke2fs".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

Працездатність цієї команди залежить від можливості "linuxfsuuid". Див. також "feature-available".

mkfifo

 mkfifo режим шлях

Ця команда створює FIFO (іменований канал даних) із назвою "шлях" і режимом доступу "режим". Це просто зручна обгортка до "mknod".

На відміну від "mknod", параметр "режим" має містити лише біти прав доступу.

На встановлений режим доступу впливає umask.

Працездатність цієї команди залежить від можливості "mknod". Див. також "feature-available".

mkfs

mkfs-opts

 mkfs тип_файлової_системи пристрій [blocksize:N] [features:..] [inode:N] [sectorsize:N] [label:..]

Ця функція створює файлову систему на пристрої "пристрій". Типом файлової системи буде "тип_файлової_системи", наприклад "ext3".

Необов'язковими аргументами є:

"blocksize"
Розмір блоку файлової системи. Підтримувані розміри блоків залежать від типу файлової системи, але типовими є 1024, 2048 і 4096 для файлових систем ext2/3 Linux.

Для VFAT і NTFS значення параметра "розмір_блоку" обробляється як бажаний розмір кластера.

Дані щодо розмірів блоків UFS можна знайти у підручнику до mkfs.ufs(8).

"features"
Передає параметр -O зовнішній програмі mkfs.

Для деяких типів файлових систем це надає змогу вибрати додаткові можливості файлової системи. Щоб дізнатися більше, див. mke2fs(8) та mkfs.ufs(8).

Цей додатковий параметр не можна використовувати для типів файлових систем "gfs" та "gfs2".

"inode"
Передає параметр -I зовнішній програмі mke2fs(8), тобто визначає розмір inode (у поточній версії лише для файлових систем ext2/3/4).
"sectorsize"
Передає параметр -S зовнішній програмі mkfs.ufs(8), тобто визначає розмір сектора для файлової системи ufs.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

mkfs-b

 mkfs-b тип_файлової_системи розмір_блоку пристрій

Ця команда подібна до "mkfs", але надає вам змогу контролювати розмір блоку отриманої файлової системи. Набір підтримуваних розмірів блоків залежить від типу файлової системи, але типовими є 1024, 2048 та 4096.

Для VFAT і NTFS значення параметра "розмір_блоку" обробляється як бажаний розмір кластера.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "mkfs".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

mkfs-btrfs

 mkfs-btrfs 'пристрої...' [allocstart:N] [bytecount:N] [datatype:..] [leafsize:N] [label:..] [metadata:..] [nodesize:N] [sectorsize:N]

Створює файлову систему btrfs із можливим встановленням усіх налаштувань. Щоб дізнатися більше про додаткові параметри, ознайомтеся зі сторінкою підручника mkfs.btrfs(8).

Оскільки дані файлової системи btrfs може бути розподілено між декількома пристроями, команда приймає непорожній список пристроїв.

Для створення типових файлових систем користуйтеся "mkfs".

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "btrfs". Див. також "feature-available".

mklost-and-found

 mklost-and-found точка_монтування

Створює каталог "lost+found", зазвичай, у кореневому каталозі файлової системи ext2/3/4. "точка_монтування" є каталогом, у якому ми спробуємо створити каталог "lost+found".

mkmountpoint

 mkmountpoint вільний_шлях

"mkmountpoint" і "rmmountpoint" є спеціалізованими викликами, якими можна скористатися для створення додаткових точок монтування перед монтуванням першої файлової системи.

Ця виклики необхідні лише у дуже обмежених випадках. Основним їхнім призначенням є випадок, коли ви хочете змонтувати суміш непов'язаних і/або придатних лише для читання файлових систем разом.

Наприклад, образи компакт-дисків портативних систем часто місять «матрьошку» з файлових систем: зовнішній шар ISO, образ squashfs всередині і вкладений у нього образ ext2/3. Розпакувати такий образ у guestfish можна таким чином:

 add-ro Fedora-11-i686-Live.iso
 run
 mkmountpoint /cd
 mkmountpoint /sqsh
 mkmountpoint /ext3fs
 mount /dev/sda /cd
 mount-loop /cd/LiveOS/squashfs.img /sqsh
 mount-loop /sqsh/LiveOS/ext3fs.img /ext3fs

Внутрішню файлову систему тепер розпаковано до точки монтування /ext3fs.

"mkmountpoint" є несумісною з "umount-all". Якщо ви спробуєте суміщати ці виклики, можуть статися неочікувані помилки. Найбезпечніше демонтувати файлові системи вручну, а потім вилучити точки монтування після використання.

"umount-all" демонтує файлові системи упорядковуючи шляхи так, щоб у списку найдовші шляхи були першими. Щоб ця команда могла працювати зі створеними вручну точками монтування, системи має бути змонтовано так, щоб точки монтування із найбільшим рівнем вкладеності мали найдовші назви шляхів, як у наведеному вище прикладі.

Докладніше про це тут: https://bugzilla.redhat.com/show_bug.cgi?id=599503

Автоматична синхронізація [див. "set-autosync", встановлюється типово на дескрипторах] може спричиняти виклик "umount-all", коли дескриптор закривається, що теж може призвести до таких проблем.

mknod

 mknod режим первинний_пристрій вторинний_пристрій шлях

Створює спеціальні блокові або символьні пристрої або іменовані канали (FIFO).

Параметр "режим" має визначати режим доступу з використанням стандартних сталих. Параметри "первинний_пристрій" і "вторинний_пристрій" є номерами первинного і вторинного пристроїв, які використовуються, лише під час створення спеціальних блокових та символьних пристроїв.

Зауважте, що, як і у mknod(2), значення режиму має бути результатом застосування бітового АБО до значень S_IFBLK, S_IFCHR, S_IFIFO та S_IFSOCK (інакше цей виклик просто створить звичайний файл). Ці сталі доступні у стандартних файлах заголовків Linux. Ви також можете скористатися "mknod-b", "mknod-c" або "mkfifo", які є обгортками навколо цієї команди, які виконують бітове АБО і створюють відповідну сталу за вас.

На встановлений режим доступу впливає umask.

Працездатність цієї команди залежить від можливості "mknod". Див. також "feature-available".

mknod-b

 mknod-b режим первинний_пристрій вторинний_пристрій шлях

Створює вузол блокового пристрою із назвою "шлях" і режимом доступу "режим" та первинний і вторинний пристрої "первинний_пристрій" і "вторинний пристрій". Це лише зручна обгортка навколо "mknod".

На відміну від "mknod", параметр "режим" має містити лише біти прав доступу.

На встановлений режим доступу впливає umask.

Працездатність цієї команди залежить від можливості "mknod". Див. також "feature-available".

mknod-c

 mknod-c режим первинний_пристрій вторинний_пристрій шлях

Створює вузол символьного пристрою із назвою "шлях" і режимом доступу "режим" та первинний і вторинний пристрої "первинний_пристрій" і "вторинний пристрій". Це лише зручна обгортка навколо "mknod".

На відміну від "mknod", параметр "режим" має містити лише біти прав доступу.

На встановлений режим доступу впливає umask.

Працездатність цієї команди залежить від можливості "mknod". Див. також "feature-available".

mksquashfs

 mksquashfs шлях (назва_файла|-) [compress:..] [excludes:..]

Створює файлову систему squashfs для вказаного шляху "шлях".

Необов'язковий прапорець "compress" керує стисканням. Якщо його не вказано, виведені дані буде стиснуто за допомогою "gzip". Ви також можете вказати такі рядки для вибору типу стискання squashfs: "gzip", "lzma", "lzo", "lz4", "xz".

Іншими необов'язковими параметрами є такі:

"excludes"
Список шаблонів. Файли буде виключено, якщо вони відповідатимуть якомусь із вказаних шаблонів.

Будь ласка, зауважте, що цей програмний інтерфейс може не спрацювати, якщо ним користуватися для стискання каталогів із великими файлами, зокрема такими, для яких отримана файлова система squashfs матиме об'єм понад 3 ГБ.

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "squashfs". Див. також "feature-available".

mkswap

mkswap-opts

 mkswap пристрій [label:..] [uuid:..]

Створює розділ резервної пам'яті на диску (swap) Linux на пристрої "пристрій".

За допомогою аргументів параметра "мітка" і "uuid" ви можете вказати мітку і/або UUID для нового розділу резервної пам'яті на диску.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

mkswap-L

 mkswap-L мітка пристрій

Створює розділ резервної пам'яті на диску на пристрої "пристрій" зі міткою "мітка".

Зауважте, що не можна додавати мітку резервної пам'яті на диску (swap) до блокового пристрою (наприклад, до /dev/sda), лише до розділу. Здається, це є обмеженням ядра або інструментів для роботи із розділом резервної пам'яті на диску.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "mkswap".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

mkswap-U

 mkswap-U uuid пристрій

Створює розділ резервної пам'яті на диску на пристрої "пристрій" із UUID "uuid".

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "mkswap".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

Працездатність цієї команди залежить від можливості "linuxfsuuid". Див. також "feature-available".

mkswap-file

 mkswap-file шлях

Створити файл резервної пам’яті.

Ця команда просто записує підпис файла резервної пам'яті на диску до наявного файла. Для створення самого файла скористайтеся чимось подібним до "fallocate".

mktemp

 mktemp тимчасовий_файл [suffix:..]

Ця команда створює тимчасовий файл. Значенням параметра "tmpl" має бути повна назва шляху до тимчасового каталогу із завершальними шістьма символами «XXXXXX».

Приклади: «/tmp/myprogXXXXXX» або «/Temp/myprogXXXXXX». Другий варіант є придатним для файлових систем Windows.

Буде повернуто назву тимчасового файла, який було створено.

Тимчасовий файл буде створено із режимом доступу 0600, його власником буде користувач root.

За вилучення тимчасового файла після використання відповідає функція виклику.

Якщо буде вказано необов'язковий параметр "suffix", до назви тимчасового файла буде додано вказаний суфікс (наприклад, ".txt").

Див. також "mkdtemp".

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

modprobe

 modprobe назва_модуля

Завантажує модуль ядра у базовій системі.

Працездатність цієї команди залежить від можливості "linuxmodules". Див. також "feature-available".

mount

 mount монтований_пристрій точка_монтування

Монтує диск гостьової системи до вказаного місця у файловій системі. Назви блокових пристроїв визначаються за схемою /dev/sda, /dev/sdb тощо за порядком, у якому їх було додано до гостьової системи. Якщо на цих блокових пристроях містяться розділи, вони матимуть звичні назви (наприклад /dev/sda1). Крім того, можна використовувати назви у стилі LVM /dev/група_томів/логічний_том або рядки «mountable», які повертають команди "list-filesystems" та "inspect-get-mountpoints".

Правила є тими самими, що і для mount(2): файлову систему має бути спочатку змонтовано до /, а вже потім мають монтуватися інші файлові системи. Інші файлові системи може бути змонтовано лише до каталогів, які вже створено у системі.

Змонтована файлова система є придатною до запису, якщо є достатні права доступу до підлеглого пристрою.

До версії libguestfs 1.13.16 цей виклик неявним чином додавав параметри монтування "sync" та "noatime". Використання параметра "sync" значно уповільнювало запис і спричиняло значні проблеми для користувачів. Якщо ваша програма має працювати із застарілими версіями libguestfs, краще скористайтеся "mount-options" (використовуючи порожній рядок як перший параметр, якщо ви не хочете визначати ніяких нетипових параметрів монтування).

mount-9p

 mount-9p мітка_монтування точка_монтування [options:..]

Монтує файлову систему virtio-9p із міткою "мітка_монтування" до каталогу "точка_монтування".

Якщо потрібно, до параметрів буде автоматично додано "trans=virtio". Усі інші потрібні параметри можна передати за допомогою необов'язкового параметра "options".

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

mount-local

 mount-local локальна_точка_монтування [readonly:true|false] [options:..] [cachetimeout:N] [debugcalls:true|false]

Цей виклик експортує доступну для libguestfs файлову систему до локальної точки монтування (каталогу) із назвою "локальна_точка_монтування". Звичайні запити щодо читання і запису до файлів і каталогів у каталозі "локальна_точка_монтування" переспрямовуватимуться через libguestfs.

Якщо для необов'язкового прапорця "readonly" встановлено значення true, спроби запису до файлової системи призводитимуть до помилки "EROFS".

Аргументом "options" має бути список параметрів монтування, відокремлених комами. Корисну інформацію щодо параметрів можна знайти на сторінці підручника щодо guestmount(1).

"cachetimeout" встановлює час очікування у секундах на отримання записів каталогу кешування. Типовим значенням є 60 секунд. Див. guestmount(1), щоб дізнатися більше.

Якщо для параметра "debugcalls" встановлено значення true, для кожного виклику FUSE створюються додаткові діагностичні дані.

Коли "mount-local" повертає керування, файлова система готова, але не обробляє запити (доступ до неї блокуватиметься). Вам слід викликати "mount-local-run", щоб запустити основний цикл обробки.

Із повною документацією можна ознайомитися у розділі "ЛОКАЛЬНЕ МОНТУВАННЯ" in guestfs(3).

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

mount-local-run

 mount-local-run

Виконує основний цикл обробки, який перетворює виклики ядра на виклики libguestfs.

Цю команду слід викликати, лише якщо успішно виконано "mount-local". Виклик команди не поверне керування, доки файлову систему не буде змонтовано.

Зауваження: не виконуйте конкурентні виклики libguestfs щодо одного дескриптора з різних потоків обробки.

Ви можете викликати цю команду із іншого потоку обробки ніж той, з якого викликано "mount-local", виконуючи звичні правила щодо роботи з декількома потоками обробки і libguestfs (див. "ОБРОБКА У ДЕКІЛЬКА ДЕСКРПИТОРІВ І ПОТОКІВ" in guestfs(3)).

Із повною документацією можна ознайомитися у розділі "ЛОКАЛЬНЕ МОНТУВАННЯ" in guestfs(3).

mount-loop

 mount-loop файл точка_монтування

За допомогою цієї команди ви можете змонтувати файл (образ файлової системи у файлі) до точки монтування. Це точний еквівалент команди "mount -o loop файл точка_монтування".

mount-options

 mount-options параметри монтування точка_монтування

Те саме, що і команда "mount", але надає вам змогу встановити параметри монтування, подібно до параметра команди mount(8) -o.

Якщо значенням параметра "параметри" є порожній рядок, параметри не передаватимуться (буде використано типовий набір параметрів для файлової системи).

mount-ro

 mount-ro монтування точка_монтування

Те саме, що і команда "mount", але монтує файлову систему у режимі лише читання (використовує параметр -o ro).

mount-vfs

 mount-vfs параметри тип_файлової_системи монтування точка_монтування

Те саме, що і команда "mount", але надає вам змогу встановити параметри монтування і тип файлової системи, подібно до параметрів команди mount(8) -o і -t.

mountable-device

 mountable-device монтування

Повертає назву пристрою для монтування. У переважній кількості випадків значенням параметра «монтування» є назва пристрою.

Втім, це не стосується підтомів btrfs, де значенням параметра «монтування» є поєднання назви пристрою та шляху до підтому (див. також "mountable-subvolume", щоб дізнатися про те, як визначити шлях до підтому для монтування, якщо такий передбачено).

mountable-subvolume

 mountable-subvolume монтування

Повертає шлях до підтому для монтування. Монтування підтомів btrfs є поєднаннями назви пристрою і шляху до підтому (див. також "mountable-device", щоб дізнатися про те, як визначити назву пристрою для монтування).

Якщо монтування є не підтомом btrfs, ця функція завершує роботу із помилкою і встановлює для "errno" значення "EINVAL".

mountpoints

 mountpoints

Цей виклик подібний до "mounts". Виклик повертає список пристроїв. Запис списку є таблицею хешів (картою) з назви пристрою і каталогу, до якого змонтовано пристрій.

mounts

 mounts

Повертає список поточних змонтованих файлових систем. Результатом виконання є список пристроїв (наприклад, /dev/sda1, /dev/VG/LV).

Деякі внутрішні монтування не буде включено до списку.

Див. також "mountpoints"

mv

 mv джерело призначення

Пересуває файл з адреси "джерело" до адреси "призначення", де значенням "призначення" є або назва файла призначення, або назва каталогу призначення.

Див. також "rename".

nr-devices

 nr-devices

Повертає кількість усіх доданих блокових пристроїв. Це та сама кількість пристроїв, яку було б повернуто, якби ви викликали "list-devices".

Щоб визначити максимальну кількість пристроїв, які може бути додано, викличте "max-disks".

ntfs-3g-probe

 ntfs-3g-probe true|false пристрій

Ця команда запускає програму ntfs-3g.probe(8), яка зондує пристрій NTFS "пристрій" на можливість монтування. (Не усі томи NTFS може бути змонтовано для читання і запису, а деякі не може бути змонтовано взагалі).

"rw" є булевим прапорцем. Встановіть значення true, якщо ви хочете перевірити, чи можна змонтувати том у режимі читання-запису. Встановіть значення false, якщо ви хочете перевірити, чи може бути змонтовано тому у режимі лише читання.

Повертає ціле значення рівне 0, якщо дію з монтування може бути виконано успішно, або рівне якомусь іншому значенню, документацію щодо якого можна знайти на сторінці підручника щодо ntfs-3g.probe(8).

Працездатність цієї команди залежить від можливості "ntfs3g". Див. також "feature-available".

ntfscat-i

 ntfscat-i пристрій inode (назва файла|-)

Отримати файл, заданий за допомогою inode, з файлової системи NTFS і зберегти його з назвою назва файла на локальній машині.

Надає змогу отримувати недоступні у інший спосіб файли, зокрема файли з теки $Extend.

Файлову систему, звідки слід видобути файл, має бути демонтовано. Якщо цього не буде зроблено, виклик завершиться повідомленням про помилку.

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

ntfsclone-in

 ntfsclone-in (файл_резервної_копії|-) пристрій

Відновити "файл_резервної_копії" (створений попереднім викликом "ntfsclone-out") на пристрої "пристрій" із перезаписом усього наявного вмісту пристрою.

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

Працездатність цієї команди залежить від можливості "ntfs3g". Див. також "feature-available".

ntfsclone-out

 ntfsclone-out пристрій (backupfile|-) [metadataonly:true|false] [rescue:true|false] [ignorefscheck:true|false] [preservetimestamps:true|false] [force:true|false]

Записати дані файлової системи NTFS з пристрою "пристрій" до локального файла "файл_резервної_копії". Для файла резервної копії буде використано спеціальний формат, який використовується програмою ntfsclone(8).

Якщо для необов'язкового прапорця "metadataonly" встановлено значення true, збережено буде лише метадані. Усі дані користувача буде втрачено (такий режим є корисним для діагностування проблем файлової системи).

Опис необов'язкових прапорців "rescue", "ignorefscheck", "preservetimestamps" та "force" можна знайти на сторінці підручника ntfsclone(8).

Використовує "ntfsclone-in" для відновлення резервної копії у файлі на пристрої libguestfs.

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "ntfs3g". Див. також "feature-available".

ntfsfix

 ntfsfix пристрій [clearbadsectors:true|false]

Ця команда виправляє деякі фундаментальні проблеми NTFS, відновлює початковий стан журналу NTFS і додає заплановану перевірку коректності NTFS під час першого ж завантаження до Windows.

Ця команда не є еквівалентом "chkdsk" Windows. Вона не виконує перевірки коректності файлової системи.

За допомогою необов'язкового прапорця "clearbadsectors" можна спорожнити список помилкових секторів. Це корисно при клонуванні диска із помилковими секторами на новий диск.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "ntfs3g". Див. також "feature-available".

ntfsresize

ntfsresize-opts

 ntfsresize пристрій [size:N] [force:true|false]

Ця команда змінює розмір файлової системи NTFS, розширюючи або стискаючи її до розміру підлеглого пристрою.

Додатковими параметрами є:

"розмір"
Новий розмір (у байтах) файлової системи. Якщо не вказано, розмір файлової системи буде змінено до розмірів контейнера (наприклад розділу).
"force"
Якщо цей параметр має значення true, буде виконано примусову зміну розміру файлової системи, навіть якщо файлову систему позначено як таку, яка потребує перевірки на коректність.

Після виконання дії зі зміни розміру файлову систему завжди буде позначено як таку, яка потребує перевірки на коректність (з міркувань безпеки). Вам слід завантажити Windows, щоб виконати перевірку і зняти позначення. Якщо ви не встановлювали параметр "force", "ntfsresize" не можна буде викликати декілька разів поспіль для однієї файлової системи без завантаження Windows між діями зі зміни розміру.

Див. також ntfsresize(8).

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "ntfsprogs". Див. також "feature-available".

ntfsresize-size

 ntfsresize-size пристрій розмір

Ця команда виконує ті самі дії, що і "ntfsresize", але вона надає вам змогу вказати новий розмір (у байтах) явним чином.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "ntfsresize".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

Працездатність цієї команди залежить від можливості "ntfsprogs". Див. також "feature-available".

parse-environment

 parse-environment

Виконує обробку середовища програми і встановлює прапорців у дескрипторі відповідним чином. Наприклад, якщо "LIBGUESTFS_DEBUG=1", у дескрипторі буде встановлено прапорець «verbose».

У більшості програм потреби у виконанні цієї дії немає. Дія неявним чином виконується під час виклику "create".

Див. "ЗМІННІ СЕРЕДОВИЩА" in guestfs(3), де наведено список змінних середовища, які впливають на засоби обробки libguestfs. Див. також "guestfs_create_flags" in guestfs(3) та "parse-environment-list".

parse-environment-list

 parse-environment-list 'середовище ...'

Обробляє список рядків у аргументі "середовище" і встановлює відповідним чином прапорці у дескрипторі. Наприклад, якщо у списку є рядок "LIBGUESTFS_DEBUG=1", у дескрипторі буде встановлено прапорець «verbose».

Те саме, що і "parse-environment", але обробляє явним список рядків, замість середовища програми.

part-add

 part-add пристрій prlogex початковий_сектор кінцевий_сектор

Ця команда додає розділ на "пристрій". Якщо на пристрої немає таблиці розділів, спочатку слід викликати "part-init".

Значенням параметра "prlogex" є тип розділу. Зазвичай, вам слід передати тип "p" або "primary", але у таблицях розділів MBR також передбачено підтримку типів розділів "l" (або "logical") і "e" (або "extended").

Значеннями параметрів "початковий_сектор" і "кінцевий_сектор" є початок і кінець розділу, вказані за номерами секторів. Значенням параметра "кінцевий_сектор" може бути від'ємне значення, що означає, що сектори слід лічити з кінця диска ("-1" означає «останній сектор»).

Створення розділу, який займатиме увесь диск є непростою справою. Для виконання цього завдання скористайтеся "part-disk".

part-del

 part-del пристрій номер_розділу

Ця команда вилучає розділ із номером "номер_розділу" на пристрої "пристрій".

Зауважте, що у випадку розділів у MBR вилучення розширеного розділу призводить до вилучення усіх логічних розділів, які на ньому містяться.

part-disk

 part-disk пристрій тип_розділу

Ця команда є простою комбінацією "part-init" з наступною "part-add" для створення єдиного основного розділу, який займатиме увесь диск.

Значенням параметра "тип_розділу" є тип таблиці розділів, зазвичай, "mbr" або "gpt", але можливі і інші значення, описані у довідці з "part-init".

part-expand-gpt

 part-expand-gpt пристрій

Пересуває резервні копії структур даних GPT у кінець диска. Корисно у випадку розширення образу на місці, оскільки простір на диску після резервної копії заголовка GPT не можна використовувати. Еквівалент "sgdisk -e".

Див. також sgdisk(8).

Працездатність цієї команди залежить від можливості "gdisk". Див. також "feature-available".

part-get-bootable

 part-get-bootable пристрій номер_розділу

Ця команда повертає true, якщо для розділу "номер_розділу" на пристрої "пристрій" встановлено прапорець можливості завантаження.

Див. також "part-set-bootable".

part-get-disk-guid

 part-get-disk-guid пристрій

Повертає ідентифікатор диска (GUID) пристрою "пристрій" із таблицею розділів GPT. Для інших типів таблиць розділів поведінку команди не визначено.

Працездатність цієї команди залежить від можливості "gdisk". Див. також "feature-available".

part-get-gpt-attributes

 part-get-gpt-attributes пристрій номер_розділу

Повертає прапорці атрибутів вказаного за номером розділу GPT "номер_розділу". Повертає помилку для розділів MBR.

Працездатність цієї команди залежить від можливості "gdisk". Див. також "feature-available".

part-get-gpt-guid

 part-get-gpt-guid пристрій номер_розділу

Повертає GUID вказаного за номером розділу GPT "номер_розділу".

Працездатність цієї команди залежить від можливості "gdisk". Див. також "feature-available".

part-get-gpt-type

 part-get-gpt-type пристрій номер_розділу

Повертає GUID типу вказаного за номером розділу GPT "номер_розділу". Для розділів MBR повертає відповідний GUID для типу MBR. Для інших типів розділів поведінку не визначено.

Працездатність цієї команди залежить від можливості "gdisk". Див. також "feature-available".

part-get-mbr-id

 part-get-mbr-id пристрій номер_розділу

Повертає байт типу MBR (також відомий як байт ID) для вказаного за номером розділу "номер_розділу".

Зауважте, що байти типу мають лише розділи MBR (застарілі розділи у стилі DOS). Ви отримаєте невизначені результати для інших типів таблиць розділів (див. "part-get-parttype").

part-get-mbr-part-type

 part-get-mbr-part-type пристрій номер_розділу

Повертає тип розділу MBR, вказаного за номером "номер_розділу", на пристрої "пристрій".

Повертає "primary", "logical" або "extended".

part-get-name

 part-get-name пристрій номер_розділу

Ця команда отримує назву розділу на вказаному за номером розділі "номер розділу" на пристрої "пристрій". Зауважте, що нумерація розділів розпочинається з 1.

Назву розділу можна прочитати лише для певних типів таблиць розділів. Це працює для таблиць "gpt", але не для таблиць "mbr".

part-get-parttype

 part-get-parttype пристрій

Ця команда виконує вивчення таблиці розділів на пристрої "пристрій" і повертає тип таблиці розділів (формат), який на ньому використано.

Серед типових повернутих значень: "msdos" (таблиця розділів MBR у стилі DOS/Windows), "gpt" (таблиця розділів у стилі GPT/EFI). Можливі також інші значення, але вони є рідкісними. Повний список можна знайти у розділі щодо "part-init".

part-init

 part-init пристрій тип_розділу

Ця команда створює порожню таблицю розділів на пристрої "пристрій", використовуючи тип розділів із наведеного нижче списку. Зазвичай, значенням параметра "тип_розділу" має бути "msdos" або "gpt" (для великих дисків).

Спочатку на пристрої немає розділів. Після цієї команди вам слід викликати "part-add" для кожного потрібного вам розділу.

Можливі значення для параметра "тип_розділу":

"efi"
"gpt"
Таблиця розділів EFI / GPT Intel.

Цей варіант є рекомендованим для розділів із розміром >= 2 ТБ, доступ до яких здійснюватиметься з Linux та заснованої на архітектурі Intel Mac OS X. Крім того, цей варіант має обмежену зворотну сумісність із форматом "mbr".

"mbr"
"msdos"
Стандартний для ПК формат «Master Boot Record» (MBR), який використовувався MS-DOS і Windows. Цей тип розділу працюватиме лише для пристроїв, розмір яких не перевищує 2 ТБ. Для дисків більшого розміру ми рекомендуємо скористатися "gpt".

Для інших типів таблиць розділів це теж може працювати, але їхньої підтримки не передбачено. Це зокрема:

"aix"
Мітки дисків AIX.
"amiga"
"rdb"
Формат "Rigid Disk Block" Amiga.
"bsd"
Мітки дисків BSD.
"dasd"
DASD, використовувалися у мейнфреймах IBM.
"dvh"
Томи MIPS/SGI.
"mac"
Старий формат розділів Mac. Сучасні системи Mac використовують "gpt".
"pc98"
Формат NEC PC-98, поширений у Японії.
"sun"
Мітки дисків Sun.

part-list

 part-list device

Ця команда обробляє таблицю розділів пристрою "пристрій" і повертає список знайдених розділів.

Поля повернутої структури:

"part_num"
Номер розділу, відлік від 1.
"part_start"
Позиція початку розділу у байтах. Для отримання позиції у секторах вам слід поділити це значення на розмір сектора, див. "blockdev-getss".
"part_end"
Позиція завершення розділу у байтах.
"part_size"
Розмір розділу у байтах.

part-resize

 part-resize пристрій номер_розділу кінцевий_сектор

Ця команда змінює розмір розділу із номером "номер_розділу" на пристрої "пристрій", посуваючи позицію кінця розділу.

Зауважте, що ця команда не вносить змін до файлових систем на розділі. Якщо вам потрібно змінити розмір файлової системи, вам слід скористатися командами зміни розмірів файлових систем, наприклад "resize2fs".

Якщо ви збільшуєте розміри розділу, далі вам слід збільшити розміри файлової системи. Якщо ж ви зменшуєте розміри розділу, спочатку вам слід зменшити розміри файлової системи на ньому.

part-set-bootable

 part-set-bootable пристрій номер_розділу true|false

Ця команда встановлює прапорець можливості завантаження на вказаному за номером розділі "номер розділу" на пристрої "пристрій". Зауважте, що нумерація розділів розпочинається з 1.

Прапорець можливості завантаження використовується певними операційними системами (найпоширенішою з яких є Windows) для визначення розділу, з якого слід виконувати завантаження. Він ніяким чином не є універсальним.

part-set-disk-guid

 part-set-disk-guid пристрій guid

Встановлює ідентифікатор диска (GUID) пристрою із таблицею розділів GPT "пристрій" у значення "guid". Повертає помилку, якщо таблицею розділів пристрою "пристрій" не є GPT або якщо "guid" не є коректним GUID.

Працездатність цієї команди залежить від можливості "gdisk". Див. також "feature-available".

part-set-disk-guid-random

 part-set-disk-guid-random пристрій

Встановлює ідентифікатор диска (GUID) пристрою із таблицею розділів GPT "пристрій" у створене випадковим чином значення. Повертає помилку, якщо таблицею розділів пристрою "пристрій" не є GPT.

Працездатність цієї команди залежить від можливості "gdisk". Див. також "feature-available".

part-set-gpt-attributes

 part-set-gpt-attributes пристрій номер_розділу атрибути

Встановлює прапорці атрибутів вказаного за номером розділу GPT "номер_розділу" у значення "атрибути". Повертає помилку, якщо таблицею розділів пристрою "пристрій" не є GPT.

Див. https://en.wikipedia.org/wiki/GUID_Partition_Table#Partition_entries, де наведено корисний список атрибутів розділів.

Працездатність цієї команди залежить від можливості "gdisk". Див. також "feature-available".

part-set-gpt-guid

 part-set-gpt-guid пристрій номер_розділу guid

Встановлює GUID вказаного за номером "номер_розділу" пристрою із таблицею розділів GPT "пристрій" у значення "guid". Повертає помилку, якщо таблицею розділів пристрою "пристрій" не є GPT або якщо "guid" не є коректним GUID.

Працездатність цієї команди залежить від можливості "gdisk". Див. також "feature-available".

part-set-gpt-type

 part-set-gpt-type пристрій номер_розділу guid

Встановлює GUID типу пристрою вказаного за номером "номер_розділу" пристрою із таблицею розділів GPT у значення "guid". Повертає помилку, якщо таблицею розділів пристрою "пристрій" не є GPT або якщо "guid" не є коректним GUID.

See https://en.wikipedia.org/wiki/GUID_Partition_Table#Partition_type_GUIDs for a useful list of type GUIDs.

Працездатність цієї команди залежить від можливості "gdisk". Див. також "feature-available".

part-set-mbr-id

 part-set-mbr-id пристрій_номер розділу ід_байт

Встановлює байт типу MBR (також відомий як байт ID) для вказаного за номером розділу "номер_розділу" у значення "ід_байт". Зауважте, що байти типів у більшій частині документації є насправді шістнадцятковими числами, але фігурують у тексті без початкового «0x», що може ввести читача в оману.

Зауважте, що байти типу мають лише розділи MBR (застарілі розділи у стилі DOS). Ви отримаєте невизначені результати для інших типів таблиць розділів (див. "part-get-parttype").

part-set-name

 part-set-name пристрій номер_розділу назва

Ця команда встановлює назву розділу на вказаному за номером розділі "номер розділу" на пристрої "пристрій". Зауважте, що нумерація розділів розпочинається з 1.

Назву розділу можна встановити лише для певних типів таблиць розділів. Це працює для таблиць "gpt", але не для таблиць "mbr".

part-to-dev

 part-to-dev розділ

Цій функції передається назва розділу (наприклад «/dev/sdb1»), вона вилучає номер розділу, повертаючи назву розділу (наприклад «/dev/sdb»).

Іменований розділ має існувати, наприклад, як рядок, який повертає "list-partitions".

Див. також "part-to-partnum", "device-index".

part-to-partnum

 part-to-partnum розділ

Цій функції передається назва розділу (наприклад «/dev/sdb1»), вона повертає номер розділу (наприклад 1).

Іменований розділ має існувати, наприклад, як рядок, який повертає "list-partitions".

Див. також "part-to-dev".

ping-daemon

 ping-daemon

Це зонд для тестування фонової служби guestfs, запущеної у базовій системі libguestfs. Виклик цієї служби перевіряє, чи відповідає фонова служба на луна-повідомлення, ніяк інакше не впливаючи на роботу фонової служби або долучених блокових пристроїв.

pread

 pread шлях кількість відступ

За допомогою цієї команди ви можете прочитати частину файла. Вона читає "кількість" байтів з файла, починаючи з позиції "відступ". Файл задається записом "шлях".

Команда може прочитати менше байтів, ніж було вказано у параметрах команди. Щоб дізнатися більше про це, ознайомтеся зі сторінкою підручника щодо системного виклику pread(2).

Див. також "pwrite", "pread-device".

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

pread-device

 pread-device пристрій кількість відступ

За допомогою цієї команди ви можете прочитати частину вмісту блокового пристрою. Вона читає "кількість" байтів з пристрою "пристрій", починаючи з позиції "відступ".

Команда може прочитати менше байтів, ніж було вказано у параметрах команди. Щоб дізнатися більше про це, ознайомтеся зі сторінкою підручника щодо системного виклику pread(2).

Див. також "pread".

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

pvchange-uuid

 pvchange-uuid пристрій

Створити новий випадковий UUID для фізичного тому "пристрій".

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

pvchange-uuid-all

 pvchange-uuid-all

Створити нові випадкові UUID для всіх фізичних томів.

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

pvcreate

 pvcreate пристрій

Ця команда створює фізичний том LVM із назвою "пристрій", де "пристрій", зазвичай, має бути назвою розділу, наприклад /dev/sda1.

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

pvremove

 pvremove пристрій

Ця команда витирає вміст фізичного тому "пристрій" так, що LVM більше його не розпізнає.

The implementation uses the pvremove(8) command which refuses to wipe physical volumes that contain any volume groups, so you have to remove those first.

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

pvresize

 pvresize пристрій

Ця команда змінює розмір (розширює або стискає) наявний логічний том LVM так, щоб він відповідав за розміром новому розміру базового пристрою.

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

pvresize-size

 pvresize-size пристрій розмір

Ця команда виконує ті самі дії, що і "pvresize", але вона надає вам змогу вказати новий розмір (у байтах) явним чином.

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

pvs

 pvs

Виводить список усіх виявлених фізичних томів. Є еквівалентом команди pvs(8).

Ця команда повертає список назв лише тих пристроїв, на яких містяться фізичні томи (наприклад /dev/sda2).

Див. також "pvs-full".

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

pvs-full

 pvs-full

Виводить список усіх виявлених фізичних томів. Є еквівалентом команди pvs(8). «Повна» версія включає усі поля.

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

pvuuid

 pvuuid пристрій

Ця команда повертає UUID фізичного тому LVM "пристрій".

pwrite

 pwrite шлях дані відступ

Ця команда записує частину файла. Команда записує буфер даних "дані" до файла "шлях", починаючи з відступу "відступ".

Ця команда реалізує системний виклик pwrite(2) і, подібно до цього системного виклику, вона може не записати повністю вказані дані. Повернуте значення є кількістю байтів, які насправді було записано до файла. Цим значенням може бути навіть 0, хоча обрізані записи є малоймовірними для звичайних файлів у звичайних обставинах.

Див. також "pread", "pwrite-device".

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

pwrite-device

 pwrite-device пристрій дані відступ

Ця команда записує частину пристрою. Команда записує буфер даних "дані" до пристрою "пристрій", починаючи з відступу "відступ".

Ця команда реалізує системний виклик pwrite(2) і, подібно до цього системного виклику, вона може не записати повністю вказані дані (хоча обрізаний запис на дискові пристрої і розділи майже неможливий зі стандартними ядрами Linux).

Див. також "pwrite".

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

read-file

 read-file шлях

Цей виклик повертає вміст файла "шлях" як буфер даних.

На відміну від "cat", ця функція може правильно обробляти файли, які містять вбудовані символи NUL ASCII.

read-lines

 read-lines шлях

Повертає вміст файла із назвою "шлях".

Вміст файла повертається як список рядків. Послідовності символів "LF" та "CRLF" наприкінці рядків не повертаються.

Зауважте, що ця функція не може належним чином обробляти двійкові файли (особливо, файли, у яких містяться символи "\0", які вважаються символами кінця рядка). Для таких файлів слід використовувати функцію "read-file" і ділити буфер на рядки власноруч.

readdir

 readdir каталог

Ця команда повертає список записів у каталозі "каталог".

Буде повернуто усі записи у каталозі, зокрема і записи "." та "..". Записи не упорядковуватимуться, їх буде повернуто у тому самому порядку, у якому вони зберігаються у базовій файловій системі.

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

'b'
Блоковий особливий
'c'
Символьний особливий
'd'
Каталог
'f'
FIFO (іменований канал)
'l'
Символічне посилання
'r'
Звичайний файл
's'
Сокет
'u'
Невідомий тип файла
'?'
Викликом readdir(3) повернуто поле "d_type" із неочікуваним значенням

Цю функцію створено, в основному, для використання у програмах. Щоб отримати простий список назв, скористайтеся "ls". Щоб отримати придатний для друку і сприйняття людиною список каталогу, скористайтеся "ll".

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

 readlink шлях

Ця команда читає файл, на який посилається символічне посилання.

 readlinklist шлях 'назви ...'

Цей виклик надає змогу виконувати дію "readlink" над декількома файлами, які зберігаються у каталозі "шлях". Значенням аргументу "назви" є список файлів у цьому каталозі.

Повернуто буде список рядків із однозначною відповідністю до списку "назви". У кожному рядку буде значення символічного посилання.

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

Цю команду призначено для програм, яким потрібно ефективно будувати список вмісту каталогів без виконання багатьох обходів.

realpath

 realpath шлях

Повертає перетворену до канонічної форми абсолютну назву шляху "шлях". У повернутому шляху не буде елементів ".", ".." або шляхів символічних посилань.

remount

 remount точка_монтування [rw:true|false]

За допомогою цього виклику ви можете змінити значення прапорця "rw" (лише читання/читання і запис) на вже змонтованій до точки монтування "точка_монтування" файловій системі, перетворивши придатну лише для читання файлову систему на систему із можливостями читання і запису, і навпаки.

Зауважте, що у поточній версії вам доведеться вказати «необов'язковий» параметр "rw". У майбутньому ми можемо уможливити зміну інших прапорців файлової системи.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

remove-drive

 remove-drive мітка

Концептуально, ця функція є протилежністю "add-drive-opts". Вона вилучає диск, який раніше було додано з міткою "мітка".

Зауважте, що для вилучення дисків за допомогою цієї команди вам слід додавати їх з мітками (див. необов'язковий аргумент "label" у "add-drive-opts"). Якщо ви не вказали мітку, вилучити диск за допомогою цієї команди не вдасться.

Цю функцію можна викликати до або після запуску дескриптора. Якщо її викликано після запуску і підтримку подібної операції передбачено у модулі обробки, буде виконано спробу від'єднання диска у «гарячому» режимі: див. "З'ЄДНАННЯ У «ГАРЯЧОМУ» РЕЖИМІ" in guestfs(3). Диск під час цієї операції вже не повинен використовуватися (тобто бути змонтованим). Функція намагатиметься визначити, чи використовується диск, і запобігатиме від'єднанню використаних дисків.

removexattr

 removexattr розширений_атрибут шлях

Цей виклик вилучає розширений атрибут із назвою "розширений_атрибут" з файла "шлях".

Див. також "lremovexattr", attr(5).

Працездатність цієї команди залежить від можливості "linuxxattrs". Див. також "feature-available".

rename

 rename стара_адреса нова_адреса

Перейменовує файл, пересуваючи його до нового місця у файловій системі. Те саме, що системний виклик rename(2) у Linux. У більшості випадків варто замість цієї команди використовувати "mv".

resize2fs

 resize2fs пристрій

Змінює розміри файлової системи ext2, ext3 або ext4 так, щоб її розмір збігався із розміром базового пристрою.

Див. також "RESIZE2FS ERRORS" in guestfs(3).

resize2fs-M

 resize2fs-M пристрій

This command is the same as "resize2fs", but the filesystem is resized to its minimum size. This works like the -M option to the resize2fs(8) command.

Щоб отримати остаточний розмір файлової системи, вам слід викликати "tune2fs-l" і прочитати значення "Block size" та "Block count". Ці два числа, перемножені між собою, дадуть остаточний розмір файлової системи у байтах.

Див. також "RESIZE2FS ERRORS" in guestfs(3).

resize2fs-size

 resize2fs-size пристрій розмір

Ця команда виконує ті самі дії, що і "resize2fs", але вона надає вам змогу вказати новий розмір (у байтах) явним чином.

Див. також "RESIZE2FS ERRORS" in guestfs(3).

rm

 rm шлях

Вилучити одинарний файл "шлях".

rm-f

 rm-f шлях

Вилучити файл "шлях".

Якщо файла не існує, помилку буде проігноровано. (Інші помилки, наприклад помилки введення-виведення та помилки у шляхах, не ігноруватимуться.)

Ця команда не може вилучати каталоги. Для вилучення порожнього каталогу скористайтеся командою "rmdir". Для рекурсивного вилучення каталогів слід використовувати "rm-rf".

rm-rf

 rm-rf шлях

Вилучає файл або каталог "шлях". Діє рекурсивно, якщо вказано каталог. Подібна до команди "rm -rf", відданої з командної оболонки.

rmdir

 rmdir шлях

Вилучає окремий каталог "шлях".

rmmountpoint

 rmmountpoint вільний_шлях

Цей виклик вилучає точку монтування, яку перед цим було створено за допомогою команди "mkmountpoint". Щоб дізнатися більше, ознайомтеся із розділом щодо "mkmountpoint".

rsync

 rsync джерело призначення [archive:true|false] [deletedest:true|false]

Цим викликом можна скористатися для копіювання або синхронізування двох каталогів у одному дескрипторі libguestfs. Використовується програма rsync(1), у якій реалізовано швидкий алгоритм для уникнення непотрібного копіювання файлів.

Значеннями параметрів "джерело" і "призначення" є назви каталогу походження даних і кінцевого каталогу. Файли копіюються з каталогу "джерело" до каталогу "призначення".

Необов'язковими аргументами є:

"archive"
Вмикає режим архівування. Те саме, що передати параметр --archive команді "rsync".
"deletedest"
Вилучити файли у каталозі призначення, яких немає у каталозі джерела.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "rsync". Див. також "feature-available".

rsync-in

 rsync-in віддалений_комп'ютер призначення [archive:true|false] [deletedest:true|false]

Цим викликом можна скористатися для копіювання або синхронізування файлових систем у основній системі або на віддаленому комп'ютері із файловою системою у libguestfs. Використовується програма rsync(1), у якій реалізовано швидкий алгоритм для уникнення непотрібного копіювання файлів.

Ця команда працюватиме, лише якщо увімкнено можливість роботи у мережі. Див. "set-network" або параметр --network різноманітних інструментів, зокрема guestfish(1).

Файли копіюються з віддаленого сервера та каталогу, вказаного за допомогою параметра "віддалений_комп'ютер", до каталогу призначення "призначення".

Формат рядка віддаленого сервера визначається rsync(1). Зауважте, що не передбачено способу вказати пароль, отже призначення має бути налаштовано так, щоб пароль не потрібно було вказувати.

Необов'язкові аргументи такі самі, як і у "rsync".

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "rsync". Див. також "feature-available".

rsync-out

 rsync-out джерело віддалений_комп'ютер [archive:true|false] [deletedest:true|false]

Цим викликом можна скористатися для копіювання або синхронізування файлової системи у libguestfs із файловою системою у основній системі або на віддаленому комп'ютері. Використовується програма rsync(1), у якій реалізовано швидкий алгоритм для уникнення непотрібного копіювання файлів.

Ця команда працюватиме, лише якщо увімкнено можливість роботи у мережі. Див. "set-network" або параметр --network різноманітних інструментів, зокрема guestfish(1).

Файли копіюються з каталогу джерела "джерело" до віддаленого сервера та каталогу, вказаного за допомогою параметра "віддалений_комп'ютер".

Формат рядка віддаленого сервера визначається rsync(1). Зауважте, що не передбачено способу вказати пароль, отже призначення має бути налаштовано так, щоб пароль не потрібно було вказувати.

Необов'язкові аргументи такі самі, як і у "rsync".

У параметрі "джерело" не виконується підставляння замість символів-замінників. У програмах, де програмний інтерфейс використовується безпосередньо, вам слід розгортати замінники власноруч (див. "glob-expand"). У guestfish ви можете скористатися командою "glob" (див. "glob"). Приклад:

 ><fs> glob rsync-out /* rsync://remote/

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "rsync". Див. також "feature-available".

scrub-device

 scrub-device пристрій

Ця команда записує зразкові дані на "пристрій" для утруднення відновлення даних на ньому.

Ця команда є інтерфейсом до програми scrub(1). Див. відповідну сторінку підручника, щоб дізнатися більше.

Працездатність цієї команди залежить від можливості "scrub". Див. також "feature-available".

scrub-file

 scrub-file файл

Ця команда записує зразкові дані до файла для утруднення відновлення його даних після витирання.

Після заповнення даними взірця файл буде вилучено.

Ця команда є інтерфейсом до програми scrub(1). Див. відповідну сторінку підручника, щоб дізнатися більше.

Працездатність цієї команди залежить від можливості "scrub". Див. також "feature-available".

scrub-freespace

 scrub-freespace каталог

Ця команда створює каталог "каталог", а потім заповнює його файлами, аж доки файлову систему не буде повністю заповнено, далі витирає файли, як у команді "scrub-file", і вилучає їх. Команду призначено для витирання усіх даних з вільного місця на розділі, де зберігається каталог "каталог".

Ця команда є інтерфейсом до програми scrub(1). Див. відповідну сторінку підручника, щоб дізнатися більше.

Працездатність цієї команди залежить від можливості "scrub". Див. також "feature-available".

selinux-relabel

 selinux-relabel файл_специфікацій шлях [force:true|false]

Повторне встановлення міток SELinux у файловій системі.

Параметр "файл_специфікацій" визначає використаний файл специфікацій правил. Вам слід обробити "/etc/selinux/config", щоб визначити належні правила SELinux, а потім передати файл специфікацій, зазвичай, так: "/etc/selinux/" + тип_selinux + "/contexts/files/file_contexts".

Обов'язковий параметр "шлях" визначає каталог верхнього рівня, з якого починається повторне встановлення міток. Зазвичай, вам слід передати як "шлях" значення "/", щоб повторно встановити мітки для усієї гостьової файлової системи.

Необов'язковий булевий параметр "force" керує тим, чи буде скинуто контекст для налаштовуваних файлів, а також тим, чи буде змінено частини контексту файла, пов'язані із записами користувача, ролі та діапазону.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "selinuxrelabel". Див. також "feature-available".

set-append

append

 set-append додаток

Ця функція використовується для додавання параметрів до командного рядка елементарного ядра libguestfs.

Типовим значенням є "NULL", якщо його не перевизначено за допомогою змінної середовища "LIBGUESTFS_APPEND".

Встановлення для параметра "append" значення "NULL" означає, що ніяких додаткових параметрів не передаватиметься (libguestfs завжди додає декілька параметрів автоматично).

set-attach-method

attach-method

 set-attach-method модуль

Встановлює спосіб, яким libguestfs користується для встановлення з'єднання із фоновою службою guestfsd модуля обробки.

Див. "МОДУЛЬ" in guestfs(3).

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "set-backend".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

set-autosync

autosync

 set-autosync true|false

Встановлення для "autosync" значення вмикає автоматичну синхронізацію. Libguestfs з усіх сил намагатиметься підтримувати коректний і синхронізований стан файлових систем, коли ви закриватимете дескриптор (а також у ситуаціях, коли програма завершує роботу без закриття дескрипторів).

Автоматичну синхронізацію типово увімкнено (з версії libguestfs 1.5.24, у попередніх версіях її було вимкнено).

set-backend

модуль

 set-backend модуль

Встановлює спосіб, яким libguestfs користується для встановлення з'єднання із фоновою службою guestfsd модуля обробки.

Ця властивість дескриптора раніше називалася «метод долучення».

Див. "МОДУЛЬ" in guestfs(3).

set-backend-setting

 set-backend-setting назва значення

Дописує рядок "назва=значення" до списку рядків параметрів модуля обробки. Втім, якщо у списку вже існує рядок "назва" або рядок, що починається із запису "назва=", його буде замінено на новий вказаний рядок.

Див. "МОДУЛЬ" in guestfs(3), "ПАРАМЕТРИ МОДУЛЯ" in guestfs(3).

set-backend-settings

 set-backend-settings 'параметри ...'

Встановлює список із нульової або довільної кількості параметрів, які передаються поточному модулю обробки. Кожен параметр визначається рядком, який обробляється у специфічний для модуля спосіб або ігнорується, якщо модуль обробки його не сприймає.

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

Цей виклик замінює усі параметри модуля обробки. Якщо вам потрібно замінити лише один рядок параметра, скористайтеся "set-backend-setting". Якщо вам потрібно прибрати один рядок параметра, скористайтеся "clear-backend-setting".

Див. "МОДУЛЬ" in guestfs(3), "ПАРАМЕТРИ МОДУЛЯ" in guestfs(3).

set-cachedir

каталог_кешування

 set-cachedir каталог_кешування

Встановити назву каталогу, який використовується дескриптором для зберігання кешу базової системи, якщо використовується базова система supermin. Базова система кешується і спільно використовується усіма дескрипторами, які мають однаковий ідентифікатор ефективного користувача.

Змінні середовища "LIBGUESTFS_CACHEDIR" і "TMPDIR" керують типовим значенням: якщо встановлено значення "LIBGUESTFS_CACHEDIR", типовим буде саме це встановлене значення. Якщо ж це значення не встановлено і встановлено значення "TMPDIR", використовуватиметься це значення. Якщо ж жодну з цих змінних середовища не встановлено, типово використовуватиметься /var/tmp.

set-direct

direct

 set-direct true|false

Якщо увімкнено прапорець безпосереднього режиму базової системи, вміст stdin та stdout передаватиметься безпосередньо базовій системі одразу після її запуску.

Одним із наслідків цього є те, що повідомлення журналу не перехоплюватимуться бібліотекою і не оброблятимуться "set-log-message-callback", а передаватимуться безпосередньо до stdout.

Ймовірно, вам не слід використовувати цю команду, якщо ви не впевнені щодо наслідків ваших дій.

Типово вимкнено.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "internal-get-console-socket".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

set-e2attrs

 set-e2attrs файл атрибути [clear:true|false]

Ця команда встановлює або знімає атрибути "атрибути" з inode із назвою файл.

Параметр "атрибути" є рядком із символів, які визначають атрибути файла. Список можливих значень можна знайти у описі "get-e2attrs". Змінювати можна не усі атрибути.

Якщо не вказано необов'язковий булевий параметр "clear" або вказано значення false, вказані "атрибути" буде встановлено для inode.

Якщо встановлено значення "clear" рівне true, вказані "атрибути" буде знято з inode.

У обох випадках інші атрибути, які не вказано у рядку "атрибути", змінено не буде.

Ці атрибути є, лише якщо файл зберігається у файловій системі ext2/3/4. Використання цієї команди для інших типів файлових систем призведе до помилки.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

set-e2generation

 set-e2generation файл стан_створення

Ця команда встановлює стан створення для файла у ext2.

Див. "get-e2generation".

set-e2label

 set-e2label пристрій мітка

Ця команда встановлює мітку файлової системи ext2/3/4 для файлової системи на пристрої "пристрій". Довжину міток файлових систем обмежено 16 символами.

Ви можете скористатися "tune2fs-l" або "get-e2label" для отримання наявної мітки файлової системи.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "set-label".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

set-e2uuid

 set-e2uuid пристрій uuid

Ця команда встановлює UUID файлової системи ext2/3/4 для файлової системи на пристрої "пристрій" у значення "uuid". Формат запису UUID та альтернативні варіанти, зокрема "clear", "random" та "time", описано на сторінці підручника tune2fs(8).

Ви можете скористатися "vfs-uuid" для отримання наявного UUID файлової системи.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "set-uuid".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

set-hv

hv

 set-hv гіпервізор

Встановлює назву виконуваного файла гіпервізору, яким ми скористаємося. Назва гіпервізору залежить від використаного модуля обробки, але, зазвичай, це назва гіпервізору qemu/KVM. Для модуля обробки UML це розташування виконуваного файла "linux" або "vmlinux".

Типовий варіант визначається під час збирання бібліотеки за допомогою скрипту налаштовування збирання (configure).

Крім того, ви можете перевизначити цей параметр за допомогою змінної середовища "LIBGUESTFS_HV".

Зауважте, що вам слід викликати цю функцію якомога ближче до команди створення дескриптора. Причиною є те, що деякі дії перед запуском системи залежать від результатів тестування можливостей qemu (шляхом виконання команди "qemu -help"). Якщо виконуваний файл qemu буде змінено, бібліотека не виконуватиме повторного визначення можливостей, отже, може працювати некоректно. Використання змінної середовища "LIBGUESTFS_HV" є найбезпечнішим способом надати потрібні бібліотеці дані, оскільки встановлення цієї змінної надає бібліотеці змогу дізнатися усе про виконуваний файл qemu одночасно зі створенням дескриптора.

set-identifier

ідентифікатор

 set-identifier ідентифікатор

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

Одним із важливих є варіант, коли увімкнено трасування. Якщо рядок ідентифікатора є непорожнім, повідомлення трасування зміняться з таких:

 libguestfs: trace: get_tmpdir
 libguestfs: trace: get_tmpdir = "/tmp"

на такі:

 libguestfs: trace: ID: get_tmpdir
 libguestfs: trace: ID: get_tmpdir = "/tmp"

де "ID" — рядок ідентифікатор, який було встановлено викликом цієї команди.

Ідентифікатор має складатися із літер латинської абетки і цифр з ASCII, а також символів підкреслювання або дефісів. Типовим його значенням є порожній рядок.

Див. також "set-program", "set-trace", "get-identifier".

set-label

 set-label монтування мітка

Встановлює для файлової системи "монтування" мітку "мітка".

Підтримку міток передбачено лише у деяких файлових системах, а у libguestfs передбачено підтримку встановлення міток лише для деякого набору таких систем.

Розмір міток обмежено 16 байтами.
Мітки обмежено 128 символами unicode.
Цю мітку обмежено 12 байтами. Встановлювати мітку можна лише для незмонтованих файлових систем.
Цю мітку обмежено 255 байтами, у ній не можна використовувати деякі символи. Встановлення мітки на підтомі btrfs призведе до встановлення мітки на його батьківській файловій системі. Встановлювати мітку можна лише для незмонтованих файлових систем.
Цю мітку обмежено 11 байтами.
Цю мітку обмежено 16 байтами.

Якщо підтримки зміни мітки для типу вказаної файлової системи не передбачено, set_label завершить роботу із повідомленням про помилку і встановити для errno значення ENOTSUP.

Для читання мітки файлової системи використовуйте "/vfs-label".

set-libvirt-requested-credential

 set-libvirt-requested-credential індекс реєстраційні_дані

Після запиту щодо реєстраційних даних із індексом "індекс", спрямованого користувачу, викличте цю функцію для передавання відповіді до libvirt.

Документацію і приклад коду наведено у розділі "РОЗПІЗНАВАННЯ ЗА ДОПОМОГОЮ LIBVIRT" in guestfs(3).

set-libvirt-supported-credentials

 set-libvirt-supported-credentials 'реєстраційні_дані...'

Викличте цю функцію до встановлення обробника подій для "GUESTFS_EVENT_LIBVIRT_AUTH" щоб надати список типів реєстраційних даних, які може обробляти програма.

Список "реєстраційні_дані" має бути непорожнім списком рядків. Можна використовувати такі рядки:

"username"
"authname"
"language"
"cnonce"
"passphrase"
"echoprompt"
"noechoprompt"
"realm"
"external"

Опис значення цих типів реєстраційних даних можна знайти у документації до libvirt.

Документацію і приклад коду наведено у розділі "РОЗПІЗНАВАННЯ ЗА ДОПОМОГОЮ LIBVIRT" in guestfs(3).

set-memsize

розмір_пам'яті

 set-memsize розмір_пам'яті

Встановлює розмір у мегабайтах, яку має бути отримано для гіпервізору пам'яті. Працює, лише якщо викликано до "launch".

Ви також можете змінити значення цього параметра за допомогою встановлення змінної середовища "LIBGUESTFS_MEMSIZE" до створення дескриптора.

Докладніший опис архітектури libguestfs наведено у підручнику з guestfs(3).

set-network

network

 set-network true|false

Якщо встановлено значення true, у базовій системі libguestfs буде увімкнено роботу у мережі. Типовим значенням є false.

Визначає, чи надаватиметься програмам доступ до мережі (див. "ЗАПУСК КОМАНД" in guestfs(3)).

Цю функцію слід викликати до "launch", інакше вона не спрацює.

set-path

шлях

 set-path шлях_для_пошуку

Встановлює шлях, за яким libguestfs шукає ядро і initrd.img.

Типовим значенням є "$libdir/guestfs", якщо його не перевизначено за допомогою змінної середовища "LIBGUESTFS_PATH".

Встановлення для параметра "шлях" значення "NULL" відновлює типовий шлях.

set-pgroup

pgroup

 set-pgroup true|false

Якщо встановлено значення "pgroup" рівне true, дочірні процеси буде розміщено у власній групі процесів.

Практичним наслідком цього є те, що сигнали, зокрема "SIGINT" (наслідок натискання користувачем комбінації "^C"), не буде отримано дочірнім процесом.

Типовим для цього прапорця є значення false, оскільки, зазвичай, "^C" має вбивати підпроцеси. Guestfish встановлює для цього прапорця значення true, якщо програма використовується інтерактивно, щоб за допомогою "^C" можна було належно скасувати дії, які виконуються надто довго (див. "user-cancel").

set-program

програма

 set-program програма

Встановлює назву програми. Це інформативний рядок, який основна програма може встановлювати у дескрипторі.

Під час створення дескриптора назва програми у дескрипторі встановлюється у значення basename з "argv[0]". Назвою програми ніколи не може бути "NULL".

set-qemu

qemu

 set-qemu гіпервізор

Вказати виконуваний файл гіпервізору (зазвичай qemu), який буде використано.

Типовий варіант визначається під час збирання бібліотеки за допомогою скрипту налаштовування збирання (configure).

Крім того, ви можете перевизначити цей параметр за допомогою змінної середовища "LIBGUESTFS_HV".

Встановлення для параметра "гіпервізор" значення "NULL" відновлює типовий виконуваний файл qemu.

Зауважте, що вам слід викликати цю функцію якомога ближче до команди створення дескриптора. Причиною є те, що деякі дії перед запуском системи залежать від результатів тестування можливостей qemu (шляхом виконання команди "qemu -help"). Якщо виконуваний файл qemu буде змінено, бібліотека не виконуватиме повторного визначення можливостей, отже, може працювати некоректно. Використання змінної середовища "LIBGUESTFS_HV" є найбезпечнішим способом надати потрібні бібліотеці дані, оскільки встановлення цієї змінної надає бібліотеці змогу дізнатися усе про виконуваний файл qemu одночасно зі створенням дескриптора.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "set-hv".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

set-recovery-proc

recovery-proc

 set-recovery-proc true|false

Якщо команда викликається із параметром "false", "launch" не створюватиме процесу відновлення. Призначенням процесу відновлення є зупинення залишкових процесів гіпервізору, якщо основна програма несподівано завершує роботу.

Працює, лише якщо викликано до "launch", а типовим значенням є true.

Майже єдиним випадком, коли у вас може виникнути потреба вимкнути цю можливість, є випадок, коли основний процес відгалужує себе у фонову версію («демонізує» себе). У цьому випадку процес відновлення вважає, що основна програма зникла і вбиває процес гіпервізору, отже, псує усю справу.

set-selinux

selinux

 set-selinux true|false

Ця команда встановлює прапорець selinux, який передається базовій системі під час завантаження. Типовим є прапорець "selinux=0" (вимкнено).

Зауважте, що якщо SELinux увімкнено, система завжди перебуває у дозвільному режимі (Permissive) ("enforcing=0").

Докладніший опис архітектури libguestfs наведено у підручнику з guestfs(3).

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "selinux-relabel".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

set-smp

smp

 set-smp smp

Змінює кількість віртуальних процесорів, які буде призначено на обробку команд базової системи. Типовим є значення 1. Збільшення цього значення може підвищити швидкодію, але часто просто ні на що не впливає.

Цю функцію слід викликати до "launch".

set-tmpdir

тимчасовий_каталог

 set-tmpdir тимчасовий_каталог

Встановлює назву каталогу, який використовується дескриптором для зберігання тимчасових файлів.

Змінні середовища "LIBGUESTFS_TMPDIR" і "TMPDIR" керують типовим значенням: якщо встановлено значення "LIBGUESTFS_TMPDIR", типовим буде саме це встановлене значення. Якщо ж це значення не встановлено і встановлено значення "TMPDIR", використовуватиметься це значення. Якщо ж жодну з цих змінних середовища не встановлено, типово використовуватиметься /tmp.

set-trace

trace

 set-trace true|false

Якщо прапорець trace цієї команди встановлено у значення 1, буде виконуватися трасування викликів, параметрів та повернутих значень libguestfs.

Якщо вам потрібно трасувати виклики програмного інтерфейсу мовою C у libguestfs (та інших бібліотеках), ймовірно, кращим способом буде використання зовнішньої команди ltrace(1).

Трасування команд вимкнено, якщо змінну середовища "LIBGUESTFS_TRACE" не визначено і не встановлено для неї значення 1.

Повідомлення трасування зазвичай надсилаються до "stderr", якщо ви не зареєструєте зворотного виклику для надсилання цих повідомлень у якесь інше місце (див. "set-event-callback").

set-uuid

 set-uuid пристрій uuid

Встановлює для UUID файлової системи на пристрої "пристрій" значення "uuid". Якщо встановити значення не вдасться, а errno матиме значення ENOTSUP, це означатиме, що для типу вказаної файлової системи не передбачено підтримки зміни UUID.

Підтримку встановлення UUID передбачено лише у деяких типах файлових систем.

Для читання UUID файлової системи слід викликати "vfs-uuid".

set-uuid-random

 set-uuid-random пристрій

Встановлює для UUID файлової системи на пристрої "пристрій" у випадкове значення. Якщо встановити значення не вдасться, а errno матиме значення ENOTSUP, це означатиме, що для типу вказаної файлової системи не передбачено підтримки зміни UUID.

Підтримку встановлення UUID передбачено лише у деяких типах файлових систем.

Для читання UUID файлової системи слід викликати "vfs-uuid".

set-verbose

verbose

 set-verbose true|false

Якщо аргумент "verbose" матиме значення true, буде увімкнено режим докладних повідомлень.

Докладні повідомлення вимкнено, якщо змінну середовища "LIBGUESTFS_DEBUG" не визначено і не встановлено для неї значення 1.

Докладні повідомлення зазвичай надсилаються до "stderr", якщо ви не зареєструєте зворотного виклику для надсилання цих повідомлень у якесь інше місце (див. "set-event-callback").

setcon

 setcon контекст

Ця команда встановлює для контексту безпеки SELinux фонової служби значення "контекст".

Див. документацію щодо SELINUX у підручнику з guestfs(3).

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "selinux-relabel".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

Працездатність цієї команди залежить від можливості "selinux". Див. також "feature-available".

setxattr

 setxattr розширений_атрибут значення довжина_значення шлях

Ця команда встановлює розширений атрибут із назвою "розширений_атрибут" для файла "шлях" у значення "значення" (довжини "довжина_значення"). Значенням можуть бути довільні 8-бітові дані.

Див. також "lsetxattr", attr(5).

Працездатність цієї команди залежить від можливості "linuxxattrs". Див. також "feature-available".

sfdisk

 sfdisk пристрій циліндри головки сектори 'рядки ...'

Це безпосередній інтерфейс програми sfdisk(8) для створення розділів на блокових пристроях.

Значенням параметра "пристрій" має бути назва блокового пристрою, наприклад /dev/sda.

"cyls", "heads" and "sectors" are the number of cylinders, heads and sectors on the device, which are passed directly to sfdisk(8) as the -C, -H and -S parameters. If you pass 0 for any of these, then the corresponding parameter is omitted. Usually for ‘large’ disks, you can just pass 0 for these, but for small (floppy-sized) disks, sfdisk(8) (or rather, the kernel) cannot work out the right geometry and you will need to tell it.

"lines" is a list of lines that we feed to sfdisk(8). For more information refer to the sfdisk(8) manpage.

Щоб створити єдиний розділ, який займатиме увесь диск, вам слід передати "рядки" як список із одного елемента, коли єдиний елемент, який є рядком "," (комою).

Див. також "sfdisk-l", "sfdisk-N", "part-init"

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "part-add".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

sfdiskM

 sfdiskM пристрій 'рядки ...'

Це спрощений інтерфейс команди "sfdisk", де розміри розділів вказується у лише у мегабайтах (округлений до найближчого циліндра), і вам не потрібно вказувати параметри циліндрів, голівок і секторів, використання яких все одно є рідкісним.

Див також "sfdisk", сторінку довідки (man) sfdisk(8) та "part-disk"

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "part-add".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

sfdisk-N

 sfdisk-N пристрій номер_розділу циліндри головки сектори рядок

Ця команда додає для програми sfdisk(8) параметр, який змінює лише окремий розділ "n" (зауваження: відлік "n" ведеться з 1).

Опис інший параметрів можна знайти у довідці щодо "sfdisk". Зазвичай, вам варто передати 0 для параметрів циліндрів, заголовків та секторів.

Див. також "part-add"

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "part-add".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

sfdisk-disk-geometry

 sfdisk-disk-geometry пристрій

Ця команда показує геометрію диска пристрою "пристрій", прочитану з таблиці розділів. Ці дані можуть відрізнятися від даних щодо геометрії, які відомі ядру, особливо у випадку, якщо розмір базового пристрою було змінено (див. "sfdisk-kernel-geometry").

Результат буде виведено у зручному для читанні вигляді. Його не призначено для програмної обробки.

sfdisk-kernel-geometry

 sfdisk-kernel-geometry пристрій

Ця команда показує визначені ядром дані щодо геометрії пристрою "пристрій".

Результат буде виведено у зручному для читанні вигляді. Його не призначено для програмної обробки.

sfdisk-l

 sfdisk-l пристрій

Ця команда виводить таблицю розділів на пристрої "пристрій" у зручному для читання форматі даних, виведених командою sfdisk(8). Ці дані не призначено для програмної обробки.

Див. також "part-list"

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "part-list".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

sh

 sh команда

Ця команда виконує програму з гостьової системи за допомогою /bin/sh гостьової системи.

Подібна до "command", але передає команду так:

 /bin/sh -c "команда"

Залежно від командної оболонки гостьової системи, зазвичай, це призводить до розгортання символів-замінників, обробки виразів командної оболонки тощо.

Усі зауваження щодо "command" стосуються і цього виклику.

sh-lines

 sh-lines команда

Те саме, що і "sh", але результат буде поділено на список рядків.

Див. також "command-lines"

shutdown

 shutdown

Протилежність команди "launch". Виконує упорядковане вимикання процесів модуля обробки. Якщо встановлено прапорець autosync (типова поведінка), буде синхронізовано образ диска.

Якщо підпроцес завершує роботу із помилкою, ця функція поверне повідомлення про помилку, яке не слід ігнорувати (воно може свідчити про те, що належний запис до образу диска неможливий).

Команду можна безпечно викликати довільну кількість разів. Усі зайві виклики буде просто проігноровано.

Ця команда не закриває і не звільняє дескриптор. Вам слід викликати "close" після її виконання.

"close" викличе цю команду, якщо ви не зробите цього явно, але, слід зауважити, що усі помилки у цьому випадку буде проігноровано.

sleep

 sleep час_у_секундах

Призупинити обробку на "час_у_секундах".

stat

 stat шлях

Повертає дані щодо файла за вказаним шляхом "шлях".

Це те саме, що системний виклик stat(2).

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "statns".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

statns

 statns шлях

Повертає дані щодо файла за вказаним шляхом "шлях".

Це те саме, що системний виклик stat(2).

statvfs

 statvfs шлях

Повертає статистику файлової системи для будь-якої змонтованої файлової системи. Параметр "шлях" має визначати файл або каталог у змонтованій файловій системі (типово, це сама точка монтування, але не обов'язково саме вона).

Це те саме, що системний виклик statvfs(2).

strings

 strings шлях

Виконує програму strings(1) для файла і повертає список знайдених у ньому придатних до друку рядків.

У минулому у команди "strings" були проблеми із обробкою файлів, отриманих від ненадійних джерел. Ці проблеми усунуто у поточній версії libguestfs, втім, див. "CVE-2014-8484" in guestfs(3).

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

strings-e

 strings-e кодування шлях

Ця команда подібна до команди "strings", але надає вам змогу вказати кодування рядків, які ви шукаєте у файлі даних "шлях".

Можливими кодуваннями є:

Одинарні 7-бітові символи, зокрема ASCII та сумісні із ASCII частини ISO-8859-X (це кодування використовує "strings").
Окремі 8-бітові-байтові символи.
16-бітове зі зворотним порядком байтів, зокрема рядки у кодуваннях UTF-16BE та UCS-2BE.
16-бітове із прямим порядком байтів, зокрема UTF-16LE і UCS-2LE. Корисно для вивчення двійкових файлів у гостьових системах Windows.
32-бітове зі зворотним порядком байтів, зокрема UCS-4LE.
32-бітове із прямим порядком байтів, зокрема UCS-4LE.

Повернуті рядки буде перекодовано до UTF-8.

У минулому у команди "strings" були проблеми із обробкою файлів, отриманих від ненадійних джерел. Ці проблеми усунуто у поточній версії libguestfs, втім, див. "CVE-2014-8484" in guestfs(3).

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

swapoff-device

 swapoff-device пристрій

Ця команда вимикає резервну пам'ять на диску або розділ із назвою "пристрій" у базовій системі libguestfs. Див. "swapon-device".

swapoff-file

 swapoff-file файл

Ця команда вимикає резервну пам'ять у файлі для базової системи libguestfs.

swapoff-label

 swapoff-label мітка

Ця команда вимикає резервну пам'ять на диску у базовій системі libguestfs на вказаному за міткою розділі резервної пам'яті.

swapoff-uuid

 swapoff-uuid uuid

Ця команда вимикає резервну пам'ять на диску у базовій системі libguestfs на вказаному розділі із вказаним UUID.

Працездатність цієї команди залежить від можливості "linuxfsuuid". Див. також "feature-available".

swapon-device

 swapon-device пристрій

Ця команда вмикає резервну пам'ять на диску або розділ із назвою "пристрій" у базовій системі libguestfs. Збільшений обсяг пам'яті стає доступним для усіх команд, зокрема тих, які запускаються за допомогою "command" або "sh".

Зауважте, що вам не варто створювати резервну пам'ять на наявних розділах резервної пам'яті гостьової системи, якщо ви не впевнені у правильності своїх дій. На цих розділах можуть міститися дані режиму присипляння системи або інші дані, які не варто втрачати. Також подібні дії можуть призвести до небажаного доступу до конфіденційних даних у гостьовій системі. Замість цього, долучіть до гостьової системи новий пристрій основної системи і організовуйте резервну пам'ять на ньому.

swapon-file

 swapon-file файл

Ця команда вмикає резервну пам'ять у файлі. Зауваження щодо її використання є такими самими, що і для "swapon-device".

swapon-label

 swapon-label мітка

Ця команда вмикає резервну пам'ять на вказаному за міткою розділі резервної пам'яті. Зауваження щодо її використання є такими самими, що і для "swapon-device".

swapon-uuid

 swapon-uuid uuid

Ця команда вмикає резервну пам'ять на розділі резервної пам'яті, вказаному за UUID. Зауваження щодо її використання є такими самими, що і для "swapon-device".

Працездатність цієї команди залежить від можливості "linuxfsuuid". Див. також "feature-available".

sync

 sync

Ця команда виконує синхронізацію диска. Усі буфери даних записуються на базовий образ диска.

Вам завжди слід викликати цю команду, якщо ви вносили зміни до образу диска, перед закриттям дескриптора.

syslinux

 syslinux пристрій [каталог:..]

Встановлює завантажувач SYSLINUX на "пристрій".

Значенням параметра пристрою має бути або увесь диск, форматований у файлову систему FAT, або розділ диска, форматований у файлову систему FAT. У останньому випадку, розділ має бути позначено як «активний» ("part-set-bootable"), а на перший сектор усього диска має бути встановлено MBR (наприклад, за допомогою "pwrite-device"). До пакунка SYSLINUX включено деякі найпоширеніші варіанти MBR. Докладніший опис можна знайти на сторінці підручника щодо syslinux(1).

Необов'язковими аргументами є:

Встановити SYSLINUX до вказаного за назвою підкаталогу, замість кореневого каталогу файлової системи FAT.

Додатково налаштувати SYSLINUX можна за допомогою файла із назвою syslinux.cfg на файловій системі FAT, у кореневому каталозі або у каталозі файлової системи каталог, якщо використано необов'язковий аргумент команди. Докладніше про це та вміст файла можна дізнатися зі сторінки підручника syslinux(1).

Див. також "extlinux".

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "syslinux". Див. також "feature-available".

tail

 tail шлях

Ця команда повертає останні 10 рядків файла у форматі списку рядків.

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

tail-n

 tail-n к-ть_рядків шлях

Якщо параметр "к-ть_рядків" є додатним числом, повертає останні "к-ть_рядків" рядків з файла "шлях".

If the parameter "nrlines" is a negative number, this returns lines from the file "path", starting with the "-nrlines"'th line.

Якщо значенням параметра "к-ть_рядків" є нуль, команда повертає порожній список.

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

tar-in

tar-in-opts

 tar-in (файл_tar|-) каталог [compress:..] [xattrs:true|false] [selinux:true|false] [acls:true|false]

Ця команда вивантажує і розпаковує локальний файл "файл_tar" до каталогу каталог.

Необов'язковий прапорець "compress" керує стисканням. Якщо його не вказано, вхідні дані мають бути простим, нестисненим файлом tar. Ви також можете вказати такі рядки для вибору типу стискання: "compress", "gzip", "bzip2", "xz", "lzop". (Зауважте, що підтримку усіх цих типів стискання передбачено не в усіх зібраних пакунках libguestfs).

Іншими необов'язковими параметрами є такі:

"xattrs"
Якщо встановлено значення true, розширені атрибути відновлюватимуться з файла tar.
"selinux"
Якщо встановлено значення true, контекст SELinux відновлюватиметься з файла tar.
"acls"
Якщо встановлено значення true, з файла tar відновлюватимуться ACL POSIX.

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

tar-out

tar-out-opts

 tar-out каталог (файл_tar|-) [compress:..] [numericowner:true|false] [excludes:..] [xattrs:true|false] [selinux:true|false] [acls:true|false]

Ця команда пакує вміст каталогу каталог отримує його до локального файла "файл_tar".

Необов'язковий прапорець "compress" керує стисканням. Якщо його не вказано, вихідні дані будуть простим, нестисненим файлом tar. Ви також можете вказати такі рядки для вибору типу стискання: "compress", "gzip", "bzip2", "xz", "lzop". (Зауважте, що підтримку усіх цих типів стискання передбачено не в усіх зібраних пакунках libguestfs).

Іншими необов'язковими параметрами є такі:

"excludes"
Список шаблонів. Файли буде виключено, якщо вони відповідатимуть якомусь із вказаних шаблонів.
"numericowner"
Якщо встановлено значення true, у виведеному файлі tar міститимуться номери UID/GID замість назв записів користувачів і груп.
"xattrs"
Якщо встановлено значення true, у виведеному файлі tar зберігатимуться розширені атрибути.
"selinux"
Якщо встановлено значення true, у виведеному файлі tar зберігатимуться контексти SELinux.
"acls"
Якщо встановлено значення true, у виведеному файлі tar зберігатимуться ACL POSIX.

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

tgz-in

 tgz-in (архів tar|-) каталог

Ця команда вивантажує і розпаковує локальний файл "архів_tar" (стиснений gzip файл tar) до каталогу каталог.

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "tar-in".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

tgz-out

 tgz-out каталог (архів tar|-)

Ця команда пакує вміст каталогу каталог отримує його до локального файла "архів_tar".

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "tar-out".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

touch

 touch шлях

Touch працює як команда touch(1). Цією командою можна скористатися для оновлення часових позначок файла або, якщо файла не існує, створення нового файла нульової довжини.

Ця команда працює лише для звичайних файлів і завершує роботу повідомленням про помилку, якщо її використовують для інших об'єктів файлової системи, зокрема каталогів, символічних посилань, спеціальних блоків.

truncate

 truncate шлях

Ця команда обрізає файл "шлях" до нульової довжини. Для її успішного виконання файл має існувати.

truncate-size

 truncate-size шлях розмір

Ця команда обрізає файл "шлях" до розміру у "розмір" байтів. Для її успішного виконання файл має існувати.

Якщо поточний розмір файла є меншим за "розмір", файл буде розширено до вказаного розміру доповненням його вмісту нульовими байтами. Команда створює розріджений файл (тобто блоки диска не розподіляються під файл, доки ви не виконаєте запис до нього). Для створення файла заповненого нулями, який не буде розрідженим, скористайтеся командою "fallocate64".

tune2fs

 tune2fs пристрій [force:true|false] [maxmountcount:N] [mountcount:N] [errorbehavior:..] [group:N] [intervalbetweenchecks:N] [reservedblockspercentage:N] [lastmounteddirectory:..] [reservedblockscount:N] [user:N]

За допомогою цієї команди ви можете скоригувати різноманітні параметри файлової системи ext2/ext3/ext4 із назвою "пристрій".

Додатковими параметрами є:

"force"
Force tune2fs to complete the operation even in the face of errors. This is the same as the tune2fs(8) "-f" option.
"maxmountcount"
Set the number of mounts after which the filesystem is checked by e2fsck(8). If this is 0 then the number of mounts is disregarded. This is the same as the tune2fs(8) "-c" option.
"mountcount"
Set the number of times the filesystem has been mounted. This is the same as the tune2fs(8) "-C" option.
"errorbehavior"
Змінює поведінку коду ядра, якщо стануться помилки. Можливі значення у поточній версії: "continue", "remount-ro", "panic". На практиці, відмінність між цими варіантами є незначною, зокрема при появі помилок запису.

This is the same as the tune2fs(8) "-e" option.

"group"
Set the group which can use reserved filesystem blocks. This is the same as the tune2fs(8) "-g" option except that it can only be specified as a number.
"intervalbetweenchecks"
Коригує максимальний час між двома послідовними перевірками файлової системи (у секундах). Якщо буде передано значення 0, залежність перевірок від часу буде вимкнено.

This is the same as the tune2fs(8) "-i" option.

"reservedblockspercentage"
Set the percentage of the filesystem which may only be allocated by privileged processes. This is the same as the tune2fs(8) "-m" option.
"lastmounteddirectory"
Set the last mounted directory. This is the same as the tune2fs(8) "-M" option.
"reservedblockscount" Set the number of reserved filesystem blocks. This is the same as the tune2fs(8) "-r" option.
"user"
Set the user who can use the reserved filesystem blocks. This is the same as the tune2fs(8) "-u" option except that it can only be specified as a number.

Якщо вам потрібно отримати поточні значення параметрів файлової системи, скористайтеся "tune2fs-l". Докладний опис роботи tune2fs наведено на сторінці підручника tune2fs(8).

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

tune2fs-l

 tune2fs-l пристрій

Ця команда повертає вміст суперблоку файлової системи ext2, ext3 або ext4 на пристрої "пристрій".

Результат буде таким самим як результат виконання команди "tune2fs -l пристрій". Див. сторінку підручника tune2fs(8), щоб дізнатися більше. Список повернутих полів не є точно визначеним і залежить від версії "tune2fs", з якою було зібрано libguestfs, та самої файлової системи.

txz-in

 txz-in (архів tar|-) каталог

Ця команда вивантажує і розпаковує локальний файл "архів_tar" (стиснений xz файл tar) до каталогу каталог.

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "tar-in".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

Працездатність цієї команди залежить від можливості "xz". Див. також "feature-available".

txz-out

 txz-out каталог (архів tar|-)

Ця команда пакує вміст каталогу каталог отримує його до локального файла "архів_tar" (у форматі стисненого xz архіву tar).

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "tar-out".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

Працездатність цієї команди залежить від можливості "xz". Див. також "feature-available".

umask

 umask маска

Ця функція встановлює маску, яка використовується для створення нових файлів і вузлів пристрою, у значення "mask & 0777".

Типовими значеннями umask мають бути 022, використання якої призводить до прав доступу «-rw-r--r--» або «-rwxr-xr-x», та 002, використання якої призводить до прав доступу «-rw-rw-r--» або «-rwxrwxr-x».

Типовим значенням umask є 022. Це важливо, оскільки означає, що каталоги і вузли пристрою створюватимуться із правами доступу 0644 або 0755, навіть якщо ви вкажете права доступу 0777.

Див. також "get-umask", umask(2), "mknod", "mkdir".

Цей виклик повертає попередню umask.

umount

unmount

umount-opts

 umount шлях_або_пристрій [force:true|false] [lazyunmount:true|false]

Ця команда демонтує вказану файлову систему. Файлову систему можна вказати або як точку монтування (шлях) або як пристрій, на якому міститься файлова система.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

umount-all

unmount-all

 umount-all

Демонтує усі змонтовані файлові системи.

Деякі із внутрішніх монтувань не демонтуються цим викликом.

umount-local

 umount-local [retry:true|false]

Якщо libguestfs експортує файлову систему на локальну точку монтування, цей виклик демонтує її.

Із повною документацією можна ознайомитися у розділі "ЛОКАЛЬНЕ МОНТУВАННЯ" in guestfs(3).

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

upload

 upload (назва_файла|-) назва_віддаленого_файла

Вивантажує локальний файл назва_файла до віддаленого файла назва_віддаленого_файла у файловій системі.

Значенням параметра назва_файла також може бути іменований канал обробки даних.

Див. також "download".

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

upload-offset

 upload-offset (назва_файла|-) назва_віддаленого_файла відступ

Вивантажує локальний файл назва_файла до віддаленого файла назва_віддаленого_файла у файловій системі.

Віддалений файл назва_віддаленого_файла буде перезаписано, починаючи з байта "відступ". Призначенням команди є перезапис частин наявних файлів або пристроїв, хоча, якщо буде задано файл, якого не існує, команда створить його із «діркою» до байта "відступ". Розмір записаних даних неявним чином визначається розміром файла-джерела назва_файла.

Зауважте, що немає обмеження на обсяг даних, які може бути вивантажено за допомогою цього виклику, на відміну від команди "pwrite", і цей виклик завжди записує дані до кінця, якщо не станеться помилки.

Див. також "upload", "pwrite".

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

user-cancel

 user-cancel

За допомогою цієї функції можна скасувати поточну дію із отримання або вивантаження даних.

На відміну від більшості інших викликів libguestfs, цю функцію захищено від сигналів та потоків обробки. Ви можете викликати її із обробника сигналів або іншого потоку обробки без потреби у блокуванні хоч чогось.

Передавання даних, яке не було завершено (якщо таке існує), буде зупинено невдовзі після виконання цієї команди, і буде повернуто повідомлення про помилку. Для errno (див. "guestfs_last_errno") буде встановлено значення "EINTR", отже ви можете просто перевірити це значення, щоб визначити дію, яку було скасовано або яка завершилася помилкою через інші причини.

Чищення після виконання команди не виконуватиметься. Наприклад, якщо на момент скасовування виконувалося вивантаження файла, результатом буде частково вивантажений файл. Про належне чищення має подбати функція, з якої було викликано команду.

Існує два типових місця, звідки ви варто викликати "user-cancel":

In an interactive text-based program, you might call it from a "SIGINT" signal handler so that pressing "^C" cancels the current operation. (You also need to call "set-pgroup" so that child processes don't receive the "^C" signal).

У графічних програмах, якщо основний потік обробки даних показує смужку поступу із кнопкою скасовування дії, подію натискання кнопки скасовування дії слід пов'язувати із викликом цієї функції.

utimens

 utimens шлях atsecs atnsecs mtsecs mtnsecs

Ця команда встановлює часову позначку для файла з точністю до наносекунди.

"atsecs", "atnsecs" are the last access time (atime) in secs and nanoseconds from the epoch.

"mtsecs", "mtnsecs" are the last modification time (mtime) in secs and nanoseconds from the epoch.

Якщо якесь із полів *nsecs містить спеціальне значення "-1", відповідну часову позначку буде встановлено у поточний момент часу. (У цьому випадку поле *secs буде проігноровано.)

Якщо якесь із полів *nsecs містить спеціальне значення "-2", відповідну часову позначку не буде змінено. (У цьому випадку поле *secs буде проігноровано.)

utsname

 utsname

Ця команда повертає версію ядра базової системи, якщо таку версію можна встановити. Отримані дані корисні лише для діагностики. У повернутій структурі жодна з частин не визначається програмним інтерфейсом.

version

 version

Повертає номер версії libguestfs, з якою скомпоновано програму.

Зауважте, що через динамічне компонування, це може бути зовсім не та версія libguestfs, з якою виконувалося збирання. Ви можете зібрати програму, а потім у динамічному режимі скомпонувати її із зовсім іншою бібліотекою libguestfs.so.

Цей виклик було додано у версії 1.0.58. У попередніх версіях libguestfs не було можливості отримати номер версії. З коду мовою C ви можете використовувати функції динамічного компонування для визначення того, чи існує символ (якщо символу не існує, це давня версія, до версії 1.0.58).

Цей виклик повертає структуру із чотирьох елементів. Перші три ("major", "minor" і "release") є числами, які відповідають звичній трійці частин версії. Четвертий елемент ("extra") є рядком, який зазвичай є порожнім, але його може бути використано для специфічної для дистрибутива інформації.

Для побудови початкового рядка версії: "$major.$minor.$release$extra"

Див також: "НУМЕРАЦІЯ ВЕРСІЙ LIBGUESTFS" in guestfs(3).

Зауваження: не користуйтеся цим викликом для визначення доступності якихось можливостей. У промислових дистрибутивах ми виконуємо зворотне портування можливостей з пізніших версій на раніші. Це робить визначення за версією ненадійною справою. Замість цього, користуйтеся командами "available" і "feature-available".

vfs-label

 vfs-label монтований_розділ

Повертає мітку файлової системи на розділі "монтований_розділ".

Якщо у файлової системи немає мітки, буде повернуто порожній рядок.

Для визначення файлової системи на основі мітки скористайтеся "findfs-label".

vfs-minimum-size

 vfs-minimum-size монтування

Отримати мінімальний розмір файлової системи у байтах. Це мінімальний можливий розмір файлової системи після стискання.

Якщо отримання мінімального розміру для файлової системи не передбачено, ця команда завершить роботи повідомленням про помилку, встановивши для errno значення ENOTSUP.

Див. також ntfsresize(8), resize2fs(8), btrfs(8), xfs_info(8).

vfs-type

 vfs-type монтування

Ця команда отримує тип файлової системи, відповідний до файлової системи у "монтуванні".

Для більшості файлових систем результатом виконання є назва модуля VFS Linux, який буде використано для монтування цієї системи, якщо ви змонтуєте її без явного задання типу файлової системи. Наприклад, може бути повернуто рядок "ext3" або "ntfs".

vfs-uuid

get-uuid

 vfs-uuid монтування

Ця команда повертає UUID файлової системи для файлової системи "монтування".

Якщо у файлової системи немає UUID, буде повернуто порожній рядок.

Для визначення файлової системи за UUID скористайтеся "findfs-uuid".

vg-activate

 vg-activate true|false 'групи_томів ...'

Ця команда активує або (якщо параметром є false) деактивує усі логічні томи у вказаних групах томів "групи_томів".

Ця команда дає ті самі результати, що і "vgchange -a y|n групи томів..."

Зауважте, що якщо "групи_томів" є порожнім списком, буде активовано або деактивовано усі групи томів.

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

vg-activate-all

 vg-activate-all true|false

Ця команда активує або (якщо параметром є false) деактивує усі логічні томи в усіх групах томів.

Ця команда дає ті самі результати, що і "vgchange -a y|n"

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

vgchange-uuid

 vgchange-uuid vg

Створити новий випадковий UUID для групи томів "vg".

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

vgchange-uuid-all

 vgchange-uuid-all

Створити нові випадкові UUID для всіх груп томів.

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

vgcreate

 vgcreate група_томів 'фізичні_томи ...'

Ця команда створює групу томів LVM із назвою "група_томів" на основі непорожнього списку фізичних томів "фізичні_томи".

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

vglvuuids

 vglvuuids назва_vg

За вказаною групою томів "назва_vg" ця команда повертає UUID усіх логічних томів, створених у вказаній групі томів.

Цією командою можна скористатися у поєднанні із командами "lvs" і "lvuuid" для пов'язування логічних томів і груп томів.

Див. також "vgpvuuids".

vgmeta

 vgmeta назва_vg

Значенням параметра "назва_vg" є назва групи томів LVM. Ця команда виконує вивчення групи томів і повертає її метадані.

Зауважте, що метадані є внутрішньою структурою, яка використовується LVM і яку може бути будь-коли змінено. Її дані надаються лише з інформаційною метою.

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

vgpvuuids

 vgpvuuids назва_vg

За вказаною групою томів "назва_vg" ця команда повертає UUID усіх фізичних томів, на яких розміщено вказану групу томів.

Цією командою можна скористатися у поєднанні із командами "pvs" і "pvuuid" для пов'язування фізичних томів і груп томів.

Див. також "vglvuuids".

vgremove

 vgremove назва_vg

Вилучає групу томів LVM "назва_vg" (наприклад "VG").

Крім того, ця команда у примусовому порядку вилучає усі логічні томи у групі томів (якщо такі існують).

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

vgrename

 vgrename група_томів нова_група_томів

Перейменовує групу томів "група_томів" на групу томів "нова_група_томів".

vgs

 vgs

Виводить список усіх виявлених груп томів. Є еквівалентом команди vgs(8).

Ця команда повертає список лише тих груп томів, які вдасться виявити (наприклад "VolGroup00").

Див. також "vgs-full".

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

vgs-full

 vgs-full

Виводить список усіх виявлених груп томів. Є еквівалентом команди vgs(8). До «повної» версії включено усі поля.

Працездатність цієї команди залежить від можливості "lvm2". Див. також "feature-available".

vgscan

 vgscan

Ця команда виконує повторне сканування усіх блокових пристроїв і повторно будує список фізичних томів, груп томів та логічних томів LVM.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "lvm-scan".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

vguuid

 vguuid назва_vg

Ця команда повертає UUID групи томів LVM із назвою "назва_vg".

wc-c

 wc-c шлях

Ця команда лічить символи у файлі за допомогою зовнішньої програми "wc -c".

wc-l

 wc-l шлях

Ця команда лічить рядки у файлі за допомогою зовнішньої програми "wc -l".

wc-w

 wc-w шлях

Ця команда лічить слова у файлі за допомогою зовнішньої програми "wc -w".

wipefs

 wipefs пристрій

Ця команда витирає файлову систему або підписи RAID з вказаного пристрою "пристрій" з метою зробити файлову систему невидимою для libblkid.

Ця команда не витирає самої файлової системи або інших даних з пристрою "пристрій".

Порівняйте з командою "zero", яка заповнює нулями перші декілька блоків пристрою.

Працездатність цієї команди залежить від можливості "wipefs". Див. також "feature-available".

write

 write шлях дані

Цей виклик створює файл із назвою "шлях". Вмістом файла буде рядок "дані" (який може складатися з будь-яких 8-бітовий даних).

Див. також "write-append".

write-append

 write-append шлях дані

Цей виклик дописує "дані" наприкінці файла "шлях". Якщо файла "шлях" не існує, його буде створено.

Див. також "write".

write-file

 write-file шлях дані розмір

Цей виклик створює файл із назвою "шлях". Вмістом файла буде рядок "дані" (який може складатися з будь-яких 8-бітовий даних), а розмір файла буде визначено значенням "розмір".

У особливому випадку, якщо "розмір" дорівнює 0, довжину файла буде обчислено за допомогою "strlen" (тому у цьому випадку «дані» не повинні містити вбудованих символів NUL ASCII).

NB. Через ваду запис даних, які містять символи NUL ASCII не працює, навіть якщо явним чином вказати довжину.

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "write".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

xfs-admin

 xfs-admin пристрій [extunwritten:true|false] [imgfile:true|false] [v2log:true|false] [projid32bit:true|false] [lazycounter:true|false] [label:..] [uuid:..]

Змінює параметри файлової системи XFS на пристрої "пристрій".

До пристроїв, які змонтовано, внесення змін неможливе. Перед цим викликом для зміни параметрів адміністратор має демонтувати відповідні файлові системи.

Деякі з параметрів змонтованих файлових систем можна визначати та вносити до них зміни за допомогою викликів "xfs-info" і "xfs-growfs".

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "xfs". Див. також "feature-available".

xfs-growfs

 xfs-growfs шлях [datasec:true|false] [logsec:true|false] [rtsec:true|false] [datasize:N] [logsize:N] [rtsize:N] [rtextsize:N] [maxpct:N]

Збільшує файлову систему XFS, яку змонтовано як "шлях".

Повернута структура має містити дані щодо геометрії. Пропущені поля буде повернуто як "-1" (для числових значень) або як порожні рядки.

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "xfs". Див. також "feature-available".

xfs-info

 xfs-info шлях_або_пристрій

"шлях_або_пристрій" — змонтована файлова система XFS або пристрій, на якому міститься файлова система XFS. Ця команда повертає дані щодо геометрії файлової системи.

Повернута структура має містити дані щодо геометрії. Пропущені поля буде повернуто як "-1" (для числових значень) або як порожні рядки.

Працездатність цієї команди залежить від можливості "xfs". Див. також "feature-available".

xfs-repair

 xfs-repair пристрій [forcelogzero:true|false] [nomodify:true|false] [noprefetch:true|false] [forcegeometry:true|false] [maxmem:N] [ihashsize:N] [bhashsize:N] [agstride:N] [logdev:..] [rtdev:..]

Відновлює пошкоджену файлову систему XFS на пристрої "пристрій".

Файлова система задається за допомогою аргументу "пристрій", який має бути або назвою пристрою розділу диска або томом, на якому міститься файлова система. Якщо вказано назву блокового пристрою, "xfs_repair" спробує знайти простий пристрій, пов'язаний із вказаним блоковим пристроєм і скористається цим простим пристроєм.

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

Повернуте значення стану вказує на те, було виявлено пошкодження файлової системи (повернуте значення 1) чи ні (повернуте значення 0).

У цієї команди є один або декілька необов'язкових аргументів. Див. "НЕОБОВ'ЯЗКОВІ АРГУМЕНТИ".

Працездатність цієї команди залежить від можливості "xfs". Див. також "feature-available".

yara-destroy

 yara-destroy

Знищує попередньо завантажені правила Yara з метою звільнити ресурси libguestfs.

Працездатність цієї команди залежить від можливості "libyara". Див. також "feature-available".

yara-load

 yara-load (назва_файла|-)

Вивантажити набір правил Yara з локального файла назва_файла.

Правила Yara надають змогу категоризувати файли на основі текстових або двійкових взірців у даних цих файлів. Див. "yara-scan", щоб дізнатися про те, як виконати сканування файлів на основі завантажених правил.

Правила може бути вказано у двійковому форматі, створеному програмою yarac, або у форматі початкового коду. У останньому випадку правила має бути спочатку скомпільовано, а потім завантажено.

Правила у форматі початкового коду не можуть включати зовнішні файли. Якщо у вас є файли з такими включеннями, рекомендуємо їх спочатку скомпілювати.

Раніше завантажені правила буде знищено.

Скористайтеся виразом "-" замість назви файла, щоб наказати програмі виконувати читання зі stdin або запис до stdout.

Працездатність цієї команди залежить від можливості "libyara". Див. також "feature-available".

yara-scan

 yara-scan шлях

Сканує файл на основі попереднього завантажених правил Yara.

Для кожного правила відповідності повертається окрема структура "yara_detection".

Структура "yara_detection" містить вказані нижче поля.

"yara_name"
Шлях до файла, який відповідає правилу Yara.
"yara_rule"
Ідентифікатор правила Yara, відповідність якого було встановлено для заданого файла.

Працездатність цієї команди залежить від можливості "libyara". Див. також "feature-available".

zegrep

 zegrep формальний_вираз шлях

Викликає зовнішню програму "zegrep" і повертає рядки-відповідники.

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "grep".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

zegrepi

 zegrepi формальний_вираз шлях

Ця функція викликає зовнішню програму "zegrep -i" і повертає відповідні рядки.

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "grep".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

zero

 zero пристрій

Ця команда заповнює нулями перші декілька блоків пристрою "пристрій".

Кількість занулених блоків не вказується (але вона все одно не є достатньою для гарантованого витирання вмісту пристрою). Для утруднення отримання вмісту пристрою достатньо вилучити таблиці розділів, суперблоки файлової системи тощо.

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

Див. також "zero-device", "scrub-device", "is-zero-device"

zero-device

 zero-device пристрій

Ця команда перезаписує нулями увесь пристрій "пристрій". Порівняйте її із командою "zero", яка перезаписує нулями перші декілька блоків пристрою.

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

zero-free-space

 zero-free-space каталог

Записує нулями вільне місце на файловій системі, змонтованій до точки монтування "каталог". Файлову систему має бути змонтовано для читання і запису.

Вміст файлової системи не буде змінено, але усе вільне місце у файловій системі буде звільнено.

Вільне місце не буде «обрізано». Для обрізання вам слід викликати "fstrim" або скористатися відповідною командою після цієї, залежно від ваших потреб.

zerofree

 zerofree пристрій

Ця команда виконує програму zerofree для пристрою "пристрій". Програма заповнює нулями невикористані inode та блоки диска на файловій системі ext2/3. Таке занулення уможливлює ефективніше стискання файлової системи.

Не запускайте цю програму для обробки змонтованої файлової системи.

Використання цієї програми може призвести до пошкодження файлової системи або даних на файловій системі.

Працездатність цієї команди залежить від можливості "zerofree". Див. також "feature-available".

zfgrep

 zfgrep шаблон шлях

Викликає зовнішню програму "zfgrep" і повертає рядки-відповідники.

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "grep".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

zfgrepi

 zfgrepi шаблон шлях

Викликає зовнішню програму "zfgrep -i" і повертає рядки-відповідники.

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "grep".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

zfile

 zfile метод шлях

This command runs file(1) after first decompressing "path" using "meth".

"meth" must be one of "gzip", "compress" or "bzip2".

Починаючи з версії 1.0.63, можна використовувати замість цієї команди "file", оскільки у сучасних версіях ця команда може обробляти стиснені файли.

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "file".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

zgrep

 zgrep формальний_вираз шлях

This calls the external zgrep(1) program and returns the matching lines.

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "grep".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

zgrepi

 zgrepi формальний_вираз шлях

Ця функція викликає зовнішню програму "zgrep -i" і повертає відповідні рядки.

Через обмеження протоколу передавання повідомлень існує граничний об'єм повідомлення, щось у діапазоні від 2 МБ до 4 МБ. Див. "ОБМЕЖЕННЯ ПРОТОКОЛУ" in guestfs(3).

Ця функція вважається застарілою. У новому коді замість неї слід використовувати "grep".

Застарілі функції не буде вилучено з програмного інтерфейсу, але той факт, що їх визнано застарілими, вказує на проблеми із належним використанням цих функцій.

СТАН ВИХОДУ

guestfish повертає 0, якщо команди виконано без помилок, або 1, якщо сталася помилка.

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

РЕДАКТОР
Для редагування у команді "edit" використовується редактор, вказаний за допомогою змінної середовища $EDITOR. Якщо значення цієї змінної не встановлено, використовується "vi".
Для показу зображень команда "display" використовує програму, вказану за допомогою змінної середовища $GUESTFISH_DISPLAY_IMAGE. Якщо значення цієї змінної не встановлено, буде використано display(1).
Виводиться під час запуску guestfish. Див. "ЗАПИТ".
Виводиться перед виведенням даних guestfish. Див. "ЗАПИТ".
Використовується разом із параметром --remote для задання віддаленого процесу guestfish для керування. Див. розділ "ВІДДАЛЕНЕ КЕРУВАННЯ GUESTFISH КРІЗЬ СОКЕТ".
Встановити запит щодо команд. Див. "ЗАПИТ".
Виводиться перед виходом із guestfish. Див. "ЗАПИТ".
Команда "hexedit" використовує програму, вказану за допомогою змінної середовища $HEXEDITOR, як зовнішній шістнадцятковий редактор. Якщо значення цієї змінної середовища не встановлено, використовується зовнішня програма hexedit(1).
ДОМІВКА
Якщо програму зібрано із підтримкою GNU readline, можна використовувати різноманітні файли у домашньому каталозі. Див. "ФАЙЛИ".
Передати додаткові параметри ядру гостьової системи.
Це старий спосіб визначити "LIBGUESTFS_BACKEND".
Вибрати типовий спосіб створення базової системи. Див. "guestfs_set_backend" in guestfs(3).
Список відокремлених двокрапками параметрів, специфічних для модуля обробки. Див. "МОДУЛЬ" in guestfs(3), "ПАРАМЕТРИ МОДУЛЯ" in guestfs(3).
Місце, де зберігатиметься кеш базової системи libguestfs, якщо використовується базова система supermin. Базова система кешується і спільно використовується усіма дескрипторами, які мають однаковий ідентифікатор ефективного користувача.

Якщо значення "LIBGUESTFS_CACHEDIR" не встановлено, буде використано "TMPDIR". Якщо не встановлено значення "TMPDIR", буде використано /var/tmp.

Див. також "LIBGUESTFS_TMPDIR", "set-cachedir".

Встановіть значення "LIBGUESTFS_DEBUG=1", щоб увімкнути режим докладних повідомлень. Ця змінна має той самий ефект, що і параметр -v.
Встановити типовий виконуваний файл гіпервізору (зазвичай, qemu), яким користуватиметься libguestfs. Якщо не встановлено, буде використано qemu, знайдений скриптом налаштовування під час збирання.
Встановлює обсяг пам'яті, який надається процесу qemu, у мегабайтах. Приклад:

 LIBGUESTFS_MEMSIZE=700
    
Встановити шлях, який guestfish використовує для пошуку ядра та initrd.img. Див. обговорення шляхів у guestfs(3).
Це застарілий спосіб встановлення "LIBGUESTFS_HV".
Місце, де libguestfs зберігатиме тимчасові файли, які використовуються кожним з дескрипторів.

Якщо значення "LIBGUESTFS_TMPDIR" не встановлено, буде використано "TMPDIR". Якщо не встановлено значення "TMPDIR", буде використано /tmp.

Див. також "LIBGUESTFS_CACHEDIR", "set-tmpdir".

Встановіть значення "LIBGUESTFS_TRACE=1", щоб увімкнути трасування команд.
РОЗБИТТЯ НА СТОРІНКИ
Для редагування у команді "more" використовується пейджер, вказаний за допомогою змінної середовища $PAGER. Якщо значення цієї змінної не встановлено, використовується "more".
ШЛЯХ
Libguestfs можуть запускати деякі зовнішні програми і вважати, що для $PATH встановлено якесь правильне значення. Якщо використовується модуль обробки libvirt, libvirt не працюватиме взагалі, якщо у $PATH не міститься шляху до qemu/KVM.
За допомогою цих трьох змінних середовища можна вибрати ядро, яке libguestfs використовуватиме у базовій системі. Якщо не встановлено $SUPERMIN_KERNEL, буде вибрано найсвіжіше з ядер основної системи. Докладніший опис вибору ядра можна знайти на сторінці підручника щодо supermin(1).
ТИМЧАСОВИЙ КАТАЛОГ
Див. "LIBGUESTFS_CACHEDIR", "LIBGUESTFS_TMPDIR".
Цей каталог є специфічним каталогом користувача, який призначено для зберігання неважливих файлів під час роботи.

Якщо встановлено, використовується для зберігання тимчасових сокетів. Якщо не встановлено, використовується /tmp.

Див. також "get-sockdir", http://www.freedesktop.org/wiki/Specifications/basedir-spec/.

ФАЙЛИ

$XDG_CONFIG_HOME/libguestfs/libguestfs-tools.conf
$HOME/.libguestfs-tools.rc
$XDG_CONFIG_DIRS/libguestfs/libguestfs-tools.conf
/etc/libguestfs-tools.conf
Цей файл налаштувань керує типовим режимом — лише читання чи читання і запис (--ro або --rw).

Див. libguestfs-tools.conf(5).

$HOME/.guestfish
Якщо програму зібрано із підтримкою GNU readline, до цього файла зберігатиметься журнал команд.
$HOME/.inputrc
/etc/inputrc
Якщо програму зібрано із підтримкою GNU readline, цими файлами можна скористатися для налаштовування readline. Докладніший опис можна знайти на сторінці підручника "INITIALIZATION FILE" in readline(3).

Для створення правил, які застосовуватимуться лише до guestfish, скористайтеся таким:

 $if guestfish
 ...
 $endif
    

Серед змінних, які ви можете встановити у inputrc для внесення змін до поведінки guestfish, такі:

Типово, guestfish ігноруватиме регістр символів під час автоматичного доповнення шляхів на диску у відповідь на натискання клавіші Tab. Скористайтеся таким:

 set completion-ignore-case off
    

щоб наказати guestfish враховувати регістр символів.

При використанні параметра -N або --new приготований диск або файлову систему буде створено у файлі test1.img у поточному каталозі. Друге використання -N призведе до використання test2.img тощо. Усі наявні файли із такими самими назвами буде перезаписано. Ви можете скористатися іншими назвами файлів за допомогою вказаного префікса "filename=".

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

guestfs(3), http://libguestfs.org/, virt-alignment-scan(1), virt-builder(1), virt-builder-repository(1), virt-cat(1), virt-copy-in(1), virt-copy-out(1), virt-customize(1), virt-df(1), virt-diff(1), virt-edit(1), virt-filesystems(1), virt-inspector(1), virt-list-filesystems(1), virt-list-partitions(1), virt-log(1), virt-ls(1), virt-make-fs(1), virt-p2v(1), virt-rescue(1), virt-resize(1), virt-sparsify(1), virt-sysprep(1), virt-tail(1), virt-tar(1), virt-tar-in(1), virt-tar-out(1), virt-v2v(1), virt-win-reg(1), libguestfs-tools.conf(5), display(1), hexedit(1), supermin(1).

АВТОРИ

Richard W.M. Jones ("rjones at redhat dot com")

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

Copyright (C) 2009-2020 Red Hat Inc.

LICENSE

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.

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.
2021-03-31 libguestfs-1.44.2