הכל עושה Segmentation fault ב-OpenBSD? הפוסט ה-501

אז לפני שמישהו מאשים אותי בסנסציוניות, התשובה העקרונית לשאלה בכותרת היא “לא” 🙂

דבר ראשון, מסתבר שזהו הפוסט ה-501. הפוסט על איך הלכתי לפגישה עם לקוח כשאני לא מגולח היה הפוסט ה-500. מזל טוב וכו’ וכו’.

לפני שני פוסטים כתבתי על זה שהתקנתי OpenBSD 4.1, ושהסיבה שהתקנתי לא את הגרסה האחרונה היא שלא מצאתי מראה ישראלית, והמראות בחו”ל היו איטיות להחריד. הסתבר לי בנתיים שהסיבה היא חלקית באשמתי. ניסיתי לגשת ב-FTP. מצד שני, הסיבה שניסיתי לגשת ב-FTP היתה שזה מה שהוראות ההתקנה מרמזות שצריך לעשות. מי שמחפש עוד יכול למצוא גם רשימת מראות ב-HTTP, אבל צריך לחפש בשביל זה.

וזו כל הנקודה לגבי OpenBSD, כך נראה. הם מצפים ממך לחפש. זה לא בדיוק שהם user hostile, כמו שהתהליכים שעברו על רוב הפצות הלינוקס בעשור האחרון, של להפוך את ההפצה ליותר ידידותית, פסחו לחלוטין על OpenBSD. אני אודה ואתוודא שחלק מהבעיה קשורה בהתקנה שלי. התקנתי על מכונה וירטואלית (VirtualBox, מתוך כוונה לא “ללכלך” את הקרנל שלי במה שצריך בשביל VMWare), והיא כברירת מחדל יצרה כרטיס רשת שמסוגל להתחבר החוצה תמיד, בכל מצב, מייד, אבל לא מאפשר לגשת את המכונה בשום צורה. מצד שני, אני לא התקנתי סביבה גרפית כי אמרת “אני?? לא צריך!”. זה אומר שכל מה שהיה לי היה ה-console הקטן שמגיע (אם OpenBSD תומך ב-Virtual Consoles, אני עוד לא מצאתי איך עוברים בינהם). היום ישבתי להגדיר את הרשת בצורה יותר נורמלית, ואני כבר עובד ב-SSH מתוך סביבה נורמלית יותר.

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

אלא שכל זה לא מסביר התנהגות אחת תמוהה. כשניסיתי לקמפל את הפרוייקט שלשמו התקנתי OpenBSD, גיליתי שאני לא מצליח לעבור את השלב שבו מריצים configure. ה-shell עושה core dump! זה משהו שלעולם לא אמור לקרות. פשוט אף פעם.

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

התעלומה נפתרה כשמצאתי את הבאג הזה. מסתבר שהבעיה היא ב-VirtualBox. למעשה, אני צריך להגיד תודה שבכלל הצלחתי לעבור את ההתקנה.

עכשיו רק נשארה הדילמה. כמו שאני רואה, יש לי את האופציות הבאות מולי:
1. להחליף מערכת וירטואלית. יש לי רשיון חוקי של VMware Workstation.
2. לבחור מערכת אחרת בתור המערכת הלא לינוקסאית שעליה אני בודק את fakeroot-ng. אולי OpenSolaris?
3. להתקין על מחשב מלא. טוב, לא באמת.

ועל מה זה fakeroot-ng, ולמה צריך את זה, אני כבר אכתוב בפעם אחרת (פוסט 502?).

שחר

Bear