קטגוריה: Debian

מזלגות נעוצים

בתקופה האחרונה, נעשו מספר פעולות fork לפרויקטים מוכרים, בהם node.js ודביאן.
בנוסף, פרויקט docker מקבל מתחרה, לאחר שחברת CoreOS הודיעה כי לא מקובל עליה הכיון של docker.

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

אתחיל בדביאן
יש המון טינה על systemd, ובעקבות כל הנושא, עם כל הזעם, הוחלט ליצור fork בשם devuan, אשר ימשיך לספק יכולות של sysv init במקום systemd ה"נורא".

החשיבה כאילו systemd גוזל משהו, בכך שהוא בא לסדר בלאגן ובעיות שיש במערכת הקיימת כיום, מקבלת תירוצים של "נוצרת תלות במערכת", והתשובה שלי היא: "כי עד עכשיו התלות ב sysv לא היתה קיימת ?"

המאבקים המפגרים האלו, האם להשתמש בsystemd או לא, פוגעים בלינוקס, ולא האם systemd טוב או לא.

node.js
לפני מספר חודשים הבעתי חשש לגבי הפרויקט, והתלות שלו בגוגל. מסתבר שאני לא היחיד שמפחד ממעורבות של חברות בצורה כל כך דרסטית בפרויקט, אז קבוצה של מתכנתים שמפתחים ל node.js בהתנדבות, החליטו לנעוץ מזגל בפרויקט, וליצור את הפרויקט io.js.

הרעיון הוא לא להיות תלוי בהחלטות של חברה מסחרית בפרויקט, ובכך להשאיר אותו פתוח בתפיסה, אם כי זה לא אומר שהתפיסה של המפתחים תהיה מוסכמת על שאר השוק …

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

Rocket
במידה ולא שמעתם על docker, אתם כנראה ישנים איפשהו, או שרחוקים מעולם ה IT. זה השם החם ביותר מאז שסייבר ומחשוב ענן נכנס לעולם, או אולי זה היה 42 ?

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

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

החברה של CoreOS, רוצים container ומשהו שזו כל ההתמחות שלו, אבל docker מתחיל להיות stack שלם של דברים, והם ממש לא אוהבים את זה, כי בסופו של דבר,זו סוג של תחרות, לא ?

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

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

Some IX2-200 hacking

I've bought an Iomega IX2-200 NAS as a backup solution. For it's price, it was the best choice imho (but there are much better solutions out there, but a lot more expensive).

It runs Linux (Debian to be exact), but on default it does not enable ssh, and you can choose only sftp or rsync (as a client), but not at the same time.nas_diagnostics_page

Older firmware can open the ssh part as described at the link, however here is how to do it for a newer firmware:

  1. Enter your device
  2. Login
  3. Go to the following address:
    http(s)://<IP ADDRESS>/diagnostics.html
  4. Enable ssh (it might require you to change port due to proftpd acting as sftp server and binded on port 22)
  5. Use the user root with your login password, but provide a prefix of "soho" prior to it. That is, if your password is "1234" (and I hope it is not), then do the following to your password:
    soho1234
  6. Enjoy the access, and remember: "With great power, comes great responsibility" (or something like that)

For my next post, I'll understand how to make it work as an rsync server.

Remember the joy of device hacking 🙂

*LazPackager

lazDebian

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

החבילה מאפשרת גם לחתום את החבילה ולהעלות אותן אל מאגר ה PPA של אובונטו.

בנוסף, היא מאפשרת ליצור קובץ tar המקורי שדרכו ניתן ליצור את החבילות, ובכך לספק חבילת "קוד מקור", אשר יכולה להעלות בצורה נכונה אל חווות ליצירת חבילות בצורה תקינה.

לא ניסיתי את החבילה בעצמי, וגם אין לי הפצה מבוססת deb לנסות' כך שאינני יכול להוסיף יותר מניסיון אישי.

קוד המקור של החבילה.

* החבילה שונתה בשמה מ LazDebian לLazPackager

n900 – עכשיו גם אני

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

