Что происходит, когда я сбрасываю файл в архив в Nautilus?

У меня была такая файловая структура:

2000/
  001.txt
  002.txt
  003.txt
  ...
2001/
  ...
2002/
  ...
...
2011/

Я думаю, файловая структура не имеет значения, но в любом случае ...
Таким образом, папки представляют пару лет с некоторыми текстовыми файлами внутри.

Теперь я сжимаю все, используя контекстное меню сжатия Nautilus (менеджер архивов) в формате tar.gz. Я выбираю этот формат так, как будто он требует больше места, чем bz2, он намного быстрее, когда мне нужно запросить данные внутри.

После этого я создаю вспомогательный текстовый файл со ссылками на содержимое архива (размером 170 КБ) и хотел добавить его в архив, поэтому я просто перетаскиваю & amp; поместите этот файл в созданный архив в Nautilus.

Происходят две плохие вещи:

  1. Перетаскивание файла в архив извлекает весь архив во временную папку, а затем снова сжимает все файлы! Это просто ужасно для больших архивов, и я надеюсь найти лучший путь в Терминале позже

  2. Первоначальный архив был размером ~ 96 МБ, и теперь просто добавив этот текстовый файл 170 КБ, архив стал 140 МБ! Я проверил внутри его тот же контент + этот крошечный текстовый файл

Почему это?


Я только что создал архив с содержимым из двух подпапок, чем перетаскивание и удаление файл размером 100 байт:

$ gzip -l tmp-original.tar.gz
         compressed        uncompressed  ratio uncompressed_name
           13297512            69908480  81.0% tmp-original.tar
$ gzip -l tmp-updated.tar.gz 
         compressed        uncompressed  ratio uncompressed_name
           19231941            69908480  72.5% tmp-updated.tar
2
задан 30 March 2012 в 07:14

1 ответ

Как замечание по первому пункту, насколько я могу судить, команда терминала tar не может добавлять файлы в сжатый архив (например, в ваш .gz-архив) и, следовательно, должна сначала распаковать архив, затем добавьте добавленный файл и повторите сжатие. Обходным решением может быть монтирование сжатого архива с помощью archivemount (инструкции здесь) , что позволяет монтировать сжатый архив, добавлять файлы и размонтировать его. Я не могу сказать, является ли это быстрее, чем распаковка, добавление и повторное сжатие.

0
ответ дан 30 March 2012 в 07:14

Другие вопросы по тегам:

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