ארכיון תגיות: Windows

השכמה מרחוק למחשב

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

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

שלב א' – הכנת המחשב לפעולת ההשכמה

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

במקרים מסויימים ניתן לשנות את הגדרות כרטיס הרשת גם דרך המחשב. בלינוקס, ניתן להריץ את הפקודה הבאה שתגדיר את כרטיס הרשת שיאזין לחבילות מידע של Wake On LAN:‫
sudo ethtool -s <nic device> wol g

שלב ב' – איתור מידע

כדי שתוכלו להדליק מחשב מסויים מרחוק עליכם לדעת את כתובת כרטיס הרשת שמחובר למחשב. כתובת זו צרובה על כרטיס הרשת וברמה העקרונית לא אמורים להיות שני כרטיסי רשת בעולם עם אותו הזיהוי (בפועל זה קורה לא פעם). כדי למצוא את כתובת ה־MAC של כרטיס הרשת יש להקליד ifconfig בשורת הפקודה (ipconfig/all ב־Windows) או להיכנס להגדרות כרטיס הרשת. כתובת כרטיס הרשת מופיעה בשורה שמתחילה ב־HWAddr.

אם אין ברשותכם גישה לאותו המחשב כדי לבדוק את כתובתו או שאתם לא מנהלים רישום מסודר של כל כתובות הרשת שלכם, ניתן לנסות להשיג את רשימת המחשבים ברשת עם כתובת ה־Ethernet שלהם דרך ציוד הרשת. במקרה שלי, ניווט לתפריט LAN Settings → DHCP lease table הביאה איתה את רישום כל כתובות המחשבים ברשת שקיבלו כתובת IP מהנתב, כולל כתובת ה־IP, כתובת ה־Ethernet ובחלק מהמקרים גם שמו של המחשב.

שלב ג' – הפעלת המחשב מרחוק

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

הפעלה של מחשב שנמצא ברשת אחרת

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

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

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

זהירות!

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

תיקון בעיות של קידודי קבצים בלינוקס

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

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

נסיונות לפרוס את הקובץ אמנם מצליחים, אבל התוצאה הסופית היא קבצים שלא ניתן לקרוא את שמם.

$ unzip -v mashina-diamonds_in_the_sky.zip
Archive:  mashina-diamonds_in_the_sky.zip
Length   Method    Size  Cmpr    Date    Time   CRC-32   Name
--------  ------  ------- ---- ---------- ----- --------  ----
11866823  Defl:N 11016992   7% 2010-02-25 15:28 072fc022  ????? - ??????? ??????/01 ?????? ????.mp3
10670415  Defl:N  9919488   7% 2010-02-25 15:29 837afcc3  ????? - ??????? ??????/02 ??????? ??????.mp3
9734186  Defl:N  9011029   7% 2010-02-25 15:30 104dd258  ????? - ??????? ??????/03 ????? ?????.mp3
9359068  Defl:N  8682609   7% 2010-02-25 15:31 e755485c  ????? - ??????? ??????/04 ??? ??????.mp3
9592080  Defl:N  8914220   7% 2010-02-25 15:32 2155cca0  ????? - ??????? ??????/05 ?????? ????????.mp3
8359100  Defl:N  7736696   7% 2010-02-25 15:33 e0e61aa5  ????? - ??????? ??????/06 ????? ????.mp3
10327688  Defl:N  9572290   7% 2010-02-25 15:33 ce341b3b  ????? - ??????? ??????/07 ????? ????.mp3
11189729  Defl:N 10348867   8% 2010-02-25 15:34 872437c9  ????? - ??????? ??????/08 ?????.mp3
11271231  Defl:N 10476885   7% 2010-02-25 15:35 14706edf  ????? - ??????? ??????/09 ?????.mp3
13971247  Defl:N 12928714   8% 2010-02-25 15:35 771d8631  ????? - ??????? ??????/10 ???? ???.mp3
2890883  Defl:N  2763472   4% 2010-04-06 11:35 02e5a6f9  diamonds_in_the_sky_Cover.jpg
--------          -------  ---                            -------
109232450         101371262   7%                            11 files

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

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

$ 7z l mashina-diamonds_in_the_sky.zip

7-Zip 9.04 beta  Copyright (c) 1999-2009 Igor Pavlov  2009-05-30
p7zip Version 9.04 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,2 CPUs)