אבל הנה כמה דברים שלא מספרים לכם על  n900 לפני שאתם קונים:

  • ישראל לא קיימת כאיזור זמן. לבנון קיימת, ירדן קיימת, מצריים קיימת, אבל ישראל ? לא ! אז מה עושים ? בוחרים את ארה"ב בהתחלה (אח"כ משנים לבריטניה בשביל לעבוד במטרים וכו') ובמקום בחירה אוטומטית של זמנים, עושים בחירה ידנית, בוחרים את ישראל מהמפה עצמה מכוונים בכוח את השעון והתאריך, ויש !
  • אם תנסו להגדיר פרופילי wifi, תגלו שסתם בזבזתם זמן. הרשת שהוא מגלה כרגע והחלטתם להתחבר אליה לא משתמשת בהגדרות ששמתם מראש. אבל אחרי שהתחברתם פעם ראשונה הוא זוכר את הסיסמאות וכו'. אז אל תגדירו פרופילי רשת, חבל על הזמן שלכם (לפחות לפני השדרוג firmware לא בדקתי אחרי).
  • אתם חייבים אינטרנט בשביל להשתדרג, ובניגוד למוקו (אחד הדברים שאני מוצא את המוקו טוב יותר לשם שינוי), אי אפשר לעשות ip forwarding לn900 ולכן או אינטרנט סלולרי (אין לי 3g וגם אם היה זה סתם יקר)או wifi בלבד. אשמח לגלות שפספסתי משהו וכן אפשר.
  • האקסולמטר שלו בברירת מחדל כבוי. אין לי מושג איך מדליקים אותו. אשמח לעזרה בנושא.
  • זה לא אופן מוקו וזה לא אנדרואיד. אפילו אל תנסו לדמיין שהוא קרוב לאיפון כי אני מבטיח שתשלמו על זה  (הרבה כסף – על האיפון כמובן).

אחרי הנקודות האלו, חשוב להבין כי n900 הוא משהו בין netbook לטלפון. או בין טאבלט לטלפון. הוא multi-tasking אמיתי, ואם המסך היה גדול יותר היה עוד יותר מהנה, ואני חייב לציין שזה אחד מהטלפונים היחידים שאני באמת נהנתי לשחק איתם ולהשתמש בהם, מכל הטלפונים ה"חכמים" למינהם. אבל אם לא היתה לי דרישה לסוג טלפון כזה מלקוחות מסויימים, אז עדיין הייתי ממשיך להסתפק בטלפונים פשוטים שעולים גג 500 ש"ח במקרה הרע…

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

שרת יציב וטוב

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

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

להמשיך לקרוא

כלי האלטרנטיבה בלינוקס

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

הדבר הזה שונתן לי לנהל את השימוש בתוכנה והגרסה שמתאימה לי נקרא alternatives.

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

להמשיך לקרוא

הדגמה לניצול בעיית אבטחה של טלפון תוכנה

השנה בכנס BlackHat בלאס ווגס היתה הדגמה של בעיית אבטחה בעולם ה VoIP, וכן על כמה פתרונות אבטחה בעולם.
הרבה מרכזיות VoIP אינן מוגנות, היות וארגונים בטוחים כי כל מה שצריך זה להשאיר את השרת תחת חומת אש או משהו כזה, אין תמיד דגש על אבטחה, ועל הרשאות גישה וכו'.

האתר Blue Box שם לו לדגש להציג בעיות אבטחת מידע בעולם הVoIP באמצעות שידורי PodCast.

אחד משידורי הPodCast מציג הדגמה של בעיית אבטחה בטלפון תוכנה הרץ בWindows. הפירצה מאפשרת ניצול של באג, ונותנת גישה ישירה לShell ב Windows.

מי הזיז את הinittab שלי ?!

בעולם ה SysV ישנה שיטה ממש נחמדה לאתחל את המחשב ולגרום לשרתים שונים לרוץ.

למעשה המנגנון מבצע עוד כמה דברים נחמדים, כמו האפשרות להחליט מה יעשה הצירוף הקדוש ALT+CTRL+DEL, וכן ניתן להגדיר שם את המסופים שלנו, וכל רכיב סיריאלי אשר אנחנו צריכים להשתמש בו.

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

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

במידה ואתם מעוניינים לשנות הגדרות פשוט גשו לספרייה /etc/events.d/.

לעוד פרטים ניתן לגשת לכתובת http://upstart.ubuntu.com/getting-started.html

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