table of contents
| HARDLINK(1) | Användarkommandon | HARDLINK(1) |
NAMN¶
hardlink - länka flera kopior av en fil
SYNOPSIS¶
hardlink [flaggor] katalog|fil...
BESKRIVNING¶
hardlink är ett verktyg som ersätter kopior av en fil med antingen hardlinks eller copy-on-write-kloner, vilket sparar utrymme.
hardlink skapar först ett binärt träd med filstorlekar och jämför sedan innehållet i filer som har samma storlek. Det finns två grundläggande metoder för innehållsjämförelse. Metoden memcmp läser direkt datablock från filer och jämför dem. Den andra metoden baseras på kontrollsummor (som SHA256); i det här fallet beräknas en kontrollsumma för varje datablock av Linux-kärnans krypto-API, och denna kontrollsumma lagras i userspace och används för filjämförelser.
För varje fil cachelagras också en "intro"-buffert (32 byte). Denna buffert används oberoende av jämförelsemetod och begärd cache-size och io-size. "Intro"-bufferten minskar dramatiskt antalet operationer med datainnehåll eftersom filerna ofta är olika redan från början.
FLAGGOR¶
-c, --content
-b, --io-size storlek
-d, --respect-dir
-f, --respect-name
-F, --prioritize-trees
-i, --include regex
-l, --list-duplicates
-m, --maximize
-M, --minimize
--mount
-n, --dry-run
-o, --ignore-owner
-O, --keep-oldest
-p, --ignore-mode
-q, --quiet
-r, --cache-size storlek
--reflink[=när]
Det valfria argumentet när kan vara never, always eller auto. Om argumentet när utelämnas används auto, vilket innebär att hardlink kontrollerar filsystemstypen och endast använder reflänkar på BTRFS, XFS och ZFS, samt faller tillbaka på hårda länkar när en reflänk inte kan skapas. Argumentet always inaktiverar identifiering av filsystemstypen och återgång till hårda länkar, vilket innebär att endast reflänkar tillåts.
--skip-reflinks
-s, --minimum-size storlek
-S, --maximum-size storlek
-t, --ignore-time
-v, --verbose
-x, --exclude regex
--exclude-subtree regex
-X, --respect-xattrs
-y, --method namn
-z, --zero
-h, --help
-V, --version
ARGUMENT¶
hardlink tar en eller flera kataloger som ska genomsökas efter filer som ska länkas.
MILJÖ¶
ULFILEEQ_DEBUG=all
KÄNDA PROBLEM¶
Den ursprungliga hardlink-implementeringen använder flaggan -f för att tvinga fram skapandet av hårda länkar mellan filsystem. Denna mycket sällan användbara funktion stöds inte längre av den nuvarande hardlink.
hardlink förutsätter att träden som den arbetar med inte ändras under arbetets gång. Om ett träd ändras är resultatet odefinierat och potentiellt farligt. Om t.ex. en vanlig fil ersätts av en enhet kan hardlink börja läsa från enheten. Om en komponent i en sökväg ersätts av en symbolisk länk eller om filbehörigheterna ändras kan säkerheten äventyras. Kör inte hardlink på ett träd som är under förändring eller på ett träd som kontrolleras av en annan användare.
FÖRFATTARE¶
Det finns flera hardlink-implementeringar. Den allra första implementationen är från Jakub Jelinek för Fedora-distributionen, den här implementationen har använts i util-linux mellan versionerna v2.34 till v2.36. Den nuvarande implementationen är baserad på Debian-versionen från Julian Andres Klode.
FELRAPPORTERING¶
För felrapporter, använd felhanteraren <https://github.com/util-linux/util-linux/issues>.
TILLGÄNGLIGHET¶
Kommandot hardlink ingår i paketet util-linux som kan hämtas från Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/>.
| 2026-09-25 | util-linux 2.42.4 |