ארכיון TAR (.tar)

POSIX.1-1988 תקן

פורמט Tape Archive (TAR) הוא פורמט אריזת הקבצים הנפוץ ביותר במערכות Unix ו-Linux, המקבץ קבצים מרובים, תיקיות ומטא-דאטה של מערכת הקבצים לזרם יחיד בלתי דחוס שתוכנן עבור גיבוי בסרטים מגנטיים והפצת תוכנה.

המר ZIP ל-TAR

ממיר חינמי מ-ZIP ל-TAR פועל בדפדפן. המר קבצים באופן מיידי במכשיר שלך.

בדיקה ומטא-דאטה

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

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

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

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

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

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

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

75 73 74 61 72

ייצוג ASCII: ustar

תקינה: POSIX.1-1988 (ustar) / POSIX.1-2001 (pax)

מפרט טכני

ארכיטקטורת מעטפתSequence of 512-byte blocks: 512-byte file header followed by file data rounded up to 512 bytes, ending with two zero blocks
דחיסהUncompressed archive container (designed to be piped into gzip, bzip2, xz, or zstd)
סדר בתים (Endianness)Octal ASCII string fields; big-endian numeric extensions
מרחבי צבעN/A (Archive Container)
ערוצים ומבנהUnix file directory tree, symlinks, hardlinks, character/block devices, and FIFO pipes
ממדים מרביים8 GB limit in classic ustar; practically unlimited in modern PAX format
שקיפותFull preservation of POSIX file permissions, owner UID/GID, access times, and extended attributes
הזרמה ופרוגרסיביותSequential stream-oriented design: can be written directly to physical magnetic tape drives

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

תכונה טכניתTAR (נוכחי)ZIP7ZCPIO
דחיסה מולדתללא (כלי אריזה טהור)דחיסת Deflate מובניתדחיסת LZMA/LZMA2 מובניתללא (כלי אריזה טהור)
שמירת הרשאות Unix100% מאפייני POSIX, קישורים סמליים, UID/GIDתמיכה מוגבלת בהרשאות Unixשומר הרשאות בסיסיות100% מאפייני POSIX
חילוץ בזרם (Streaming)חילוץ מלא הניתן להזרמה מצינורותדורש קריאת ספרייה מרכזית ב-EOFדורש קריאת כותרת סיוםחילוץ מלא הניתן להזרמה
גישה אקראית לקבציםאיטית (סריקה לינארית רציפה)מידית (חיפוש בספרייה המרכזית)בינונית (חיפוש באינדקס)איטית (סריקה לינארית רציפה)

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

שגיאת חילוץ: 'tar: Skipping to next header' או 'A lone zero block at X'.

גורם שורש: יישור בלוקים פגום של 512 בייט או סיום מוקדם של הזרם.

התאוששות: חלץ עם 'tar -i' כדי להתעלם מבלוקים פגומים או תקן באמצעות File2File Tar Tool.

ניתוח אבטחה ווקטורי התקפה על מנתחים (Parsers)

חלצי TAR חייבים לחטא נתיבי קבצים כדי למנוע דריסת קבצים שרירותית באמצעות התקפות מעבר תיקיות (Directory Traversal).

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

  • מעבר תיקיות מסוג 'Slip' (לדוגמה '../etc/passwd') הדורס קבצי מערכת קריטיים במהלך החילוץ.
  • תנאי מירוץ בקישורים סמליים (Symlink race conditions) היוצרים קישורים סמליים לספריות מערכת ואחריהם כתיבת קבצים.
  • מניעת שירות באמצעות לולאות קישור קשיח מעגליות.

השיטות המומלצות להגנה:

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

2001תקן IEEE POSIX.1-2001 מציג את תקן PAX (Portable Archive Interchange), המבטל את מגבלות הגודל הישנות של 8 GB.
1988תקן IEEE POSIX מגדיר את פורמט הכותרת 'ustar' (Unix Standard Tar).
1979הוצג בגרסה 7 של Unix (V7) על ידי מעבדות בל (Bell Labs) כדי לכתוב עצי קבצים לכונני סרטים מגנטיים.

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

  • שומר באמינות על נאמנות מלאה למערכת הקבצים של Unix: הרשאות POSIX, קישורים סמליים, קישורים קשיחים ובעלות.
  • עיצוב המותאם להזרמה המכוון לסרטים מגנטיים: ניתן לחלץ ישירות מצינור רשת מבלי לגשת לסוף הקובץ.
  • תקן אוניברסלי בכל שרתי ה-Linux, תמונות הקונטיינרים (Docker/OCI) והפצות התוכנה של Unix.

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

  • ללא דחיסה מולדת: קובץ .tar לא דחוס הוא בערך באותו גודל כמו הקבצים הגולמיים יחד.
  • גישה אקראית היא איטית: חילוץ קובץ יحد מהאמצע של קובץ tar ענק דורש סריקה מההתחלה.
  • כותרות ustar ישנות קצצו שמות קבצים ארוכים מ-100 תווים (נפתר ב-PAX/GNU tar מודרני).

עובדות טכניות מעניינות

  • בייטים מיוחדים (Magic bytes) 'ustar' ממוקמים בהיסט בייט 257 בתוך כל בלוק כותרת בגודל 512 בייט.
  • TAR נכתב במקור כדי לשלוט פיזית בכונני סרטים מגנטיים בעלי 9 ערוצים מסוג reel-to-reel.
  • תמונות קונטיינר של Docker ו-OCI הן בעצם סטים ערומים של ארכיוני .tar תקניים המכילים הבדלי מערכת קבצים שורשית (rootfs diffs).

שאלות טכניות נפוצות

מדוע קובץ ה-.tar שלי אינו דחוס?

TAR הוא רק ארכיונר (הוא אורז קבצים יחד לקובץ אחד) ואינו דוחס בעצמו. כדי לדחוס אותו, צרף אותו ל-gzip כדי ליצור קובץ .tar.gz.

מה ההבדל בין ustar ל-GNU tar?

Ustar הוא תקן POSIX משנת 1988 עם הגבלה של 100 תווים לשמות קבצים, בעוד ש-GNU tar הוא פורמט מורחב התומך באורכי נתיב בלתי מוגבלים ובקבצים דלילים (sparse files).

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

Windows 10 ו-11 תומכות ב-tar באופן מובנה דרך שורת הפקודה ('tar -xf file.tar'), או שתוכל לחלץ אותו ויזואלית באמצעות File2File.app ישירות בדפדפן האינטרנט שלך.