Утилита, которая генерирует контрольную сумму CRC (Cyclic Redundancy Check) и количество байт для заданного файла. Она используется для проверки целостности файлов путем сравнения значений контрольных сумм до и после передачи или хранения. На выходе cksum Команда состоит из контрольной суммы CRC, количества байт в файле и самого имени файла. Эта команда особенно полезна в сценариях и автоматизированных процессах, где необходимо обеспечить целостность файла, поскольку она предоставляет простое, но эффективное средство обнаружения случайных изменений или повреждений в файлах. Сравнив сгенерированную контрольную сумму файла с ранее известным значением, пользователь может убедиться, что файл остался неизменным.
Бывает, что мы скачиваем файл (скажем, ISO-образ), размещенный где-то в Интернете, и обнаруживаем, что он работает не так, как ожидалось (или вообще не работает). Причин этому может быть несколько, одна из них – повреждение файла (файл был поврежден в процессе загрузки или сам исходный файл, размещенный на хостинге, был поврежден). Но как подтвердить, что такое повреждение имело место?
У этой проблемы есть решение. В большинстве случаев при создании файла вычисляется контрольная сумма, которая уникальна для этого файла. Даже если файл немного изменится, контрольная сумма изменится.
Большинство поставщиков предлагают контрольную сумму (или код, похожий на контрольную сумму), соответствующую загружаемому файлу (файлам). Если файл ведет себя не так, как ожидалось, пользователи могут пересчитать ее и сравнить с исходной контрольной суммой, предоставленной поставщиком, чтобы определить, цел ли файл или поврежден.
В Linux существует инструмент командной строки под названием cksum, который можно использовать для создания/проверки контрольной суммы. В этом руководстве мы быстро обсудим, как работает этот инструмент.
Сегодня для проверки файлов часто используются контрольные суммы SHA1 или MD5. Смотрите учебники по командам sha1sum и md5sum.
Команда cksum в Linux
Эта команда вычисляет контрольную сумму циклической проверки избыточности (CRC) входного файла и выводит это число/код на терминал командной строки. Помимо контрольной суммы, инструмент также показывает количество байт, которые содержит файл.
Ниже приведен общий синтаксис команды cksum:
cksum [OPTION]... [FILE]...
Вот что говорит об этом официальная документация инструмента:
`cksum' is typically used to ensure that files transferred by unreliable means (e.g., netnews) have not been corrupted, by comparing the `cksum' output for the received files with the `cksum' output for the original files (typically given in the distribution).
Как использовать cksum?
Использование этого инструмента довольно простое: передайте имя файла на вход, и команда выведет соответствующую контрольную сумму, а также количество байт, которые есть в файле.
Например, в нашем случае мы выполнили следующую команду:
cksum file1
Вот команда выше в действии:
Итак, первое число в выводе – это контрольная сумма, второе – количество байт, а третье – имя входного файла.
Далее мы немного изменили текст файла и снова выполнили ту же команду:
Как вы можете видеть, контрольная сумма изменилась, что указывает на то, что файл изменился.
Вот, собственно, и все об этом инструменте. Он предлагает пару опций, но они довольно общие (–help и –version) – они не требуют пояснений и могут быть найдены почти в каждом списке опций команды в Linux.