آرشیو Tar Gzip (.tar.gz)

POSIX.1 استاندارد

فایل Tar Gzip (.tar.gz که با نام .tgz نیز شناخته می شود) استاندارد توزیع نرم افزار و فرمت بسته بندی آرشیو در دنیای لینوکس و متن باز است که بسته بندی TAR بومی یونیکس را با فشرده سازی جهانی Gzip ترکیب می کند.

بررسی و فراداده

سیستم‌عامل‌ها و تحلیلگرهای فایل، فایل‌های TAR.GZ را با بررسی توالی بایت‌های دودویی ابتدایی شناسایی می‌کنند:

انتخاب یا رها کردن فایل‌ها در اینجا

تبدیل ۱۰۰٪ خصوصی در مرورگر - فایل‌ها هرگز دستگاه شما را ترک نمی‌کنند

یا جای‌گذاری کنید Ctrl+V
تضمین حریم خصوصی بدون انتقال شبکه: صفر بایت به سرورهای خارجی آپلود می‌شود. تمام پردازش‌ها به صورت محلی در سندباکس مرورگر شما انجام شد.

امضای هدر در سطح بایت (Magic Bytes)

سیستم‌عامل‌ها و تحلیلگرهای فایل، فایل‌های TAR.GZ را با بررسی توالی بایت‌های دودویی ابتدایی شناسایی می‌کنند:

امضای HEX (آفست 0):

1F 8B 08

نمایش ASCII: ..\x08

استانداردسازی: POSIX.1 ustar (RFC 1952 gzip wrapped)

مشخصات فنی

معماری کانتینرPOSIX ustar / GNU tar archive stream wrapped inside an RFC 1952 Gzip compression container
فشرده‌سازیTwo-stage packaging: TAR serialization followed by DEFLATE compression
ترتیب بایت‌ها (Endianness)Little-Endian gzip envelope wrapping octal POSIX tar blocks
فضاهای رنگیN/A (Archive Container)
کانال‌ها و ساختارMulti-file Unix directory trees, symlinks, file ownership, and permission bits
حداکثر ابعادUnbounded streaming archive size
شفافیت مشخصات100% bit-exact lossless preservation of filesystem structures and data
استریمینگ و پیش‌روندهEnd-to-end pipeable streaming: decompress and extract simultaneously in a single pass

ماتریس مقایسه فنی: TAR.GZ در برابر رقبا

ویژگی فنیTAR.GZ (فعلی)ZIP7ZTAR.BZ2
دسترسی های یونیکسحفظ ۱۰۰٪ POSIX بومیمحدود / اغلب از دست رفتهویژگی های پایه حفظ شدهحفظ ۱۰۰٪ POSIX بومی
نسبت فشرده سازیمتوسط (Gzip DEFLATE)متوسط (ZIP DEFLATE)بسیار بالا (LZMA2)بالا (Bzip2 BWT)
سرعت رفع فشرده سازیسریع (~۳۰۰ مگابایت بر ثانیه)سریع (~۳۰۰ مگابایت بر ثانیه)متوسط (~۱۰۰ مگابایت بر ثانیه)کند (~۴۰ مگابایت بر ثانیه)
استاندارد اکوسیستم لینوکسپیش فرض جهانی متن بازپیش فرض دسکتاپ مصرف کنندهمحبوب علاقه مندان ویندوزانتشارهای سورس قدیمی لینوکس

حالت‌های رایج خرابی و راهنمای بازیابی هگز

خط فرمان گزارش می دهد: 'gzip: stdin: invalid compressed data--format violated'.

علت ریشه‌ای: بایت های خراب در پاکت Gzip یا دانلود ناقص.

بازیابی: بازیابی جزئی را با استفاده از استخراج کننده آرشیو File2File یا دستور 'tar -izxf broken.tar.gz' امتحان کنید.

تحلیل امنیتی و بردارهای حمله تجزیه‌کننده (Parser)

آرشیوهای TAR.GZ در صورت استخراج بی دقت، خطرات بمب های فشرده سازی و حملات پیمایش دایرکتوری را با هم ترکیب می کنند.

بردارهای حمله شناخته‌شده

  • تقویت سبک بمب فشرده (Zip bomb) که در آن یک فایل کوچک .tar.gz به ترابایت ها صفر انبساط می یابد.
  • پیمایش دایرکتوری (به عنوان مثال '../../root/.ssh/authorized_keys') که فایل های دارای سطح دسترسی بالا را بازنویسی می کند.
  • ایجاد گره دستگاه مخرب در طول استخراج به عنوان کاربر ریشه (root).

بهترین روش‌های پدافندی:

تاریخچه و نقاط عطف

2015معماری توزیع کانتینر Docker بر روی ایمیج های rootfs لایه بندی شده .tar.gz استانداردسازی می شود.
1996IETF مشخصات زیربنایی Gzip را به عنوان RFC 1952 استانداردسازی می کند.
1993پروژه گنو پرچم یکپارچه 'tar -z' را معرفی می کند که .tar.gz را به عنوان فرمت پیش فرض بسته لینوکس تثبیت می کند.

مزایا و نقاط قوت کلیدی

  • استاندارد بی‌رقیب برای انتشار سورس کد متن‌باز، بسته‌های لینوکس و لایه‌های کانتینر داکر.
  • ترکیب کامل حفظ دسترسی های POSIX و لینک های نمادین با فشرده سازی قابل اعتماد و سریع Gzip.
  • قابلیت پخش جریانی کامل: قابل دانلود، رفع فشرده سازی و باز کردن در طول پایپ های شبکه بدون نوشتن فایل های موقت روی دیسک.

محدودیت‌ها و معایب فنی

  • استخراج یک فایل منفرد نیازمند رفع فشرده سازی کل آرشیو تا محل آن فایل است.
  • نسبت فشرده سازی کمتر نسبت به جایگزین های مدرن مانند .tar.xz یا .tar.zst.
  • در مقایسه با فایل های جهانی .zip، در سیستم های قدیمی ویندوز کمتر شهودی است.

نکات فنی جالب

  • در سیستم های MS-DOS با محدودیت نام فایل 8.3، '.tar.gz' به '.tgz' کوتاه شد.
  • هر بار که دستور 'npm install' را اجرا می‌کنید، npm بسته‌های .tgz (tar.gz) را در پس‌زمینه دانلود و استخراج می‌کند.
  • کاربران لینوکس دستور استخراج فایل tar.gz را با کلید mnemonic 'eXtract Ze File' به یاد می آورند: tar -xzf file.tar.gz.

سوالات فنی متداول

تفاوت بین .tar.gz و .zip چیست؟

فرمت .zip هر فایل را به صورت جداگانه فشرده می‌کند و دارای یک دایرکتوری مرکزی در انتها است. فرمت .tar.gz ابتدا تمام فایل‌ها را در یک جریان واحد ترکیب می‌کند و دسترسی کامل لینوکس و پیوندهای نمادین (symlinks) را حفظ می‌کند.

آیا .tgz همان .tar.gz است؟

بله. پسوند .tgz در واقع یک پسوند فایل مخفف ۳ حرفی برای .tar.gz است که در اصل برای سیستم‌عامل‌های دارای محدودیت نام فایل کوتاه 8.3 مانند DOS ایجاد شده است.

چگونه می‌توانم یک فایل .tar.gz را در ویندوز استخراج کنم؟

شما می‌توانید بدون نیاز به نصب WinRAR یا 7-Zip، فایل‌های .tar.gz را مستقیماً در مرورگر وب خود با استفاده از File2File.app استخراج کنید.