ראשי > suse > סוזה, zypper ותאימות ל-yum

סוזה, zypper ותאימות ל-yum

לאחרונה התחלתי לעבוד לא מעט עם SLES ו-openSUSE ונדרשתי לעניין של הגדרות מאגרים והתקנות. מאחר ו-YaST הוא כלי גרפי (או עם ממשק ncurses) וללא אפשרות להפעלה משורת הפקודה בלבד, אז הפתרון הבא הוא Zypper. יש להזכיר כי קיים כלי נוסף בשם Rug שמיועד לעדכונים מול המאגר של נובל.

מאחר ואני עובד במקביל עם SLES10, SLES11 ו-openSUSE 11.x אז ישנם הבדלים לא קטנים בכלי, ובעיקר ביחס של SLES10 מול שתי הגרסאות האחרות. עם זאת, גם בגרסאות החדשות יש כמה אנומליות לא קטנות. zypper של SLES10 עובד בצורה דיי נכה עם קבצי repo ועדיף להשתמש בפקודות zypper service-add ולתת את הכתובת של המאגר. גרסאות מתקדמות יותר כבר יודעות לאכול קבצי repo טוב יותר, בתנאי שיש להם שורה שמציינת את סוג המאגר (type=rpm-md). לפחות יש תאימות סבירה ל-yum ואפשר לבנות מאגרים ליותר מהפצה אחת מבוססת RPM.

עם זאת, נתקלתי בקטע מעניין והוא הארכיטקטורה של ה-RPMים. רוב ה-RPMים של סוזה לסוגיו מיועדים עבור i586 בגרסאות ה-32bit, אך המכונות מדווחות על מעבדים מסוג i686 עם ארכיטקטורת בסיס של i386. אז איך בדיוק נבנה לי RPM עבור i586? תחליטו. זה לא נעים כאשר מנסים להגדיר מאגר בקובץ repo תוך שימוש במשתנים של arch ו-basearch ולא מבינים למה לא מגיעים לכתובת הנכונה.

דוגמה קיצונית אף יותר שנתקלתי בה היתה שמכונה דיווחה לי על arch של x86_64 ו-basearch של i386. על זה נאמר WTF?

אגב, ב-zypper בגרסאות החדשות, עשו הפרדה בין מאגרים (repos) לשירותים (services). האחרון מתייחס לשירותי מידע על מאגרים, וזאת למרות שבגרסאות הישנות (SLES10) השם services מתייחס בפועל למאגרים. ככה זה שהכלי מתפתח עם ההפצה ובעיקר כי מדובר בכלי יעודי במקום בתשתית של כמה הפצות (כמו yum).

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

:קטגוריותsuse
  1. 20/07/2010 בשעה 11:10 pm

    ניתן להפעיל את yast משורת הפקודה. הרי מספר מדריכים:
    http://www.novell.com/coolsolutions/trench/15408.html
    http://sman.informatik.htw-dresden.de/doc/manual.10.3/sec.yast.ncurses_commands.html
    יחד עם זה, העוינות הבולטת שלך לסוזה מפריעה לך להשתמש בה כמו שצריך, ופוגמת בעקומת הלימוד שלך. אל תניח מראש שיושבים שם מטומטמים או רשעים. נסה להבין מה בראש שלהם לפני שאתה נחפז בביקורת. שאל לפני שאתה חורץ משפט. נסה לעבוד עם yast הגרפי – בסופו של דבר זה עיקר היחוד של סוזה וזה הערך המוסף שהיא מנסה להעניק. לדוגמה ב software management השתמש בלשוניות השונות ותקבל תשובה לרוב שאלותיך בפוסט הזה.
    אגב, בסוזה נערך מאמץ להשתמש – גם – בכלים ובשיטות של רד-הט, מכיוון שמנסים כנראה לא לחנך אדמיניסטרטורים שכבר התקבעו על שיטות מוכרות להם ולא נכונים נפשית ללמוד משהו חדש.
    תופעה מוכרת לנו מוותיקי חלונות הנקלעים ללינוקס, למשל. לא? אי-לכך נמצא גם zypper בפיתוח והוא משתנה מגרסה לגרסה. יש לקוות כי הוא משתכלל. מה רע בזה בעצם?

  2. ליאור קפלן
    21/07/2010 בשעה 10:53 am

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

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

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

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

  3. 21/07/2010 בשעה 1:47 pm

    לדעתי המאגרים המשותפים לארכיטקטורות השונות הם ברכה. הם מקור הכוח של אופן סוזה כ x86_64  אמיתית ולא כ 64 "טהורה".
    בעניין yast מגרסאות ישנות אני סבור שאתה טועה. אישית לא ניתקלתי בכך. האם תוכל לתת דוגמה?

    • ליאור קפלן
      26/07/2010 בשעה 8:23 am

      בדקתי שוב על מכונה:
      SUSE Linux Enterprise Server 11 (x86_64)
      VERSION = 11
      PATCHLEVEL = 1

      והמשתנה $basearch בקובץ repo מוחלף במחרוזת i386.

      הפלט של uname -a
      Linux SLES11-64bit 2.6.32.12-0.7-default #1 SMP 2010-05-20 11:14:20 +0200 x86_64 x86_64 x86_64 GNU/Linux

  4. אורןה
    23/07/2010 בשעה 2:06 pm

    I use yast -i

  1. No trackbacks yet.

כתיבת תגובה

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

הלוגו של WordPress.com

אתה מגיב באמצעות חשבון WordPress.com שלך. לצאת מהמערכת / לשנות )

תמונת Twitter

אתה מגיב באמצעות חשבון Twitter שלך. לצאת מהמערכת / לשנות )

תמונת Facebook

אתה מגיב באמצעות חשבון Facebook שלך. לצאת מהמערכת / לשנות )

תמונת גוגל פלוס

אתה מגיב באמצעות חשבון Google+ שלך. לצאת מהמערכת / לשנות )

מתחבר ל-%s

%d בלוגרים אהבו את זה: