Сжимать папку, но не сжимать файлы определенных типов, а включать их в файл gz

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

  1. Купите флэш-накопитель на 8 ГБ или больше для этой цели.
  2. Загрузите macOS Sierra из App Store .
  3. Подключите флэш-накопитель и переименуйте его в «SierraInstallation», чтобы выполнить команду, указанную ниже на пятом шаге.
  4. Откройте Терминал или iTerm2 .
  5. Выполнить, все в одной строке: sudo "/ Applications / Install macOS Sierra.app/Contents/Resources/createinstallmedia --volume / Volumes / SierraInstallation --applicationpath / Applications / Install macOS Sierra.app --nointeraction "
  6. Когда команда будет выполнена, извлеките флэш-накопитель и сохраните его для повторной установки позже.
  7. Приступите к установке Linux, разделы оставлять не нужно.

Чтобы установить macOS позже ...

  1. Подключите флешку к Mac.
  2. Перезагрузите Mac и удерживайте клавишу Option .
  3. Выберите «Установить macOS Sierra» в параметрах загрузки.

Вы также можете сохранить ZIP-файл / Applications / Install macOS Sierra.app/ на другом запоминающем устройстве, резервном диске или другом устройстве на случай потери флэш-накопителя или другого устройства. проблема.

2
24.05.2016, 10:34
1 ответ

Нет, вы не можете. По крайней мере, не напрямую.

tar не делает никакого сжатия. Он просто считывает часть (виртуальной) файловой системы и генерирует из нее один связный поток. Этот поток затем часто передается инструменту/библиотеке сжатия, например gzip/libz. Сжимающая часть не видит и даже не знает об отдельных файлах. Она просто сжимает поток, созданный tar. Поэтому вы не можете добавить выборочное сжатие к вашему текущему подходу.

Что вы можете сделать, так это инкрементально собирать tar-архив, сжимая каждый файл по отдельности и затем добавляя его в tar-архив. При этом вы можете выбрать добавление в архив (например, iso-образов без сжатия). Однако обратите внимание, что сам tar-архив не будет сжат. Следовательно, после его распаковки вам также придется распаковать каждый файл по отдельности, где это необходимо.

Сколько времени вы теряете, сжимая файлы isos и zip? Поскольку tar | pigz > - это потоковая обработка, я бы предположил, что вы теряете не так много времени. Есть блоки, записанные на диск, в то время как следующие блоки сжимаются, в то время как поток строится. Это происходит параллельно.

Возможно, вы можете оптимизировать свою стратегию:

Вы можете поместить все файлы iso и zip в специальные каталоги и затем собрать архив в три шага: tar&compress остальное, add iso dir, add zip dir. Полученный архив все равно потребует длительной процедуры извлечения: распаковать внешний архив, затем распаковать и распаковать внутренний архив. Тем не менее, это более выполнимо, чем распаковка каждого отдельного файла.

Или вы настраиваете команды: Должен ли это быть tar-архив файловой системы или можно использовать dd для резервного копирования всего раздела? Резервное копирование всего раздела имеет преимущество непрерывного чтения с диска (дисков), что может быть быстрее, чем работа с файловой системой. Я уверен, что вы можете настроить pigz для работы с большими кусками, что должно дать вам увеличение скорости, если iso и zip файлы являются вашей проблемой. Также, вы можете добавить некоторую буферизацию (например, mbuffer), перед записью результата на диск для дальнейшей оптимизации доступа к носителям.

4
27.01.2020, 21:59

Теги

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