Listing archive: mashina-diamonds_in_the_sky.zip

----
Path = mashina-diamonds_in_the_sky.zip
Type = Zip

Date      Time    Attr         Size   Compressed  Name
------------------- ----- ------------ ------------  ------------------------
2010-02-25 15:28:10 ....A     11866823     11016992  Ž™‰„ - ‰„Œ…Ž‰ ™Ž‰‰/01 Œ‰‰ƒ ƒ‰‰ˆ.mp3
2010-02-25 15:29:46 ....A     10670415      9919488  Ž™‰„ - ‰„Œ…Ž‰ ™Ž‰‰/02 ‰„Œ…Ž‰ ™Ž‰‰.mp3
2010-02-25 15:30:50 ....A      9734186      9011029  Ž™‰„ - ‰„Œ…Ž‰ ™Ž‰‰/03 „€…™˜ „‘Ž…‰.mp3
2010-02-25 15:31:48 ....A      9359068      8682609  Ž™‰„ - ‰„Œ…Ž‰ ™Ž‰‰/04 ‰ „–ŒŒ‰.mp3
2010-02-25 15:32:44 ....A      9592080      8914220  Ž™‰„ - ‰„Œ…Ž‰ ™Ž‰‰/05 Œƒ‘Ž …”…Œ‘—‰.mp3
2010-02-25 15:33:20 ....A      8359100      7736696  Ž™‰„ - ‰„Œ…Ž‰ ™Ž‰‰/06 Žƒ…˜„ —ˆ„.mp3
2010-02-25 15:33:56 ....A     10327688      9572290  Ž™‰„ - ‰„Œ…Ž‰ ™Ž‰‰/07 ‰—…˜ ’‰˜.mp3
2010-02-25 15:34:28 ....A     11189729     10348867  Ž™‰„ - ‰„Œ…Ž‰ ™Ž‰‰/08 ‚’‚…’.mp3
2010-02-25 15:35:02 ....A     11271231     10476885  Ž™‰„ - ‰„Œ…Ž‰ ™Ž‰‰/09 „‰‰š‰.mp3
2010-02-25 15:35:40 ....A     13971247     12928714  Ž™‰„ - ‰„Œ…Ž‰ ™Ž‰‰/10 ‰Œƒ„ ™Œ‰.mp3
2010-04-06 11:35:56 ....A      2890883      2763472  diamonds_in_the_sky_Cover.jpg
------------------- ----- ------------ ------------  ------------------------
109232450    101371262  11 files, 0 folders

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

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

לאחר שניסיתי לקרוא את הקבצים בקידוד iso-8859-8 (המוכר גם בתור windows-1255) ללא הצלחה, ניסיתי את הקידוד cp862 שהיה קידוד הדף של העברית לפני שמערכות הפעלה גרפיות השלטו על מחוזותינו. וראו איזה פלא – אפשר לראות את שמות הקבצים!

$ convmv -f cp862 -t utf8 -r *
Your Perl version has fleas #37757 #49830
Starting a dry run without changes...
mv "��� - ����� ����/02 ����� ����.mp3"	"��� - ����� ����/02 יהלומים בשמיים.mp3"
mv "��� - ����� ����/06 ��� ����.mp3"	"��� - ����� ����/06 מדורה קטנה.mp3"
mv "��� - ����� ����/04 ��������.mp3"	"��� - ����� ����/04 בין הצללים.mp3"
mv "��� - ����� ����/03 ����� ���.mp3"	"��� - ����� ����/03 האושר הסמוי.mp3"
mv "��� - ����� ����/01 ������ ����.mp3"	"��� - ����� ����/01 בליינד דייט.mp3"
mv "��� - ����� ����/07 ����� ����.mp3"	"��� - ����� ����/07 ביקור בעיר.mp3"
mv "��� - ����� ����/05 ���� ��������.mp3"	"��� - ����� ����/05 לנדסמן ופולנסקי.mp3"
mv "��� - ����� ����/08 �����.mp3"	"��� - ����� ����/08 געגוע.mp3"
mv "��� - ����� ����/09 �����.mp3"	"��� - ����� ����/09 הייתי.mp3"
mv "��� - ����� ����/10 ���� ���.mp3"	"��� - ����� ����/10 ילדה שלי.mp3"
mv "./��� - ����� ����"	"./משינה - יהלומים בשמיים"
No changes to your files done. Use --notest to finally rename the files.
  • הפרמטר ‎-f מגדיר את קידוד המקור של הקובץ
  • הפרמט ‎-t מגדיר את קידוד היעד של הקובץ
  • הפרמטר ‎-r מגדיר לתוכנה לרוץ באופן רקורסיבי על תיקיות
  • * מציין לתוכנה להתייחס לכל הקבצים והתיקיות בתיקייה הנוכחית – קצת מסובך יהיה לתת לה את שם התיקייה כאשר אין באפשרותנו להקליד את התווים אליהם היא מצפה.

