Почему мой tar-файл больше его содержимого?

У меня есть tar-файл, который я воссоздал из двух файлов – xaa, xab (результаты использования команды split). Файл tar – это размер, который я ожидаю, но когда я извлечу его, я получаю небольшую часть размера tar-файла. См. Вывод терминала ниже для последовательности моих команд. К сожалению, у меня нет файла orign orignal tar, поэтому это единственный шанс восстановить эти данные. Когда я открываю архив в «File Roller», я вижу те же папки, что и в командной строке после извлечения, и это только подмножество файлов, которые я ожидал увидеть. Может ли кто-нибудь предположить, почему это может быть?

~> cat xa* > archive ~> file archive archive: POSIX tar archive (GNU) ~> ls -la archive -rw-r--r-- 1 hugo users 24471439360 Jun 1 18:50 archive ~> tar xf archive ~> cd repos ~/repos> du --max-depth 0 -h 83M . ~/repos> cd ../ ~> tar cf newarchive repos ~> ls -la newarchive -rw-r--r-- 1 hugo users 53288960 Jun 1 19:57 newarchive 

Файл tar извлекается до тех пор, пока не найдет маркер, указывающий конец файла tar: физически архив состоит из серии записей файлов, завершенных записью конца архива, которая состоит из двух 512 блоков нулевых байтов из tar описание формата файла здесь .

Таким образом, ваш файл архива, вероятно, имеет материал после маркера, который не извлекается.

Похоже, диск, на который вы извлекаете, не имеет достаточно свободного места для всех файлов и каталогов в архиве tar. Проверьте с помощью df -k . в каталоге, в котором вы извлекли файлы.

Иногда, если вы загружаете файлы с «дырками» в них, вы получите файл архива tar, намного больший, чем исходный файл (ы). Кроме того, файл tar tar содержит метаданные, имя файла, разрешения, право собственности и т. Д., А также данные файла (ов). Таким образом, tar-архив неизменно, по крайней мере, немного больше, чем исходные файлы.