Scroll to navigation

HARDLINK(1) Корисничке наредбе HARDLINK(1)

НАЗИВ

hardlink - повезује више примерака датотеке

УВОД

hardlink [опције] [директоријум|датотека]...

ОПИС

hardlink је алат који замењује умношке датотека или чврстим везама или клоновима „умножи-при-писању“, штедећи простор тако.

hardlink прво ствара бинарно стабло величина датотека а затим пореди садржај датотека које имају исту величину. Постоје две основне методе поређења садржаја. memcmp метода директно чита блокове података из датотека и пореди их. Друга метода се заснива на сумама провере (као SHA256) у том случају за сваки блок података суму провере израчунава крипто АПИ Линукс кернела, и та сума провере се смешта у корисников простор и користи за поређење датотека.

За сваку датотеку такође се смешта „уводна“ међумеморија (32 бајта). Ова међумеморија се користи независно од методе поређења и захтеване величине оставе и уи-величине. „Уводна“ међумеморија значајно смањује радње са садржајем података јер се датотеке често разликују од почетка.

ОПЦИЈЕ

-h, --help

Приказује текст помоћи и излази.

-V, --version

Исписује издање и излази.

-c, --content

Consider only file content, not attributes, when determining whether two files are equal. Same as -pot.

-b, --io-size величина

Величина read(2) или sendfile(2) међумеморије коришћене приликом поређења садржаја датотека. За аргументом величина могу да следе суфикси множитеља KiB, MiB, итд. „iB“ је изборно, тј., „K“ значи исто што и „KiB“. Основно је 8KiB за „memcmp“ методу и 1MiB за остале методе. Само „memcmp“ метода користи меморију процеса за међумеморију, остале методе користе начин нултог умножавања а У/И радња се обавља у кернелу. Величина може бити измењена у лету да би испунила број сума провере кешираног садржаја.

-d, --respect-dir

Only try to link files with the same directory name. The top-level directory (as specified on the hardlink command line) is ignored. For example, hardlink --respect-dir /foo /bar will link /foo/some/file with /bar/some/file, but not /bar/other/file. If combined with --respect-name, then entire paths (except the top-level directory) are compared.

-f, --respect-name

Само покушава да повеже датотеке са истим називом(основе). Строго се препоручује коришћење дугих опција уместо -f која се тумачи на други начин од стране других hardlink примена.

-i, --include рег_израз

Регуларни израз за обухват датотека. Ако је опција --exclude дата, ова опција поново обухвата датотеке које у супротном не би биле обухваћене. Ако је опција коришћена без --exclude, обухваћене су само датотеке поклопљене шаблоном.

-m, --maximize

Од једнаких датотека, задржава датотеку са већим бројем веза.

-M, --minimize

Од једнаких датотека, задржава датотеку са мањим бројем веза.

-n, --dry-run

Не делује, само исписује шта ће се десити.

-o, --ignore-owner

Повезује и упоређује датотеке чак и ако се подаци њихових власника (корисника и групае) разликују. Резултати могу бити непредвидиви.

-O, --keep-oldest

Од једнаких датотека, задржава најстарију датотеку (најстарије време измене) По основи, новија датотека се задржава. Ако је наведено --maximize или --minimize, број везе има предност у односу на време измене.

-p, --ignore-mode

Повезује и упоређује датотеке чак и ако се њихов режим разликује. Резултати могу бити мало непредвидиви.

-q, --quiet

Тихи режим, не исписује ништа.

-r, --cashe-size величина

Величина оставе за суме провере садржаја. Све не-„memcmp“ методе израчунавају суму провере за сваки блок садржаја датотеке (видите --io-size), те суме провере се одлажу за следеће поређење. Величина је важна за велике датотеке или велике скупове датотека исте величине. Основно је 10MiB.

-s, --minimum-size величина

