Python smbstatus

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

#!/usr/bin/python

import subprocess
import re
import string

SMBSTATUS       ="/usr/bin/smbstatus"
devnull         = open('/dev/null', 'w')
UsersList       =[]
FilesList       =[]
DirsList        =[]

# Prints out shares from an array in a readable format
def PrintShares(TitleArg,RunArg):
        print "\n"
        print "{0:20} {1:20} {2:80}".format("Username", "Share Name", TitleArg + "Path")
        print "=" * 100
        for x,y,z in RunArg:
                print "{0:20} {1:20} {2:80}".format(x, y, z)

# Read open shares (For computers)
ShareOutput = subprocess.check_output([SMBSTATUS, "-S"], stderr=devnull)

# Read open files
OpenFilesToFix = subprocess.check_output([SMBSTATUS, "-L"], stderr=devnull)

# Get a list of users & pids
for line in ShareOutput.split("\n"):
        if re.search('^[a-zA-Z0-9]', line):
                a = line.split(" ")
                b = filter(None,a)
                UsersList.append((b[1],b[2]))

# Replace pids in our open files list with computer names
for x,y in UsersList:
        OpenFilesToFix=OpenFilesToFix.replace(x,y)

# Filter out what we want (Who and where...)
for line in OpenFilesToFix.split("\n"):
        if ':' in line and not line.startswith('Locked files:'):
                a = line.split(" ")
                b = filter(None,a)
                c = string.join(b[7:])
                file_path = c[:-24] # Remove the date crap
                username  = b[0] # Create Username
                share = b[6] # Create Share name

                if '0x100081' in line or '0x81' in line:
                        DirsList.append((username, share, file_path))
                else:
                        FilesList.append((username, share, file_path))

# Print a nice output
PrintShares("File ",FilesList)
PrintShares("Directory ",DirsList)

print ""

יש לתחזק את הבלוג, יש לתחזק את הבלוג, יש לתחזק את הבלוג…

הרבה זמן שלא כתבתי כלום…

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

לפני כחודש החלטתי שבמקום "להתכונן" לרכיבה למשרד פשוט אתחיל לרכב… הרכיבה הראשונה היתה קצת קשה אבל שאר הרכיבות אחריה הפכו לשגרה.

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

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

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

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

אופניים

שלשום רכבתי בפעם הראשונה מזה עשור.

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

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

נורא כאב לי התחת.
ברצינות, ממש כאב לי במשך כל אתמול. כאב לי לשבת ובמשרד התחילו להריץ כל מיני תיאוריות לגבי ופחדו לשבת לידי 😉

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

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

WIFI בבית הספר: כמה טיפשים הורים יכולים להיות?

Wifiלאחרונה יש סערה סביב סוגיית הכנסת נקודות גישה אלחוטיות (Access Points) לבתי הספר בארץ.

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

קצת פיזיקה בשפה פשוטה:

התפשטות גלי הרדיו במרחב היא כזו שבהכפלת המרחק אנחנו מקבלים רבע מעוצמת האות.
את עוצמת אותות הרדיו נהוג למדוד בdBm (שזה dB למילי וואט). כאשר הכפלת העוצמה משמעותה הוספה של 3dB (וחצייתה – הורדה של 3dB). כאשר הכפלנו את המרחק מנקודת המוצא של האות (בד"כ – אנטנה) קיבלנו ירידה של 6dB בעוצמה בה מגיעים אלינו אותות הרדיו (תזכרו: בהכפלת מרחק מקבלים רבע מעוצמת האות)

קצת מספרים ועובדות על עוצמות שידור:

נקודת גישה תקנית של WIFI משדרת בעוצמה כוללת (EIRP) של 20dBm (שזה 100 מילי וואט). מדובר על העוצמה הכוללת של השידור שכוללת כבר את השבח (Gain) של האנטנה.
נקודת קצה תקנית של WIFI (מחשב נייד, טלפון חכם וכו'…) בד"כ לא משדרת יותר מ15dBm, או 32 מילי וואט.

טלפון נייד משדר עד 33dBm, או 2 וואט (פי 20 מעוצמת השידור של נקודת הגישה וכמעט פי 60 מעוצמת השידור של טלפון חכם בחיבור WIFI) ואנחנו מצמידים אותו לראש!

חשבון פשוט

ב2.4 גיגה הרץ (התדר הסטנדרטי שמותר לשימוש בארץ) מבלי להכנס לעניין של "שדה קרוב" גלי הרדיו מאבדים 40dB כבר על המטר הראשון. זאת אומרת שאם נקודת הגישה שלנו משדרת 20dBm. זה הופך ל 20dBm- אחרי מטר אחד בלבד! (יורד מ100 מילי וואט ל0.01 מילי וואט או 0.00001 וואט). זה 1 חלקי 200,000 מעוצמת השידור של הטלפון שלנו כאשר הוא צמוד לראש שלנו!
אם נקודת הגישה נמצאת 5 מטר מאיתנו אז אנחנו מאבדים עוד 14dB מהעוצמה (שזה כבר יוצא בערך 0.0000004 וואט או 1 חלקי 5,000,000 מעוצמת השידור של הטלפון הנייד כאשר הוא צמוד לראש שלנו)

אבל אנחנו משווים תפוחים לאגסים וצריך להשוות בין עוצמות השידור של מכשיר הקצה בעבודה עם WIFI (עד 15dBm) וסלולאר (עד 33dBm תלוי בדור).

במידה ואין חיבור wifi והילדים יהיו מחוברים עם הדרויידים והאייפונים שלהם ל3G הטלפון שמתקשר עם התא הקרוב (שלא תמיד כל כך קרוב) יאלץ לשדר בעוצמה גבוהה יחסית (כאמור – עד 2 וואט בדור 2 ועד וואט בדור 3, בד"כ). המשמעות היא שכל ילד שיעבוד עם הטלפון שלו במרחק של מטר מהמכשיר (נניח שמדובר בילד עם ידים ארוכות) יחשף לבין פי 20 לפי 100 מעוצמת הקרינה כאשר הוא יעבוד בחיבור סלולארי במקום בחיבור wifi וזה בלי לקחת בחשבון את העובדה שבתדרי העבודה של רשת הסלולאר ההתפשטות במרחב טובה יותר (תדרים יותר נמוכים שמפסידים פחות במטר הראשון).

סיכום

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

אם כבר חושפים אותם לקרינה, לא עדיף שזה יהיה כבר בהספק נמוך יותר?

שלום עולם (פוסט ראשון שלי בבלוג)

שלום עולם.

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

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

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

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

כחלק מהמאמץ אני צועד בין 5 פעמים ל 10 פעמים בשבוע מ/אל הבית שלנו בקיבוץ יקום מ/אל תחנת הרכבת בבית יהושע (מרחק של כ4 ק"מ)
אני לא רואה את זה כמאמץ מיוחד או כמשהו חד פעמי אלא כשינוי תפיסת החיים שלי.
אני מאוד נהנה מההליכה. יש לי שקט של 40 דקות שבו אני יכול לחשוב על מה שבא לי ואף אחד לא מטריד אותי עם שאלות, בקשות ומענות.

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