أرشيف GZIP (.gz)

IETF قياسي

Gzip (GZ) هي أداة الضغط القياسية لنظام جنو (GNU) وصيغة الملفات المرتبطة بها، ويتم نشرها عالمياً عبر أنظمة تشغيل يونكس وخوادم الويب HTTP لضغط الملفات وأصول الويب بسرعة.

تحويل TAR إلى GZ

محول مجاني داخل المتصفح للتحويل من TAR إلى GZ. قم بتحويل الملفات فوراً على جهازك.

فحص البيانات الوصفية

تتعرف أنظمة التشغيل ومحللات الملفات على ملفات GZ من خلال فحص تسلسل البايت الثنائي البادئ:

اختر أو أقطِف الملفات هنا

تحويل خاص بنسبة 100% داخل المتصفح - لا تغادر الملفات جهازك أبداً

أو الصق Ctrl+V
ضمان الخصوصية وعدم الإرسال عبر الشبكة: صفر بايت يتم رفعه إلى خوادم خارجية. تمت كل عمليات المعالجة محلياً في صندوق الحماية (Sandbox) الخاص بمتصفحك.

توقيع رأس الملف على مستوى البايت (Magic Bytes)

تتعرف أنظمة التشغيل ومحللات الملفات على ملفات GZ من خلال فحص تسلسل البايت الثنائي البادئ:

التوقيع الست عشري (الإزاحة 0):

1F 8B 08

تمثيل ASCII: ..\x08

القياسية: IETF RFC 1952

المواصفات الفنية

هيكلية الحاوية10-byte header (magic 0x1F 0x8B, method 8, flags, mtime, OS) followed by DEFLATE stream and 8-byte footer
الضغطDEFLATE algorithm (LZ77 sliding window + Huffman coding)
ترتيب البايتات (Endianness)Little-Endian header and footer integers
مساحات الألوانN/A (Archive Container)
القنوات والبنيةSingle-file compressed byte stream
الحد الأقصى للأبعادUncompressed size recorded modulo 2^32 (supports unbounded stream lengths)
الشفافية100% bit-exact lossless data preservation
البث والتحميل التدرجيSequential single-pass streaming playback over pipes and HTTP networks

مصفوفة المقارنة التقنية: GZ مقابل المنافسين

السمة التقنيةGZ (الحالي)BZ2BROTLIZSTD
سرعة فك الضغطسريعة (~300 ميجابايت/ثانية)بطيئة (~40 ميجابايت/ثانية)سريعة جداً (~400 ميجابايت/ثانية)فائقة السرعة (>1.5 جيجابايت/ثانية)
اعتماد الويب الشامل100% من جميع المتصفحات والخوادمصم دعم لمتصفحات الويبمدعوم عبر HTTPS في جميع المتصفحاتدعم متزايد للمتصفحات والخوادم
تجميع ملفات متعددةيتطلب حاوية TAR (.tar.gz)يتطلب حاوية TAR (.tar.bz2)تدفق خام أو حاوية مخصصةيتطلب حاوية TAR (.tar.zst)
التحقق من المجموع الاختزاريCRC 32-bit (CRC-32)CRC 32-bit لكل كتلةلا يوجد تدفق مدمجxxHash 64-bit

أنماط التلف الشائعة ودليل استرداد النظام السداسي

خطأ في الاستخراج: 'gzip: stdin: نهاية غير متوقعة للملف'.

السبب الجذري: إنهاء مبكر لنقل الملف يؤدي إلى قطع تدفق DEFLATE أو ذيل CRC32 المكون من 8 بايتات.

الاسترداد: استخرج المحتويات الجزئية باستخدام 'gzip -d --keep broken.gz' أو باستخدام أداة File2File Gzip Extractor.

تحليل الأمان وناقلات هجوم المحلل اللغوي

يقوم محللو Gzip بمعالجة الرؤوس التي يتحكم فيها المستخدم وتدفقات بتات DEFLATE التي يجب حمايتها ضد قنابل فك الضغط.

ناقلات الهجوم المعروفة

  • قنبلة فك الضغط (zip bomb) التي توسع ميجابايتات من بيانات Gzip إلى مئات الجيجابايت من مساحة القرص.
  • تجاوز سعة المخزن المؤقت عند قراءة سلسلة اسم الملف الأصلي الاختياري من الرأس.
  • تجاوز سعة الأعداد الصحيحة أثناء مقارنة فحص CRC 32-bit.

أفضل الممارسات الدفاعية:

الأصول التاريخية والمحطات الرئيسية

1996منظمة IETF توثق مواصفات صيغة ملف Gzip كمعيار RFC 1952.
1993تم تبنيها من قبل مشروع جنو (GNU Project) لتحل محل أداة 'compress' الخاصة بيونكس (ملفات .Z).
1992جان لوب غايلي ومارك أدلر ينشئان Gzip كأداة ضغط خالية من براءات الاختراع لحركة البرمجيات الحرة.

المزايا الرئيسية والإيجابيات

  • المعيار العالمي لضغط الويب عبر بروتوكول HTTP ('Content-Encoding: gzip') المدعوم من قبل 100% من عملاء الويب.
  • تحافظ على الطوابع الزمنية لتعديل الملفات الأصلية وأسماء الملفات الأصلية الاختيارية داخل الرأس المكون من 10 بايتات.
  • بصمة خفيفة للمعالج أثناء فك الضغط، تعمل بسلاسة على الأجهزة المحمولة وأجهزة التوجيه (routers) منخفضة الطاقة.

القيود الفنية والسلبيات

  • ضغط ملف واحد فقط: لا يمكن ضغط عدة ملفات أو مجلدات دون تجميعها أولاً في حاوية TAR.
  • نسبة الضغط أقل من الخوارزميات الحديثة مثل Brotli وZstandard على نصوص الويب الحديثة.
  • حقل الحجم غير المضغوط في الذيل هو 32 بت مقياس 2^32، مما يسبب أخطاء عرض التمرير على الملفات التي تزيد عن 4 جيجابايت.

معلومات تقنية طريفة

  • تم اختيار البايتات السحرية 0x1F 0x8B لأن 0x1F كان تاريخياً أول بايت لملفات 'compress' في يونكس، بينما حدد 0x8B صيغة Gzip.
  • أكثر من 80% من جميع مواقع الويب على الإنترنت تستخدم ضغط Gzip لتسليم صفحات الويب للمتصفحات.
  • كتب جان لوب غايلي كود الضغط بينما كتب مارك أدلر كود فك الضغط (inflate)؛ وحصل كلاهما على جائزة ACM لأنظمة البرمجيات.

الأسئلة التقنية المتكررة

لماذا لا يمكنني ضغط مجلد باستخدام Gzip؟

تم تصميم Gzip لضغط تدفق واحد من البايتات. لضغط مجلد، تقوم أنظمة يونكس أولاً بجمع المجلد في ملف .tar واحد، ثم ضغطه باستخدام Gzip لإنشاء ملف .tar.gz.

ما الفرق بين .gz و .zip؟

.zip هو تنسيق أرشيف يجمع عدة ملفات معاً باستخدام فهرس دليل. بينما يضغط .gz ملفاً واحداً فقط وغالباً ما يتم إقرانه بـ tar على أنظمة يونكس.

كيف يمكنني فك ضغط ملف .gz على نظام ويندوز أو ماك؟

استخدم File2File.app لفك ضغط ملفات .gz فوراً مباشرة في متصفح الويب الخاص بك دون أي تثبيت للبرامج.