Архів Tar Gzip (.tar.gz)

POSIX.1 Стандарт

Tar Gzip (.tar.gz, також відомий як .tgz) - це стандартний формат розповсюдження програмного забезпечення та упакування архівів у світі Linux і відкритих джерел, що поєднує нативне для Unix упакування TAR із універсальним стисненням Gzip.

Аналіз та метадані

Операційні системи та аналізатори файлів ідентифікують файли TAR.GZ, перевіряючи початкову послідовність бінарних байтів:

Виберіть або перетягніть файли сюди

100% приватна конвертація у браузері - файли ніколи не покидають ваш пристрій

або вставте Ctrl+V
Гарантія конфіденційності з нульовою передачею мережею: 0 байт завантажено на зовнішні сервери. Уся обробка виконується локально в пісочниці вашого браузера.

Сигнатура заголовка на байтовому рівні (Magic Bytes)

Операційні системи та аналізатори файлів ідентифікують файли TAR.GZ, перевіряючи початкову послідовність бінарних байтів:

ШІСТНАДЦЯТКОВА СИГНАТУРА (ЗСУВ 0):

1F 8B 08

ASCII-УЯВЛЕННЯ: ..\x08

Стандартизація: POSIX.1 ustar (обгортка gzip згідно з RFC 1952)

Технічні характеристики

Архітектура контейнераПотік архіву POSIX ustar / GNU tar, запакований у контейнер стиснення Gzip згідно з RFC 1952
СтисненняДвоетапне упакування: серіалізація TAR з подальшим стисненням DEFLATE
Порядок байтів (Endianness)Оболонка gzip у форматі Little-Endian, що охоплює вісімкові блоки POSIX tar
Колірні просториНе застосовується (Архівний контейнер)
Канали та структураБагатофайлові дерева каталогів Unix, символічні посилання, права власності на файли та біти дозволів
Максимальні розміриНеобмежений розмір потокового архіву
Прозорість100% побітово точне збереження файлових систем та даних без втрат
Потокове та прогресивне завантаженняСквозний потоковий конвеєр: декомпресія та витягування одночасно за один прохід

Технічна матриця порівняння: TAR.GZ проти конкурентів

Технічний атрибутTAR.GZ (Поточний)ZIP7ZTAR.BZ2
Дозволи Unix100% нативне збереження POSIXОбмежені / часто втрачаютьсяЗберігаються базові дозволи100% нативне збереження POSIX
Коефіцієнт стисненняПомірний (Gzip DEFLATE)Помірний (ZIP DEFLATE)Дуже високий (LZMA2)Високий (Bzip2 BWT)
Швидкість декомпресіїШвидка (~300 МБ/с)Швидка (~300 МБ/с)Помірна (~100 МБ/с)Повільна (~40 МБ/с)
Стандарт екосистеми LinuxУніверсальний стандарт для відкритих джерелСтандарт для споживчих десктопівУлюбленець ентузіастів WindowsЗастарілі вихідні коди Linux

Типові режими пошкодження та посібник з відновлення в шістнадцятковому форматі

У командному рядку з'являється повідомлення 'gzip: stdin: invalid compressed data--format violated'.

Першопричина: Пошкоджені байти в оболонці Gzip або незакончене завантаження.

Відновлення: Спробуйте часткове відновлення за допомогою File2File Archive Extractor або команди 'tar -izxf broken.tar.gz'.

Аналіз безпеки та векторів атак на парсери

Архіви TAR.GZ поєднують ризики як бомб стиснення, так і атак обходу каталогу, якщо їх розпаковувати без належної уваги.

Відомі вектори атак

  • Збільшення розміру у стилі zip-бомби, коли крихітний файл .tar.gz розгортається в терабайти нулів.
  • Обхід каталогу (наприклад, '../../root/.ssh/authorized_keys'), що перезаписує захищені файли.
  • Створення зловмисних вузлів пристроїв під час витягування з правами суперкористувача (root).

Захисні найкращі практики: Витягуйте архіви від імені непривілейованих користувачів та перевіряйте всі цільові шляхи файлів на предмет обходу каталогів.

Історичне походження та віхи

2015Архітектура розповсюдження контейнерів Docker стандартизує використання багатошарових образів rootfs у форматі .tar.gz.
1996IETF стандартизує базову специфікацію Gzip як RFC 1952.
1993Проєкт GNU представляє інтегрований прапорець 'tar -z', закріплюючи .tar.gz як стандартний формат пакетів Linux.

Головні переваги та плюси

  • Беззаперечний стандарт для релізів вихідного коду з відкритим кодом, пакетів Linux і шарів контейнерів Docker.
  • Поєднує повне збереження дозволів POSIX та символічних посилань із надійним і швидким стисненням Gzip.
  • Повністю потоковий: можна завантажувати, розпаковувати та витягувати через мережеві канали без запису тимчасових файлів на диск.

Технічні обмеження та мінуси

  • Витягування одного файлу вимагає розпакування всього архіву до місця розташування цього файлу.
  • Нижчий коефіцієнт стиснення порівняно з сучасними альтернативами, такими як .tar.xz або .tar.zst.
  • Менш інтуїтивний у застарілих системах Windows порівняно з універсальними файлами .zip.

Цікаві технічні факти

  • У системах MS-DOS з обмеженням довжини імені файлу 8.3 '.tar.gz' скорочували до '.tgz'.
  • Щоразу, коли ви запускаєте 'npm install', npm завантажує та витягує пакети .tgz (tar.gz) 'під капотом'.
  • Користувачі Linux добре пам'ятають команду для витягування файлу tar.gz за допомогою мнемоніки 'eXtract Ze File': tar -xzf file.tar.gz.

Поширені технічні запитання

Яка різниця між .tar.gz і .zip?

.zip стискає кожен файл окремо і має центральний каталог у кінці. .tar.gz спочатку об'єднує всі файли в єдиний потік, зберігаючи повні права доступу Linux та символічні посилання.

Чи є .tgz тим самим, що й .tar.gz?

Так. .tgz - це просто скорочене 3-літерне розширення файлу для .tar.gz, яке спочатку було створено для операційних систем з обмеженням коротких імен файлів 8.3, таких як DOS.

Як витягти файл .tar.gz у Windows?

Ви можете витягувати файли .tar.gz безпосередньо у своєму веб-браузері за допомогою File2File.app без необхідності встановлювати WinRAR чи 7-Zip.