как я могу смонтировать и размонтировать файл как петлевое устройство и впоследствии получить точно такую же такую же контрольную сумму MD5? (Линукс)
Вот рабочий процесс:
- Я беру новую копию файла фиксированного шаблона, который содержит подготовленную корневую файловую систему ext2.
- Файл монтируется с помощью
mount -t ext2 <file> <mountpoint> -o loop,sync,noatime,nodiratime
- (Здесь некоторые файлы будут добавлены в будущем, но пока игнорируйте это и сосредоточьтесь на mount / umount )
umount
- Возьмите сумму MD5 файла.
- Я ожидаю одну и ту же воспроизводимую контрольную сумму каждый раз, когда выполняю одни и те же шаги.
Однако, когда я повторяю процесс (помните: беру свежую копию файла шаблона), я всегда получаю другую контрольную сумму.
Я предполагаю, с одной стороны, что некоторые временные метки все еще устанавливаются внутри (я пытался избежать этого с помощью опции noatime
), или, с другой стороны, Linux управляет файловой системой по-своему, на что я не имею никакого влияния. Это означает: файлы и временные метки внутри могут быть одинаковыми, но способ организации файловой системы внутри файла может быть другим и, следовательно, случайным.
Для сравнения, когда я создаю zip-файл дерева файлов и обращаюсь ко всем файлам с определенной отметкой времени, контрольная сумма zip-файла воспроизводима.
Есть ли способ сохранить монтирование или доступ к файлам, которые мне нужны?