2

Я хочу сделать простое резервное копирование и скопировать все файлы из одной папки в другую. ОС - это Debian.

  • Когда я делаю du -sh в исходной папке, я получаю 436G.
  • Делая то же самое в пункте назначения, я получаю только 384G.

Если я подключаю обе папки через Samba к машине с Windows, обе папки имеют одинаковый размер.

Может кто-нибудь объяснить мне, почему du показывает разные размеры?

1 ответ1

2

du есть опция --apparent-size которая может вам помочь. Я предполагаю, что два диска имеют разные размеры блоков. Если файл только частично использует блок, остальные не могут использовать остальные, поэтому по умолчанию du считает использование диска в блоках.

Чтобы получить размер блока, который использует файловая система ext в /dev /sda1, вы можете сделать:

sudo tune2fs -l /dev/sda1 | grep 'Block size'

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

Создать контрольные суммы из оригиналов:

cfv -p /path/to/origin -C -rr -f /tmp/checksum.sha1

Проверьте резервную копию против контрольных сумм:

cfv -p /path/to/backup -T -u -f /tmp/checksum.sha1

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .