תקן היררכיית מערכת הקבצים

תקן היררכיית מערכת הקבציםאנגלית: Filesystem Hierarchy Standard ובקיצור FHS) במערכות הפעלה מבוססות לינוקס, מגדיר את מבנה והיררכיית התיקיות, ותוכן הקבצים שבהם. התקן הוא ביסוס והרחבה של מערכת הקבצים של מערכת ההפעלה BSD. הוא מתוחזק על ידי קרן לינוקס וגרסתו הנוכחית היא 3.0, אשר הוכרזה ב־3 ביוני 2015.

מבנה התיקיות עריכה

תיקיית השורש בלינוקס נקראת root ומסומנת בלוכסן ימני /. בתיקיה זו קיימות כל שאר התיקיות המרכיבות את כלל המערכת.

שם התיקייה תקציר תוכן התיקייה
bin קובצי משתמש בינאריים
sbin קובצי מערכת בינאריים
etc קובצי הגדרות
dev קובצי התקני מערכת
proc מידע תהליכים
var קבצים משתנים
tmp קבצים זמניים
usr תוכניות משתמש
home תיקיות הבית
boot קובצי מנהל האתחול
lib ספריות מערכת
opt תיקיית יישומים מספקים חיצוניים
mnt תיקיית עגינת התקנים
media תיקיית התקנים נתיקים
run משתני זמן ריצה
srv תיקיית שירותים
sys תיקיית מערכת
root תיקייה למשתמש בעל הרשאת root
lost+found תיקייה לשימוש בעת קריסת המערכת

תוכן התיקיות עריכה

/ - שורש המערכת עריכה

תיקיית בסיס עץ התיקיות. מורשה לכתיבה או מחיקה עליו רק על ידי המשתמש root שססמתו היא ססמת המערכת.

root עריכה

תיקיית הבית של המשתמש root. ניתנת לצפייה, כתיבה ומחיקה רק על ידי המשתמש root שססמתו היא ססמת המערכת.

bin עריכה

מכילה קובצי פקודות מסוף בינריים הניתנים להרצה. המדובר בקבצים המיועדים לשימוש כל המשתמשים כגון ls, cp, grep, ps ו־ping, הקיימים במערכת כברירת מחדל אף ללא פעולת התקנה מצד המשתמש.[1] במידה ויש משתמש בודד למערכת (מלבד root, שאינו נחשב) עשויים להתווסף קובצי פקודה נוספים.

sbin עריכה

מכילה קובצי פקודות מסוף בינאריים הניתנים להרצה. המדובר בקבצים המיועדים לשימוש על פי רוב על ידי מנהל המערכת לשם תחזוקת המערכת. דוגמות לקבצים אלו הן הפקודות iptables, reboot, fdisk, ifconfig ו־swapon.[2] אין הכוונה כי התיקייה היא הקובעת את רמת ההרשאה אלא כך מסודרות הפקודות מלכתחילה.

lib עריכה

מכילה ספריות בשימוש התוכניות הנמצאות ב־‎/bin וב־‎/sbin.

usr עריכה

מכילה קבצים בינאריים, ספריות, תיעוד ומקורות קוד לתוכניות[3]

תיקיות משנה חשובות בתיקיה זו:

  • ‎/usr/bin = מכילה קבצים בינאריים של תוכניות משתמש
  • ‎/usr/sbin = מכילה קבצים בינאריים של תוכניות משתמש לשימוש על ידי מנהל המערכת.
  • ‎/usr/lib =מכילה ספריות בשימוש התוכניות הנמצאות ב־‎/usr/bin וב־‎/usr/sbin.
  • ‎/usr/local = מכילה תוכניות שהותקנו ממקורות שונים, שאינם כלולים בהפצה הרשמית. בנוסף עשויה לאחסן מידע ותוכניות אישיות במצב שקיימת רשת משותפת בה גם התיקייה ‎/usr משותפת.
  • ‎/usr/share = מכיל קובצי הגדרות כולל הגדרות גרפיות של תוכניות המשתמש.
  • ‎/usr/src = מכיל את קוד המקור לתוכניות המערכת כולל הקוד של הליבה.
  • ‎/usr/include = מכיל קובצי כותר הנדרשים בעת הידור תוכנית.

opt עריכה

קיצור ל-optional. מכילה יישומים מסַפָּקי תכנה חיצוניים, המותקנים בתיקייה עצמה או בתיקיית משנית שלה.

etc עריכה