Најмања величина за узимање у обзир. По основи то је 1, тако да празне датотеке неће бити повезане. За аргументом величина може да следи суфикс множитељ KiB (=1024), MiB (=1024*1024), и тако редом за GiB, TiB, PiB, EiB, ZiB и YiB. („iB“ није обавезно, нпр., „K“ има исто значење као „KiB“).

-S, --maximum-size величина

Најмања величина за узимање у обзир. По основи то је 0, и 0 има посебно значење неограничености. За аргументом величина може да следи суфикс множитељ KiB (=1024), MiB (=1024*1024), и тако редом за GiB, TiB, PiB, EiB, ZiB и YiB. („iB“ није обавезно, нпр., „K“ има исто значење као „KiB“).

-t, --ignore-time

Повезује и упоређује датотеке чак и ако се њихова времена измене разликују. Ово је обично добар избор.

-v, --verbose

Verbose output, explain to the user what is being done. If specified once, every hardlinked file is displayed. If specified twice, it also shows every comparison.

-x, --exclude рег_израз

Регуларни израз који искључује датотеке из упоређивања и повезивања.

-X, --respect-xattrs

Само покушава да повеже датотеке са истим проширеним атрибутима.

-y, --method назив

Поставља методу поређења садржаја датотеке. Тренутно подржане методе су „sha256“, „sha1“, „crc32c“ и „memcmp“. Основно је „sha256“, или „memcmp“ ако „Linux Crypto API“ није доступно. Методе засноване на сумама провере се примењују на начин нултог умножавања, у том случају садржаји датотека се не умножавају у кориснички простор а сав прорачун се ради у кернелу.

--reflink[=када]

Ствара клонове умножене при писању (тј. везе упуте) уместо чврстих веза. Упутно свезане датотеке деле податке само на диску, али режим датотеке и власник могу бити другачији. Препоручује се да се користи са опцијама --ignore-owner и --ignore-mode. Ова опција подразумева --skip-reflinks да би се занемариле већ клониране датотеке.

Опционални аргумент када може бити never (никада), always (увек), или auto. Ако је аргумент када изостављен, подразумева се auto, у том случају, hardlink проверава врсту система датотека и користи упутне везе само на BTRFS и XFS, и пребацује се на чврсте везе када стварање упутне везе није могуће. Аргумент always искључује откривање врсте система датотека и пребацује се на чврсте везе, у том случају, допуштене су само чврсте везе.

--skip-reflinks

Занемарује већ клониране датотеке. Ова опција се може користити без --reflink приликом стварања класичних чврстих веза.

АРГУМЕНТИ

hardlink узима један или више директоријума у којима ће се тражити датотеке за повезивање.

ГРЕШКЕ

Изворна примена hardlink-а користи опцију -f да примора стварање чврстих веза између система датотека. Ова врло ретко коришћена функција више није подржана од стране текућег hardlink-а.

hardlink претпоставља да се стабло над којим ради не мења за време радње. Ако се стабло измени, резултат је недефинисан и потенцијално опасан. На пример, ако се редовна датотека замени уређајем, hardlink може почети да чита са уређаја. Ако се састојак путање замени симболичком везом или се измене овлашћења датотеке, безбедност може бити доведена у питање. Не покрећите hardlink на измењивом стаблу или на стаблу које контролише други корисник.

АУТОР

Постоји више примена hardlink-а. Најстарију примену је урадио Јакуб Јелинек за дистрибуцију Федоре, ова примена је коришћена у „util-linux“ између издања v2.34 и v2.36. Текућа примена је заснована на Дебијановом издању које је приредио Жилјан Андре Клод.

ПРИЈАВЉИВАЊЕ ГРЕШАКА

За пријављивање грешака, користите пратиоца грешака на <https://github.com/util-linux/util-linux/issues>.

ДОСТУПНОСТ

Наредба hardlink је део пакета „util-linux“ који се може преузети са Архиве Линукс кернела <https://www.kernel.org/pub/linux/utils/util-linux/>.

2023-07-24 util-linux 2.39.1