FALLOCATE(1)

NUME
fallocate - pre-alocă sau revocă alocarea de spațiu pentru un fișier

REZUMAT

fallocate [-c|-p|-z] [-o offset] -l length [-n] filename

fallocate -d [-o offset] [-l length] filename

fallocate -x [-o offset] -l length filename

DESCRIERE

fallocate is used to manipulate the allocated disk space for a file, either to deallocate or preallocate it. For filesystems which support the fallocate(2) system call, preallocation is done quickly by allocating blocks and marking them as uninitialized, requiring no IO to the data blocks. This is much faster than creating a file by filling it with zeroes.

Starea de ieșire returnată de fallocate este 0 în caz de succes și 1 în caz de eșec.

OPȚIUNI

Argumentele lungime și poziție pot fi urmate de sufixele multiplicative KiB (=1024), MiB (=1024*1024), și așa mai departe pentru GiB, TiB, PiB, EiB, ZiB și YiB („iB” este opțional, de exemplu, „K” are aceeași semnificație ca și „KiB”), sau sufixele KB (=1000), MB (=1000*1000) și așa mai departe pentru GB, TB, PB, EB, ZB și YB.

The options --collapse-range, --dig-holes, --punch-hole, --zero-range and --posix are mutually exclusive.

-c, --collapse-range
    Îndepărtează un interval de octeți dintr-un fișier, fără a lăsa o gaură. Intervalul de octeți care urmează să fie eliminat începe de la poziția și continuă cu lungimea octeți. La finalizarea operației, conținutul fișierului care începe la locația poziția+lungimea va fi adăugat la locația poziția, iar fișierul va fi cu lungimea octeți mai mic. Opțiunea --keep-size nu poate fi specificată pentru operația „collapse-range”.

    Disponibilă începând cu Linux 3.15 pentru ext4 (numai pentru fișiere bazate pe extindere de spațiu) și XFS.

    Un sistem de fișiere poate impune limitări privind precizia operației, pentru a asigura o implementare eficientă. În mod obișnuit, poziția și lungimea trebuie să fie un multiplu al dimensiunii blocului logic al sistemului de fișiere, care variază în funcție de tipul și configurația sistemului de fișiere. În cazul în care un sistem de fișiere are o astfel de cerință, operația va eșua cu eroarea EINVAL dacă această cerință este încălcată.

-d, --dig-holes
    Detectează și creează goluri. Acest lucru face ca fișierul să fie mai dispersat pe loc, fără a utiliza spațiu suplimentar pe disc. Dimensiunea minimă a golului depinde de dimensiunea blocului de In/Ieș din sistemul de fișiere (de obicei 4096 octeți). De asemenea, atunci când se utilizează această opțiune, --keep-size este implicită. Dacă nu este specificat niciun interval prin --offset și --length, atunci întregul fișier este analizat pentru goluri.

    Vă puteți gândi la această opțiune ca și cum ați face un „cp --sparse” și apoi ați redenumi fișierul de destinație la cel original, fără a fi nevoie de spațiu suplimentar pe disc.

    Consultați --punch-hole pentru o listă a sistemelor de fișiere acceptate.

-i, --insert-range
    Inserează un gol de lungime octeți de la poziția, schimbând datele existente.

-l, --length lungimea
    Specifică lungimea intervalului, în octeți.

-n, --keep-size
    Nu modifică lungimea aparentă a fișierului. Aceasta poate aloca efectiv blocuri după EOF, care pot fi eliminate cu o trunchiere.

-o, --offset poziția
    Specifică poziția de început a intervalului, în octeți.

-p, --punch-hole
    Eliberează spațiu (adică creează o gaură) în intervalul de octeți începând de la poziția și continuând cu lungimea octeți. În intervalul specificat, blocurile parțiale ale sistemului de fișiere sunt reduse la zero, iar blocurile întregi ale sistemului de fișiere sunt eliminate din fișier. După un apel reușit, citirile ulterioare din acest interval vor returna zerouri. Această opțiune nu poate fi specificată în același timp cu opțiunea --zero-range. De asemenea, atunci când se utilizează această opțiune, --keep-size este inclusă.

    Acceptată pentru XFS (de la Linux 2.6.38), ext4 (de la Linux 3.0), Btrfs (de la Linux 3.7), tmpfs (de la Linux 3.5) și gfs2 (de la Linux 4.16).

-v, --verbose
    Activează mesajele informative detaliate.

-x, --posix
    Activează modul de operare POSIX. În acest mod, operația de alocare se finalizează întotdeauna, dar poate dura mai mult timp atunci când alocarea rapidă nu este acceptată de sistemul de fișiere de bază.

-z, --zero-range
    Pune la zero spațiul în intervalul de octeți începând de la poziția și continuând cu lungimea octeți. În cadrul intervalului specificat, blocurile sunt prealocate pentru regiunile care acoperă golurile din fișier. După un apel reușit, citirile ulterioare din acest interval vor returna zero.

    Punerea la zero se face în cadrul sistemului de fișiere, de preferință prin convertirea intervalului în spații nescrise. Această abordare înseamnă că intervalul specificat nu va fi eliminat fizic de pe dispozitiv (cu excepția blocurilor parțiale de la oricare dintre capetele intervalului), iar In/Ieș este (astfel) necesară doar pentru a actualiza metadatele.

    Opțiunea --keep-size poate fi specificată pentru a preveni modificarea lungimii fișierului.

    Disponibilă începând cu Linux 3.14 pentru ext4 (numai pentru fișiere bazate pe extindere de spațiu) și XFS.

-h, --help
    Afișează acest mesaj de ajutor și iese.

-V, --version
    Afișează informațiile despre versiune și iese.

AUTORI

CONSULTAȚI ȘI

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

RAPORTAREA ERORILOR

Pentru rapoarte de eroare, folosiți sistemul de urmărire al erorilor la

DISPONIBILITATE

Comanda fallocate face parte din pachetul util-linux care poate fi descărcat de la