noble (1) fallocate.1.gz

Provided by: util-linux-locales_2.39.3-9ubuntu6.2_all bug

НАЗВА

       fallocate - попередньо отримати місце у файлі або скасувати отримання місця у файлі

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

       fallocate [-c|-p|-z] [-o відступ] -l довжина [-n] назва-файла

       fallocate -d [-o відступ] [-l довжина] назва-файла

       fallocate -x [-o відступ] -l довжина назва-файла

ОПИС

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

       Станом виходу з fallocate є 0, якщо дію буде виконано успішно, і 1, якщо станеться помилка.

ПАРАМЕТРИ

       Після аргументів довжина і відступ можна додавати суфікси одиниць KiB (=1024), MiB (=1024*1024) тощо для
       GiB, TiB, PiB, EiB, ZiB та YiB (частина «iB» є необов’язковою, наприклад, «K» є тим самим, що і «KiB»)
       або суфікси KB (=1000), MB (=1000*1000) тощо для GB, TB, PB, EB, ZB і YB.

       Параметри --collapse-range, --dig-holes, --punch-hole і --zero-range не можна використовувати одночасно.

       -c, --collapse-range
           Вилучає діапазон байтів з файла без залишення дірки. Діапазон байтів, який буде згорнуто,
           починатиметься із позиції відступ і продовжуватиметься довжина байтів. По завершенню дії вміст файла,
           що починається із позиції відступ+довжина буде дописано з позиції відступ, а файл стане на довжина
           байтів меншим. Якщо виконується дія із згортання діапазону, параметр --keep-size не може бути вказано
           у рядку команди.

           Доступна з Linux 3.15 для ext4 (лише для файлів на основі розширення) і XFS.

           Файлова система може накладати обмеження на дискретизацію дії для того, щоб забезпечити ефективну
           реалізацію. Типово, відступ і довжина мають бути кратним до розміру логічного блоку файлової системи,
           який залежить від типу та налаштувань файлової системи. Якщо у файловій системі встановлено подібні
           обмеження, спроба виконання дії завершиться помилкою EINVAL при порушенні обмежень.

       -d, --dig-holes
           Виявляти і усувати дірки. Це робитиме файл розрідженим на місці без використання зайвого місця на
           диску. Мінімальний розмір дірки залежить від розміру блоку введення-виведення файлової системи
           (зазвичай, він дорівнює 4096 байтів). Також, при використанні цього параметра неявним чином
           встановлюється --keep-size. Якщо діапазон не вказано за допомогою --offset і --length, буде виконано
           виявлення дірок в усьому файлі.

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

           Див. --punch-hole, щоб ознайомитися зі списком підтримуваних файлових систем.

       -i, --insert-range
           Вставити дірку довжиною довжина байтів з позиції відступ, зсунувши наявні дані.

       -l, --length довжина
           Вказує довжину діапазону у байтах.

       -n, --keep-size
           Не змінювати видиму довжину файла. Насправді, може призвести до отримання блоків за EOF, які може
           бути вилучено обрізанням.

       -o, --offset відступ
           Вказати початковий відступ діапазону у байтах.

       -p, --punch-hole
           Скасувати розміщення (тобто створити дірку) у діапазоні байтів, який починається з відступ і має
           розмір довжина байтів. У вказаному діапазоні часткові блоки файлової системи буде занулено, а цілі
           блоки файлової системи вилучено з файла. Після успішного виклику наступні читання з вказаного
           діапазону файла повертатимуть нулі. Цей параметр не можна вказувати разом із параметром --zero-range.
           Також при використанні цього параметра неявним чином встановлюється --keep-size.

           Передбачено підтримку XFS (починаючи з Linux 2.6.38), ext4 (починаючи з Linux 3.0), Btrfs (починаючи
           з Linux 3.7), tmpfs (починаючи з Linux 3.5) і gfs2 (починаючи з Linux 4.16).

       -v, --verbose
           Увімкнути докладний режим.

       -x, --posix
           Увімкнути режим сумісності з POSIX. У цьому режимі дія із отримання пам’яті завжди завершується, але
           може тривати довше, якщо якщо у базовій системі не передбачено підтримки швидкого розміщення.

       -z, --zero-range
           Записати нулями місце у діапазоні байтів від відступ довжиною довжина байтів. У вказаному діапазоні
           блоки буде попередньо отримано для областей, які займають у файлі дірки. Після успішного виклику
           наступні читання з цього діапазону даватимуть нулі.

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

           Може бути вказано параметр --keep-size для запобігання зміні довжини файла.

           Доступна з Linux 3.14 для ext4 (лише для файлів на основі розширення) і XFS.

       -h, --help
           Вивести текст довідки і завершити роботу.

       -V, --version
           Вивести дані щодо версії і завершити роботу.

АВТОРИ

       Eric Sandeen <sandeen@redhat.com>, Karel Zak <kzak@redhat.com>

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

       truncate(1), fallocate(2), posix_fallocate(3)

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

       Для звітування щодо вад скористайтеся системою стеження за вадами -
       https://github.com/util-linux/util-linux/issues.

ДОСТУП ДО ПРОГРАМИ

       Програма fallocate є частиною пакунка util-linux, який можна отримати з архіву ядра Linux
       <https://www.kernel.org/pub/linux/utils/util-linux/>.