מכילה קובצי הגדרות הדרושים לתוכניות המערכת. בנוסף מכילה קובצי מעטפת (קובצי תצורה) של תסריטים הנוגעים לצורת הפעלת וכיבוי תוכניות במערכת, דוגמת הקובץ fstab, המכיל מידע אודות מערכות קבצים כגון CD-ROM, החסנים ניידים, ונקודות העגינה שלהם. לא אומת רשמית מה מקור השם. בדביאן למשל, תופיע בפנים תיקייה בשם apt כשבפנים יש קובץ בשם sources.list המגדיר את כל הנתיבים אליהם apt-get פונה. חלק סבורים שזה et cetera (באנגלית "השאר" או "וכו'") - כלומר קבצים שלא היה מקום אחר מתאים לשים אותם. הסברים אחרים הם "editable text configuration" שכן לרוב יכיל קובצי תצורה ועוד.

dev עריכה

קיצור ל-device files. מכילה קבצים הנוגעים להתקנים ורכיבים המוצמדים למערכת, אם ברמה הפיזית כהתקני USB ואם ברמת התכנה כמסופי TTY. הסיבה לשילוב שני סוגי הרכיבים בתיקייה אחת היא, כי במערכות לינוקס גם התקנים פיזיים (כלומר חומרה על כל סוגיה) מטופלים כקבצים ולכן גם כונן פיזי יטופל כקובץ.

proc עריכה

תיקייה זו הנה מערכת קבצים[4] המכילה מידע אודות תהליכים הרצים בליבת המערכת. המערכת מורכבת מתיקיות אשר שם כל אחת ואחת הוא "מזהה תהליך" וכל אחת מהן מכילה את המידע המסוים אודות התהליך. בנוסף מכילה מערכת הקבצים קובצי מידע נוספים אודות משאבי המערכת כגון uptime. ניתן בצפייה בתיקיה זו ללמוד על המערכת הרצה.

var עריכה

מכילה קבצים המשתנים תוך כדי פעולת המערכת. אין מדובר בהכרח בקובצי משתנים במובן התכנותי, אלא בקבצים שונים המשתנים בעת פעילות המערכת. דוגמות לקבצים בתיקייה זו הם קובצי יומן של המערכת (log), קבצים משתנים השייכים לתוכניות (lib), קובץ תור הדפסה (spool), קובצי נעילת קבצים (lock), קובצי דוא"ל (mail) וקבצים זמניים הנותרים לאחר אתחול (tmp).

boot עריכה

מכילה קבצים הקשורים למנהל האתחול. כולל את קובצי GRUB,[5] ו־vmlinux.

run עריכה

תיקייה שמכילה קבצים זמניים שנטענים ל-RAM, ומכילה משתני זמן ריצה של מערכת ההפעלה.

srv עריכה

מכילה מידע השייך לשירותים מסוימים על פי השירות.

sys עריכה

קיצור של system. תיקייה שמכילה מידע על התקנים, מנהלי התקנים וליבת לינוקס. כמו run, התיקייה משתמשת ב-RAM ולכן נמחקת בכל כיבוי ונוצרת מחדש בכל עלייה.

tmp עריכה

תיקייה זו מכילה קבצים זמניים הנוצרים על ידי המערכת והמשתמש. כל אלו נמחקים בזמן אתחול, בניגוד ל־‎/var/tmp, בה הם נשארים לאחר אתחול.

home עריכה

תיקייה זו מכילה את קובצי המשתמש הפרטיים הנוצרים על ידו. כוללת את כל התיקיות הנמצאות בשימוש רגיל כגון "שולחן עבודה" “מסמכים" “הורדות" וכדומה. קובצי משתמש מסוים מכונסים בתיקיית בת ב־‎/home הנושאת את שמו. במידה ויש מספר משתמשים כל אחד יקבל תיקייה פרטית בעלות הרשאות ייחודיות אליו.

mnt עריכה

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

media עריכה

מיועדת לעגינת מדיה נתיקה, כגון נגני מדיה, כונני CD-ROM, החסנים ניידים, כוננים קשיחים חיצוניים, ומערכות קבצים נוספות. המדיה לרוב תעגון בתיקייה באופן אוטומטי על ידי מערכת ההפעלה.

lost+found עריכה

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

קישורים חיצוניים עריכה

הערות שוליים עריכה

  1. ^ נקראות תוכניות רמה א' - תוכניות ברמה א' הן פקודות הבאות יחד עם המערכת כבסיס. פקודות רמה א' מאוחסנות בתיקיות ‎/bin ו־‎/sbin שב־/
  2. ^ גם כאן מדובר בתוכניות ברמה א'
  3. ^ ברמה ב. (תוכניות ברמה ב' הן תוכניות אשר נוספו על ידי המשתמש)
  4. ^ אוסף קבצים מסודרים, ולא במובן של אופן סידור המידע על הדיסק הקשיח
  5. ^ ו/או burg