'\" t .\" Title: hardlink .\" Author: [see the "AUTHOR(S)" section] .\" Generator: Asciidoctor 2.0.26 .\" Date: 2026-09-02 .\" Manual: Команди користувача .\" Source: util-linux 2.42.3 .\" Language: English .\" .TH "HARDLINK" "1" "2026-09-02" "util\-linux 2.42.3" "Команди користувача" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0 .nh .ad l .de URL \fI\\$2\fP <\\$1>\\$3 .. .als MTO URL .if \n[.g] \{\ . mso www.tmac . am URL . ad l . . . am MTO . ad l . . . LINKSTYLE blue R < > .\} .SH "НАЗВА" hardlink \- пов\*(Aqязування посиланнями декількох копій файла .SH "КОРОТКИЙ ОПИС" .sp \fBhardlink\fP [параметри] \fIкаталог\fP|\fIфайл\fP.\|.\|. .SH "ОПИС" .sp \fBhardlink\fP \- інструмент, який заміняє копії файла їхніми жорсткими посиланнями або клонами копіювання\-при\-записі, які надають змогу заощадити місце на диску. .sp Спочатку, \fBhardlink\fP створює бінарне дерево розмірів файлів, а потім порівнює вміст файлів, які мають однаковий розмір. Передбачено два базових методів порівняння вмісту. При використанні методу \fBmemcmp\fP програма безпосередньо читає блоки даних з файлів і порівнює її. Інший метод засновано на контрольних сумах (подібних до SHA256); у цьому випадку для кожного з блоків даних буде обчислено контрольну суму за допомогою програмного інтерфейсу шифрування ядра Linux, і цю контрольну суму буде збережено у просторі користувача і використано для порівняння. .sp Для кожного файла також буде кешовано «вступний» буфер (32 байти). Цей буфер буде використано незалежно від методу порівняння і запитаного розміру кешу та розміру введення\-виведення. «Вступний» буфер значно зменшує потребу у діях із даними, оскільки файли дуже часто відрізняються уже початковим вмістом. .SH "ПАРАМЕТРИ" .sp \fB\-c\fP, \fB\-\-content\fP .RS 4 Брати до уваги лише вміст файлів, а не атрибути, при визначенні того, чи є файли однаковими Те саме, що \fB\-pot\fP. .RE .sp \fB\-b\fP, \fB\-\-io\-size\fP \fIрозмір\fP .RS 4 Розмір буфера \fBread\fP(2) або \fBsendfile\fP(2), який буде використано для порівняння вмісту файлів. Після аргументу \fIрозмір\fP може бути вказано суфікси розмірностей \- KiB, MiB тощо. Частина рядка «iB» є необов\(cqязковою, наприклад, «K» є тим самим, що і «KiB». Типовим є розмір 8 КіБ для методу memcmp і 1 МіБ для інших методів. Пам\(cqять процесів для буфера використовує лише метод memcmp, інші методи використовують нуль\-копіювання, а дію з введення\-виведення виконує ядро. Розмір може бути змінено на льоту так, щоб він відповідав кількості контрольних сум кешованих даних. .RE .sp \fB\-d\fP, \fB\-\-respect\-dir\fP .RS 4 Only try to link files with the same directory name. The top\-level directory (as specified on the \fBhardlink\fP command line) is ignored. For example, \fBhardlink \-\-respect\-dir /foo /bar\fP will link \fI/foo/some/file\fP with \fI/bar/some/file\fP, but not \fI/bar/other/file\fP. If combined with \fB\-\-respect\-name\fP, then entire paths (except the top\-level directory) are compared. .RE .sp \fB\-f\fP, \fB\-\-respect\-name\fP .RS 4 Намагатися створити посилання лише для файлів з однаковою (основною) назвою. Наполегливо рекомендуємо використовувати довгі версії запису параметрів, а не \fB\-f\fP, який може бути оброблено у різний спосіб іншими реалізаціями \fBhardlink\fP. .RE .sp \fB\-F\fP, \fB\-\-prioritize\-trees\fP .RS 4 Keep files found in the earliest specified top\-level directory if there are multiple identical files in different trees. For example, \fBhardlink foo/ bar/\fP will link files in bar/ to equal files in the foo/ directory. .RE .sp \fB\-i\fP, \fB\-\-include\fP \fIформальний_вираз\fP .RS 4 Формальний вираз для включення файлів. Якщо було вказано параметр \fB\-\-exclude\fP, цей параметр повторно включає файли, які інакше було б виключено. Якщо параметр використано без \fB\-\-exclude\fP, буде включено лише файли, які відповідають взірцю. .RE .sp \fB\-l\fP, \fB\-\-list\-duplicates\fP .RS 4 Don\(cqt link anything, but list the absolute path of every duplicate file, one per line, preceded by a unique 16\-byte discriminator and a tab. .RE .sp \fB\-m\fP, \fB\-\-maximize\fP .RS 4 Серед однакових файлів зберігати файл із найвищою кількістю посилань. .RE .sp \fB\-M\fP, \fB\-\-minimize\fP .RS 4 Серед однакових файлів зберігати файл із найнижчою кількістю посилань. .RE .sp \fB\-\-mount\fP .RS 4 Do not traverse directories on different filesystems (remain within the same filesystem). .RE .sp \fB\-n\fP, \fB\-\-dry\-run\fP .RS 4 Не виконувати дій, лише вивести дані щодо того, що буде зроблено. .RE .sp \fB\-o\fP, \fB\-\-ignore\-owner\fP .RS 4 Створити посилання і порівняти файли, навіть якщо дані щодо власника (користувача і групи) є різними. Результати можуть бути непередбачуваними. .RE .sp \fB\-O\fP, \fB\-\-keep\-oldest\fP .RS 4 Серед однакових файлів зберегти найдавніший файл (файл із найдавнішим часом внесення змін). Типово, буде збережено найновіший файл. Якщо вказано \fB\-\-maximize\fP або \fB\-\-minimize\fP, кількість посилань матиме вищий пріоритет за час внесення змін. .RE .sp \fB\-p\fP, \fB\-\-ignore\-mode\fP .RS 4 Створити посилання і порівняти файли, навіть якщо режим доступу до файлів є різним. Результати можуть бути дещо непередбачуваними. .RE .sp \fB\-q\fP, \fB\-\-quiet\fP .RS 4 Режим без повідомлень \- нічого не виводити. .RE .sp \fB\-r\fP, \fB\-\-cache\-size\fP \fIрозмір\fP .RS 4 Розмір кешу для контрольних сум даних. Для усіх методи, окрім memcmp, контрольну суму буде обчислено для кожного блоку даних файла (див. \fB\-\-io\-size\fP), ці контрольні суми буде кешовано для наступного порівняння. Розмір є важливим для великих файлів або великих наборів файлів однакового розміру. Типовим є розмір у 10 МіБ. .RE .sp \fB\-\-reflink\fP[\fB=\fP\fIумова\fP] .RS 4 Create copy\-on\-write clones (aka reflinks) rather than hardlinks. The reflinked files share only on\-disk data, but the file mode and owner can be different. It\(cqs recommended to use this option together with the \fB\-\-ignore\-owner\fP and \fB\-\-ignore\-mode\fP options. This option implies \fB\-\-skip\-reflinks\fP to ignore already cloned files. .sp The optional argument \fIwhen\fP can be \fBnever\fP, \fBalways\fP, or \fBauto\fP. If the \fIwhen\fP argument is omitted, it defaults to \fBauto\fP, which means that \fBhardlink\fP checks the filesystem type and uses reflinks on BTRFS, XFS and ZFS only, and falls back to hardlinks when creating a reflink is impossible. The argument \fBalways\fP disables filesystem\-type detection and the fallback to hardlinks, which means that only reflinks are allowed. .RE .sp \fB\-\-skip\-reflinks\fP .RS 4 Ігнорувати вже клоновані файли. Цим параметром можна скористатися без \fB\-\-reflink\fP при створенні класичних жорстких посилань. .RE .sp \fB\-s\fP, \fB\-\-minimum\-size\fP \fIрозмір\fP .RS 4 Мінімальний розмір, який слід розглядати. Типовим є 1, посилання на порожні файли не створюватимуться. За аргументом \fIрозмір\fP можна вказати одиницю виміру: KiB (=124), MiB (=1024*1024) тощо для GiB, TiB, PiB, EiB, ZiB та YiB (частина «iB» є необов\(cqязковою, наприклад «K» є тим самим, що і «KiB») .RE .sp \fB\-S\fP, \fB\-\-maximum\-size\fP \fIрозмір\fP .RS 4 Максимальний розмір, який слід розглядати. Типовим є 0, тобто «без обмежень». За аргументом \fIрозмір\fP можна вказати одиницю виміру: KiB (=1024), MiB (=1024*1024) тощо для GiB, TiB, PiB, EiB, ZiB та YiB (частина «iB» є необов\(cqязковою, наприклад «K» є тим самим, що і «KiB»). .RE .sp \fB\-t\fP, \fB\-\-ignore\-time\fP .RS 4 Створити посилання і порівняти файли, навіть якщо час внесення змін до файлів є різним. Зазвичай, варто цим скористатися. .RE .sp \fB\-v\fP, \fB\-\-verbose\fP .RS 4 Вивести докладніші повідомлення із поясненням користувачеві того, які дії виконуються. Якщо вказано один раз, буде показано кожен файл із жорсткими посиланнями; якщо вказано двічі, також показує усі порівняння. .RE .sp \fB\-x\fP, \fB\-\-exclude\fP \fIформальний_вираз\fP .RS 4 Формальний вираз, який виключає файли із порівняння і створення посилань. Цей параметр можна вказати декілька разів в одній команді. .RE .sp \fB\-\-exclude\-subtree\fP \fIформальний\-вираз\fP .RS 4 Формальний вираз, який виключає цілі каталоги із порівняння і створення посилань. Цей параметр також можна вказати декілька разів в одній команді. .RE .sp \fB\-X\fP, \fB\-\-respect\-xattrs\fP .RS 4 Намагатися пов\(cqязати посиланням файли, лише якщо у них однакові розширені атрибути. .RE .sp \fB\-y\fP, \fB\-\-method\fP \fIназва\fP .RS 4 Set the file content comparison method. The currently supported methods are \fBsha256\fP, \fBsha1\fP, \fBcrc32c\fP, and \fBmemcmp\fP. The default is \fBsha256\fP, or \fBmemcmp\fP if the Linux Crypto API is not available. The methods based on checksums are implemented in a zero\-copy way, which means that file contents are not copied to userspace and all calculation is done in the kernel. .RE .sp \fB\-z\fP, \fB\-\-zero\fP .RS 4 Separate lines with a NUL byte instead of a newline (for \fB\-l\fP). .RE .sp \fB\-h\fP, \fB\-\-help\fP .RS 4 Вивести текст довідки і завершити роботу. .RE .sp \fB\-V\fP, \fB\-\-version\fP .RS 4 Показати дані щодо версії і завершити роботу. .RE .SH "АРГУМЕНТИ" .sp \fBhardlink\fP приймає один або декілька записів каталогів, у яких відбуватиметься пошук файлів для створення посилань. .SH "СЕРЕДОВИЩЕ" .sp \fBULFILEEQ_DEBUG\fP=all .RS 4 Вмикає показ діагностичних повідомлень для порівняння файлів. .RE .SH "ВАДИ" .sp У початковій реалізації \fBhardlink\fP використано параметр \fB\-f\fP для примусового створення жорстких посилань між файловими системами. Підтримки цієї рідкісної у використанні можливості у поточній версії \fBhardlink\fP не передбачено. .sp При створенні \fBhardlink\fP було зроблено припущення, що ієрархії файлової системи, з якими працює програма, не змінюються під час її роботи. Якщо в ієрархії відбуваються зміни, результат роботи може бути невизначеним або потенційно небезпечним для даних. Наприклад, якщо звичайний файл буде замінено файлом пристрою, \fBhardlink\fP може розпочати читання з пристрою. Якщо компонент шляху буде замінено символічним посиланням або змінено права доступу до файла, може постраждати захист системи. Не запускайте \fBhardlink\fP для ієрархії файлів, у якій відбуваються зміни, або ієрархії файлів, яку контролює інший користувач. .SH "АВТОР" .sp Існує декілька реалізацій \fBhardlink\fP. Найпершу було створено Jakub Jelinek для дистрибутиву Fedora. Цю реалізацію було використано в util\-linux між версіями 2.34 і 2.36. Поточну реалізацію засновано на версії для Debian, автором якої є Julian Andres Klode. .SH "ЯК НАДІСЛАТИ ЗВІТ ПРО ВАДИ" .sp Для звітування щодо вад скористайтеся \c .URL "https://github.com/util\-linux/util\-linux/issues" "системою стеження за вадами" "" .SH "ДОСТУП ДО ПРОГРАМИ" .sp Програма \fBhardlink\fP є частиною пакунка util\-linux, який можна отримати з \c .URL "https://www.kernel.org/pub/linux/utils/util\-linux/" "архіву ядра Linux" "."