Если файлы копируются с первого тома на второй, останутся ли файлы прежними?

Delegates (built-in):
Строка

в выводе identify --versionговорит о том, что во время компиляции что-то пошло не так; Я ожидаю, что результат будет больше соответствовать пакетной версии ImageMagick в Debian :

.
Delegates (built-in): bzlib djvu fftw fontconfig freetype heic jbig jng jp2 jpeg lcms lqr ltdl lzma openexr pangocairo png tiff webp wmf x xml zlib

Если вы не возражаете против более старой версии ImageMagick, 6.9.10, а не 7.0.8, вам, вероятно, будет проще использовать вместо нее пакеты Debian:

sudo apt install imagemagick
0
21.05.2021, 16:32
2 ответа

Когда создается копия файла, копия точно совпадает с оригиналом (при условии, что во время копирования не было ошибок ). Это верно независимо от того, копируется ли файл в другое место на том же устройстве или на другое устройство.

Копия может иметь другое имя файла, другую отметку времени или другие разрешения, но содержимое остается идентичным.

Это можно проверить, запустив какой-либо алгоритм контрольной суммы или хэширования, (например.md5sum)на оригинале и копии.

Например:

$ cp original /tmp/thecopy
$ md5sum original /tmp/thecopy 
93d9d61139ff5f1287764f1c1994cbe3  original
93d9d61139ff5f1287764f1c1994cbe3  /tmp/thecopy

Оба файла имеют одинаковую сумму md5sum. originalхранился на NVME. /tmp/— это виртуальный диск.

Технически два разных файла могут иметь один и тот же md5sum. Вероятность того, что это произойдет, крайне мала. md5sumв основном «достаточно хорош» для многих простых целей, но большинство людей используют и рекомендуют более сильные методы хеширования в наши дни, чтобы еще больше снизить вероятность. Вот что sha512sumговорит о той же -принадлежности файлов.

$ sha512sum original /tmp/thecopy 
5ba61d6f2a883c3afebc949b0f0d0a1c020498a1052771de98e6e1bbb42d438a0a53f49f381a2e1311c1bdf82a0cea9de646fc03c529fcb6fca0ab6476badf35  original
5ba61d6f2a883c3afebc949b0f0d0a1c020498a1052771de98e6e1bbb42d438a0a53f49f381a2e1311c1bdf82a0cea9de646fc03c529fcb6fca0ab6476badf35  /tmp/thecopy

снова идентично.

2
28.07.2021, 11:30

What is the recommendation for copying, and will my files stay the same?

cp -aскопирует данные, но не скопирует время создания, и вы можете потерять последнее время доступа. Если ваша исходная система использует контекст SeLinux, cp другой системы, которая не знает о SeLinux, не будет его копировать.

Что касается crtime, см. Копирование или восстановление crtime для файлов/каталогов в файловой системе ext4fs

Наконец, выполнение md5sumсразу после копирования, особенно для небольших файлов, не нецелесообразно, так как файлы в то время физически не могли быть сброшены в хранилище, и вместо этого ядро ​​будет работать с грязными буферами, которые хранится в оперативной памяти.

Чтобы быть уверенным, что вы скопировали все точно, вам нужно:

  • Скопируйте все файлы
  • Создайте свои контрольные суммы (, если ваш ЦП достаточно современный sha256sumнадежнее и быстрее , чем md5sum)
  • Сбрасывать кэшиecho 3 | sudo tee /proc/sys/vm/drop_caches
  • Создайте контрольные суммы для вновь скопированных файлов и сравните их со старыми.

В качестве альтернативы для файловых систем ext2/ext3/ext4 вы можете использовать e2image, который копирует все, (все метки времени, включая время crtime и время последнего доступа ), кроме свободного места. Я обычно использую его для копирования разделов.


Для NTFS я использовал ntfscloneнесколько раз -это быстро и надежно.


Я полагаю, что для других файловых систем существуют аналогичные утилиты, но на своих устройствах я использую только ext4 и NTFS.

0
28.07.2021, 11:30

Теги

Похожие вопросы