Zatímco jsme již diskutovali o nástroji příkazového řádku cksum, existuje další nástroj, který můžete použít ve scénářích, kdy například potřebujete ověřit integritu souborů během přenosu. Nástroj, o kterém zde mluvíme, je md5sum . V tomto tutoriálu probereme základy tohoto příkazu pomocí několika snadno srozumitelných příkladů.
Než to uděláme, stojí za zmínku, že všechny příklady v tomto článku byly testovány na Ubuntu 16.04 LTS.
Příkaz Linux md5sum
Příkaz md5sum v podstatě počítá a kontroluje MD5 (128bitový) souhrn zpráv pro soubory. Zde je syntaxe příkazu:
md5sum [OPTION]... [FILE]...
Následující příklady ve stylu otázek a odpovědí by vám měly poskytnout lepší představu o tom, jak md5sum funguje.
Q1. Jak funguje příkaz md5sum?
Základní použití je docela jednoduché – pokud chcete vypočítat kontrolní součet MD5 pro soubor, vše, co musíte udělat, je předat jméno souboru jako vstup do příkazu. Například:
md5sum testfile.txt
Výstup můžete také přesměrovat do textového souboru, abyste mohli přehled později zkontrolovat proti jakékoli změně/poškození v souboru.
md5sum test.txt> digest.md5
Použijte -c možnost příkazového řádku pro kontrolu výtahu.
md5sum -c digest.md5
A pokud dojde k jakékoli změně nebo poškození, zde je druh výstupu, který md5sum vytvoří:
Q2. Jak změnit způsob, jakým jsou soubory čteny, vytváří se kontrolní součet?
Ve výchozím nastavení čte příkaz md5sum vstup v textovém režimu. Pokud však chcete, můžete nástroj nechat číst vstup také v binárním režimu. To můžete provést pomocí -b možnost příkazového řádku.
md5sum -b [filename]
Navíc můžete také donutit md5sum vytvořit kontrolní součet ve stylu BSD pomocí --tag možnost příkazového řádku.
O3. Jak přimět md5sum ignorovat chybějící soubory?
Pokud při ověřování kontrolních součtů chcete, aby md5sum ani selhal, ani nehlásil stav chybějících souborů, můžete použít --ignore-missing volba. Následující snímek obrazovky ukazuje tuto možnost v akci:
Můžete tedy vidět, že chyba a oznámení nebyly v druhém případě vytvořeny.
4. Jak zajistit, aby se md5sum vyhnul tisku v pořádku pro každý úspěšně ověřený soubor?
Následuje výchozí chování md5sum:
Pokud však nechcete, aby se u každého úspěšně ověřeného souboru zobrazovalo OK, můžete použít --quiet volba. V našem případě by se tedy výše uvedený příkaz stal:
md5sum -c --quiet digest.md5
O5. Jak md5sum počítá kontrolní součty?
Součty vypočítává nástroj, jak je popsáno v RFC 1321. Manuální stránka říká:
The sums are computed as described in RFC 1321. When checking, the
input should be a former output of this program. The default mode is
to print a line with checksum, a space, a character indicating input
mode ('*' for binary, ' ' for text or where binary is insignificant),
and name for each FILE.
The MD5 algorithm should not be used any more for security related pur?
poses. Instead, better use an SHA-2 algorithm, implemented in the pro?
grams sha224sum(1), sha256sum(1), sha384sum(1), sha512sum(1)
Pokud jste nováček v příkazovém řádku Linuxu, je menší šance, že budete používat md5sum ve svých začátcích. Primárně je zaměřen na systémové administrátory/pro uživatele. Není však na škodu vytvořit si základní znalosti o tom, jak nástroj funguje, na což je přesně zaměřen tento tutoriál. V případě, že se chcete dozvědět více, můžete zamířit na manuálovou stránku md5sum.