הפצת גנו/לינוקס

הפצת גנו/לינוקס, המכונה גם הפצה או distro (קיצור הנגזר מהמילה האנגלית distribution), היא מערכת הפעלה גנו המכילה את ליבת מערכת ההפעלה לינוקס ורכיבים נוספים לתפעול המחשב. רוב רכיבי ההפצה מבוססים על תוכנה חופשית וקוד פתוח, לכן קל לנייד אותם למטרות ונישות שונות וכך המגוון שלהם רחב.
הפצה נוצרת בדרך כלל על ידי משתמשים, קבוצות וארגונים מרחבי העולם. חברות כמו RedHat, נובל ומנדריבה, פרויקטים קהילתיים כמו דביאן GNU/לינוקס (Debian GNU/Linux), אובונטו לינוקס (Ubuntu)‏, PCLinuxOS ו-ג'נטו מתחזקים את התוכנה ומספקים אותה כמערכת שלמה מוכנה להתקנה ושימוש.
לרוב, הפצת גנו/לינוקס בעזרת האינטרנט להורדה בצורת קובצי ISO לצריבה עצמית. בדרך כלל ניתן אף להפעיל הפצה ישירות מדיסק און קי ללא כל צורך בהתקנה.

היסטוריה

הפצות לינוקס החלו להופיע זמן קצר לאחר שלינוקס התחילה להיות בשימוש גם על ידי מפתחים מחוץ לקהילת ההאקרים, אשר מצידם התעניינו בעיקר בפיתוח מערכות הפעלה, יותר מאשר בתוכניות ובממשק המשתמש. משתמשי לינוקס, נדרשו לפתח מומחיות בסיסית בסביבת מערכת ההפעלה יוניקס לפני שניתן היה להשיג הפצה המאפשרת להתקין את לינוקס בקלות. לינוקס במצב זה לא התאימה למשתמשים מן השורה.
בין ההפצות הראשונות שהפכו זמינות זמן קצר לאחר שחרורה של הגרסה הראשונה של לינוקס ניתן היה למצוא את MCC Interim Linux, אשר הייתה זמינה לכל דורש באמצעות אתר ftp באוניברסיטת מנצ'סטר כבר בפברואר 1992. TAMU נוצרה באותה תקופה לערך באוניברסיטת טקסס A&M (שכינויה TAMU) וכך גם SLS. הפצות אלו לא תוחזקו בצורה יעילה במיוחד וכאשר אחת מהן - SLS, סרבה לקבל תיקונים ועדכונים מאדם בשם פטריק וולקרדינג (Patrick Volkerding), הוא יצר את הפצת Slackware.
הפצות לינוקס משכו משתמשים אשר חיפשו תחליפים למערכות ההפעלה Microsoft Windows ו-Mac OS במחשב אישי, אך בעיקר כאלו שהשתמשו ביוניקס בעבודה או באוניברסיטה. הם אימצו את לינוקס בגלל העלות ובמיוחד מאחר שקוד המקור של רוב התוכניות היה זמין אף הוא. לינוקס הפכה פופולרית ביותר בשוק השרתים, בעיקר שרתי אינטרנט ומסדי נתונים (ראו גם LAMP).

מבנה

הפצת לינוקס מכילה ליבת (קרנל) לינוקס, ספריות (כגון ספרית GNU שממנה נגזר השם גנו/לינוקס), קובצי אתחול, קובצי תצורה, דפי תיעוד, יישומיים נוספים, מערכת חלונות (מכונה X) וסביבת עבודה. רובה מבוססת תוכנה חופשית וקוד פתוח. כל יישום מופץ עם קוד המקור שלו וכך כל משתמש יכול לערוך את היישום ולהתאימו לצרכיו. חלק קטן מהתוכנות שמצורפות להפצה הן קנייניות ואינן מגיעות עם קוד המקור.

חבילות

הפצות מפוצלות בדרך כלל לחבילות, כל אחת מהן מכילה תוכנה או שירות מסוימים. חבילה עשויה להכיל למשל ספרייה לטיפול בקובצי PNG, ספרייה אחרת עשויה להכיל פונטים ואילו ספרייה שלישית עשויה להכיל דפדפן אינטרנט.
אף על פי שרוב ההפצות מבוססות קוד פתוח, רובן מפיצות את התוכנה בקוד בינארי (לאחר הידור לשפת מכונה). חלק מההפצות, כגון ג'נטו, מספקות את הליבה בינארית בלבד, כלי בניה ושאר החבילות מסופקות בקוד מקור. כדי להתקין חבילה יש ראשית לבנות אותה במחשב המשתמש.

מנהל החבילות

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

עדכניות

ההפצות השונות מבוססות בעיקר על חבילות תוכנה אחרות, אשר מפותחות בנפרד. לדוגמה: ההפצות השונות אורזות את לינוקס (ליבה) ליבת לינוקס ואת מערכת התצוגה מ־X.org. ככל שמשקיעים יותר זמן בבדיקת הגרסה, אפשר למצוא יותר בעיות (ולתקנן, או לפחות לפרסמן). מצד שני, משתמשים בגרסה ישנה יותר, שלא כוללת שינויים ותיקונים מהמפתחים המקוריים. ההפצות השונות נבדלות בגישתן לבעיה.
בדרך כלל המפתחים משתמשים בגרסה מסוימת של התוכנה, ומתקנים אותה בתיקונים חשובים שהתגלו מאוחר יותר. הפצות שולחניות רגילות מוציאות בדרך כלל גרסה חדשה על כחצי שנה. ישנן הפצות שמוציאות גרסה חדשה לאחר זמן רב יותר, ומשתדלות גם לתמוך בהן לפרק זמן ארוך.

הפצה מתגלגלת

דרך חלופית היא ליצור הפצה מתגלגלת (rolling). במקרה הזה החבילות שבתוכנה מתעדכנות באופן שוטף מעדכונים של המפתחים המקוריים. בכך מקבלים גרסאות עדכניות יותר, אך פחות צפויות: אם יש בעיה במקרים רבים הפתרון לה כולל מעבר לגרסה חדשה יותר שכוללת את התיקון, אך אולי גם שינויים אחרים.