ארכיון Tar Gzip (.tar.gz)

POSIX.1 תקן

Tar Gzip (.tar.gz, המכונה גם .tgz) משלב ארכיון TAR עם דחיסת Gzip ומשמש לעיתים קרובות להפצת תוכנה ולאריזת קבצים.

בדיקה ומטא-נתונים

מערכות הפעלה ומנתחי קבצים מזהים קבצי TAR.GZ על ידי בדיקת רצף הבייטים הבינארי הראשוני:

בחר או גרור קבצים לכאן

פרטי - הקבצים לעולם אינם עוזבים את המכשיר שלך

או הדבק Ctrl+V
הבטחת פרטיות ללא העברת נתונים ברשת: 0 בייט הועלו לשרתים חיצוניים. כל העיבוד התבצע באופן מקומי בארגז החול של הדפדפן שלך.

חתימת כותרת ברמת הבייט (Magic Bytes)

מערכות הפעלה ומנתחי קבצים מזהים קבצי TAR.GZ על ידי בדיקת רצף הבייטים הבינארי הראשוני:

חתימת HEX (היסט 0):

1F 8B 08

ייצוג ASCII: ..\x08

תקינה: POSIX.1 ustar (RFC 1952 gzip wrapped)

מפרט טכני

מבנה המכולהזרם ארכיון של POSIX ustar / GNU tar עטוף במכולת דחיסה של Gzip לפי RFC 1952
דחיסהאריזה בשני שלבים: סריאליזציה של TAR ולאחריה דחיסת DEFLATE
סדר בתים (Endianness)מעטפת Gzip בסדר בתים Little-Endian העוטפת בלוקי TAR של POSIX עם ערכים אוקטליים
מרחבי צבעלא רלוונטי (מכולת ארכיון)
ערוצים ומבנהעצי ספריות Unix מרובי קבצים, קישורים סמליים, בעלות על קבצים וסיביות הרשאה
ממדים מרבייםגודל ארכיון בלתי מוגבל בהזרמה
שקיפותנתוני הקבצים נשמרים ללא אובדן; שימור המטא-נתונים תלוי בפורמט הארכיון ובהגדרות החילוץ
הזרמה ופרוגרסיביותהזרמה מקצה לקצה דרך צינור: פריסה וחילוץ בו-זמנית במעבר יחיד

מטריצת השוואה טכנית: TAR.GZ מול מתחרים

תכונה טכניתTAR.GZ (נוכחי)ZIP7ZTAR.BZ2
הרשאות Unixשמירת POSIX מולדת ב-100%מוגבל / לעיתים קרובות אובדמאפיינים בסיסיים נשמריםשמירת POSIX מולדת ב-100%
יחס דחיסהבינוני (Gzip DEFLATE)בינוני (ZIP DEFLATE)גבוה מאוד (LZMA2)גבוה (Bzip2 BWT)
מהירות פריסהמהירה (~300 MB/s)מהירה (~300 MB/s)בינונית (~100 MB/s)איטית (~40 MB/s)
תקן אקוסיסטם Linuxברירת מחדל אוניברסלית לקוד פתוחברירת מחדל לשולחן עבודה צרכניחביב חובבי Windowsשחרורי קוד מקור ישנים של Linux

מצבי השחתה נפוצים ומדריך שחזור הקסדצימלי (Hex)

שורת הפקודה מדווחת: gzip: stdin: invalid compressed data--format violated.

גורם שורש: בייטים פגומים במעטפת Gzip או הורדה שנקטעה.

שחזור: נסה לשחזר חלק מהארכיון באמצעות File2File.app Archive Extractor או באמצעות tar -izxf broken.tar.gz.

ניתוח אבטחה ווקטורי תקיפה נגד מנתחי פורמטים (parsers)

ארכיוני TAR.GZ משלבים סיכונים של פצצות דחיסה ומתקפות מעבר תיקיות אם מחלצים אותם בחוסר זהירות.

ווקטורי תקיפה ידועים

  • הגברה בסגנון Zip bomb, שבה קובץ .tar.gz קטן מתרחב לטרה-בייטים של אפסים.
  • מעבר תיקיות (למשל ../../root/.ssh/authorized_keys) עלול לדרוס קבצים בעלי הרשאות מיוחדות.
  • יצירת צומת התקן זדוני במהלך חילוץ בהרשאות root.

שיטות מומלצות להגנה: חלץ ארכיונים כמשתמש ללא הרשאות מיוחדות ונקה את כל נתיבי היעד מפני מתקפות מעבר תיקיות.

היסטוריה ואבני דרך

2015ארכיטקטורת הפצת הקונטיינרים של Docker מתקננת סביב תמונות rootfs שכבתיות מסוג .tar.gz.
1996IETF מתקנן את מפרט Gzip הבסיסי כ-RFC 1952.
1993פרויקט GNU מציג את דגל 'tar -z' המשולב, ומבסס את .tar.gz כפורמט חבילת ה-Linux ברירת המחדל.

יתרונות מרכזיים

  • פרויקטי תוכנה מפרסמים לעיתים קרובות ארכיוני קוד מקור כקובצי ‎.tar.gz, משום ש-TAR מקבץ את עץ התיקיות ו-Gzip דוחס את הזרם.
  • קובץ ‎.tar.gz יכול לשמור הרשאות וקישורים סמליים בשכבת TAR שלו. השחזור תלוי בכלי החילוץ ובמערכת ההפעלה של היעד, לכן בדוק את ההרשאות לאחר חילוץ בפלטפורמה אחרת.
  • ניתן להזרמה מלאה: ניתן להוריד, לפרוס ולחלץ דרך צינורות רשת מבלי לכתוב קבצים זמניים בדיסק.

מגבלות טכניות וחסרונות

  • חילוץ קובץ יחיד דורש פריסה של כל הארכיון עד למיקום הקובץ המבוקש.
  • יחס דחיסה נמוך יותר בהשוואה לחלופות מודרניות כמו .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 עוטף זרם TAR ב-Gzip. שימור המטא-נתונים תלוי בארכיון ובהגדרות החילוץ.

האם .tgz זהה ל-.tar.gz?

כן. .tgz הוא סיומת מקוצרת בת שלוש אותיות עבור .tar.gz, שנוצרה במקור עבור מערכות הפעלה עם מגבלות שמות קבצים בפורמט 8.3, כמו DOS.

כיצד אוכל לחלץ קובץ .tar.gz ב-Windows?

אפשר לחלץ קובצי .tar.gz ישירות בדפדפן באמצעות File2File.app, בלי להתקין WinRAR או 7-Zip.