במידה ואנחנו מרוצים מהתוצאה ורוצים שהתוכנה תעשה משהו מעבר להצגה למסך של הפקודות אותן יש להריץ, נוסיף את הפרמט ‎–notest כדי לבצע את הפעולות שהוצעו.

$ convmv -f cp862 -t utf8 -r * --notest
$ ls -al משינה\ -\ יהלומים\ בשמיים/
total 103872
drwxr-xr-x 2 tomer tomer     4096 2010-04-08 01:10 .
drwxr-xr-x 3 tomer tomer     4096 2010-04-08 01:10 ..
-rw-r--r-- 1 tomer tomer 11866823 2010-02-25 15:28 01 בליינד דייט.mp3
-rw-r--r-- 1 tomer tomer 10670415 2010-02-25 15:29 02 יהלומים בשמיים.mp3
-rw-r--r-- 1 tomer tomer  9734186 2010-02-25 15:30 03 האושר הסמוי.mp3
-rw-r--r-- 1 tomer tomer  9359068 2010-02-25 15:31 04 בין הצללים.mp3
-rw-r--r-- 1 tomer tomer  9592080 2010-02-25 15:32 05 לנדסמן ופולנסקי.mp3
-rw-r--r-- 1 tomer tomer  8359100 2010-02-25 15:33 06 מדורה קטנה.mp3
-rw-r--r-- 1 tomer tomer 10327688 2010-02-25 15:33 07 ביקור בעיר.mp3
-rw-r--r-- 1 tomer tomer 11189729 2010-02-25 15:34 08 געגוע.mp3
-rw-r--r-- 1 tomer tomer 11271231 2010-02-25 15:35 09 הייתי.mp3
-rw-r--r-- 1 tomer tomer 13971247 2010-02-25 15:35 10 ילדה שלי.mp3

מספר הערות לפני פיזור:

  • פריסת הקובץ עם 7zip קצת בעייתי, מאחר והתוכנה מתרגמת את שמות הקבצים ל־unicode. מאחר והיא לא מצליחה לפרש כראוי את הקידוד של הקובץ, יהיה מסובך יותר לעבוד עם הקבצים אם כי אני מניח שניתן יהיה לעשות זאת עם מספר פעולות המרה נוספות.
  • מאחר ובחרנו להריץ את הפעולה על כל הקבצים בתיקייה מטעמי נוחות, כדאי לוודא שאין בתיקייה קבצים מיותרים. תפרסו את הקובץ לתיקיית עבודה זמנית – לעולם אל תפעילו פקודות מפוקפקות בתיקיית הבית שלכם עם תוכנם של הקבצים חשוב לכם!

פאק בשמישות

מישהו מוכן להסביר לי למה צריך Wizard כזה גדול בשביל לעשות משהו שצריך לעשות בכל מקרה? מה בדיוק עבר להם בראש כשהם עשו את זה?

סליחה, מה השעה?

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

קודם כל, תיקון קטן – אף־אחד לא צריך להזיז את השעון. ישראל לא עברה למיקום אחר על הגלובוס, כך שכל השינוי הדרוש הוא לכבות את סיבית ה־DST מהגדרת אזור הזמן או להעביר מ־GMT+3 ל־GMT+2 במערכות שלא כוללות סיבית Daylight Saving Time.

למה חשוב להזיז את השעה בצורה מסויימת ולא בצורה חופשית בידי המשתמשים? פשוט. ישנן מערכות מסויימות שבמידה ולא הוגדרו כראוי יציגו שעות שגויות. הדוגמה הקלאסית ביותר היא שימוש בדוא"ל – כאשר אנחנו נמצאים עם הגדרת זמן שונה מאשר של אדם אחר, אנחנו נקבל הודעות כאשר לכאורה הן נשלחו מהעתיד, שכן בשני המחשבים אזור הזמן הוא GMT+2, אלא שבאחד מהם השעון נמצא על DST והשעה עצמה שונתה כדי להתאים לסטנדרט.

GMT? DST? מה הולך פה?

  • כדור הארץ מחולק לפלחים שמהווים אזורי זמן. פלחים אלו אינם  סימטריים לחלוטין בעקבות מדינות שקבעו לעצמן אזור זמן אחד לכל המדינה.
  • אזור זמן נקבע בשעה מסויימת כדי שהשמש תמיד תזרח "בבוקר", וקיים סינכרון מול שאר העולם כדי שאחרים יוכלו לדעת מה השעה אצלנו.
  • "זמן אפס", הוא הזמן שלפיו נקבעת השעה, ונמצא במצפה הכוכבים של גריניץ', לונדון, בריטניה. במידה והיית בנקודה הזו בעבר, קיים שם פארק שעובר בו קו, שמרכזו בתוך מבנה המצפה.
  • שעון גריניץ' נקרא Greenwich Mean Time, או GMT בקיצור. לאחרונה התחילו לקרוא לו UTC, במקום GMT, ר"ת של Universal Time Coordination, אבל המשמעות זהה.
  • שעון גריניץ' לא נקבע לפי לונדון, וייתכן מצב בו השעה בלונדון שונה מאשר זו של גריניץ' בהתחשב בשינויי העונות.
  • אנחנו בישראל נמצאים במרחק של שעתיים מגריניץ', או בשפה המקצועית במיקום GMT+2.
  • בקיץ אנחנו מוסיפים שעה, ונמצאים במרחק של שלוש שעות מגריניץ'. מאחר ואנו לא באמת זזים, אז אזור הזמן שלנו נשאר במרחק של שעתיים מגריניץ', ואנחנו מוסיפים שעה בתירוץ של שעון קיץ. השעה הזו נקראת Daylight Saving Time, או DST בקיצור.
  • ישראל היא אחת המדינות היצירתיות ביותר בקביעת מועדי המעבר. בעוד שברוב העולם מדובר בתאריכים קבועים וידועים, בארץ זה נקבע על פי חוק, על־ידי המפלגה השולטת ובני בריתה ש"ס.  (ש"ס תמיד בצד המנצח)
  • בעקבות הבעיתיות של ישראל, במחשבים תמיד הייתה בעיה על נושא השעון. בעוד שברוב העולם מדובר בתהליך שמתבצע בצורה אוטומטית ללא התערבות המשתמש, אצלנו זה קצת יותר מסובך.
  • בווינדוס 95 המחשב היה עובר אוטומטית לשעון קיץ. הבעיה הייתה שזה היה קורה לפי התאריכים הלועזים, והיה עושה הרבה צרות למשתמשים. בווינדוס 98 מייקרוסופט הבינו שאין בריירה וביטלו את האפשרות. מאז האפשרות קיימת וניתנת לביצוע בצורה ידנית, או בצורה אוטומטית בגירסאות האחרונות של ווינדוס.
  • בשנים האחרונות מייקרוסופט התחילו להכניס את העדכונים הרצויים לתוך מנגנון העדכונים של מערכת ההפעלה. בהנחה ולא יקרה שום דבר, המחשב שלך יעבור לבד כמו שצריך. 

כיצד מתבצע העדכון בווינדוס? 

בווינדוס XP/2003/Vista, צריך שיהיה עידכון KB931836  על המחשב. ניתן לבדוק אם הוא קיים במסך ההוספה/הסרה. במידה והוא חסר, ניתן להתקין אותו מכאן.

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

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

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

בלינוקס? 

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

התשובה הארוכה – אילן שביט כתב את זה לפני.

שתהיה לכולכם שינה טובה. הרווחתם שעה. 🙂

למה מחשב על?

אדר שלו תוהה בנענע –

אפל השיקה השבוע מחשב עם מעבד אינטל Xeon עם 8 (!!) ליבות וזיכרון שניתן להרחיב עד 16 ג'יגה-בייט. המחיר – פחות מ-4,000 דולר. עכשיו רק נותרה השאלה – מה עושים עם כל כך הרבה משאבי מערכת?

להתקין עליו ויסטה. די מתבקש, לא?