Chapter 15: מתודולוגיות אבחון (Advanced Troubleshooting) - Facilitator Guide¶
זהו מדריך המנחה (Facilitator Guide) עבור פרק 15. מסמך זה משמש כתוכנית שיעור ותסריט למדריך, ומותאם אישית להעברה פרונטלית או מקוונת של החומר.
1. עיקרון הבידוד (Isolation)¶
-
Objective: ללמד את הלומדים כיצד לגשת לפתרון תקלות מורכבות בצורה לוגית על ידי "חיתוך" הבעיה לחצי, והפרדה בין בעיות משתמש לבעיות מערכת בעזרת System Settings.
-
Discussion - Script: "היום אנחנו מדברים על איך אנחנו ניגשים לפתרון בעיות במק. כלל הזהב בתמיכה טכנית, ובמיוחד ב-macOS, הוא שאנחנו לא מנחשים – אנחנו מבודדים. הכלל הראשון הוא תמיד Isolation (בידוד). כשאנחנו ניגשים לבעיה, אנחנו רוצים לחתוך אותה לחצי. אנחנו שואלים את עצמנו: האם הבעיה קורית רק למשתמש הספציפי הזה, או לכל המשתמשים במחשב? האם זו תקלת תוכנה או שאולי זה בכלל תקלת חומרה? ברגע שאנחנו מפרידים את הבעיה וחותכים את מרחב האפשרויות, אנחנו חוסכים לעצמנו שעות של חיפושים באפלה. הדרך המהירה והפשוטה ביותר להוכיח אם בעיה היא ברמת ה-OS או ברמת חשבון המשתמש (User-Specific) היא פשוט ליצור משתמש בדיקה חדש דרך System Settings. אם שם הבעיה לא מתרחשת, הוכחנו ב-100% שהתקלה יושבת בתוך ה-Home Folder של המשתמש המקורי, כנראה באיזה קובץ הגדרות ספציפי."
-
Demonstration:
- פתיחת System Settings וניווט ל-Users & Groups.
- יצירת משתמש בדיקה (Test User) חדש עם הרשאות Standard.
- הדגמה של התנתקות מוקדמת (Log Out) או שימוש ב-Fast User Switching כדי להיכנס לחשבון החדש.
-
הסבר תוך כדי תנועה: "כאן, במשתמש החדש שיצרנו, אנחנו בודקים האם הבעיה חוזרת. אם הכל עובד כאן, אנחנו לא צריכים להתקין מחדש את ה-macOS."
-
Instructor Deep-Dive:
הרחבה טכנית למדריך: שיטות Isolation עמוקות
* כשאנחנו מבודדים בעיה ומגלים שהיא User-Specific (קורית רק בחשבון אחד), זה אומר שהמידע הפגום נמצא תחת `~/Library` של אותו משתמש. לרוב נחפש בתוך תיקיות ה-`Preferences`, ה-`Caches` או תהליכי רקע תחת `LaunchAgents`. * אם הבעיה היא System-Wide (משתחזרת בכל משתמש שנפתח), מוקד החקירה עובר לרמת המערכת. נבדוק ב-`/Library` (עבור תוכנות ודרייברים של צד-שלישי) או ב-`/System/Library` (למרות שהאחרון מוגן לחלוטין על ידי ה-SSV). * לניהול חשבונות מעמיק דרך הטרמינל (למרות שאינו נדרש לרוב), ניתן להשתמש בפקודת `dscl` כדי לאמת הגדרות משתמש בספרייה המקומית. * במקרי קצה, אם הבעיה קורית בכל המשתמשים, נשתמש גם באבחון חומרה באמצעות Apple Diagnostics (לחיצה ארוכה על לחצן ההפעלה באתחול ו-Command+D) כדי לבודד תוכנה מול חומרה.
2. כוחו של ה-Safe Mode¶
-
Objective: הבנת מנגנון ה-Safe Mode ככלי דיאגנוסטי ואוטומטי לניקוי קבצי מטמון ותיקון תקלות מערכת שקופות.
-
Discussion - Script: "אחד הכלים הכי חזקים שיש לנו בארגז הכלים לאבחון בעיות במק הוא ה-Safe Mode. מי שמגיע מעולמות ה-Windows, תשכחו ממה שאתם מכירים. ב-macOS, כשאנחנו מעלים מחשב ב-Safe Mode, זה לא רק אומר להעלות אותו 'נקי' בלי שירותים. המערכת למעשה מבצעת עבודת תחזוקה אקטיבית. קודם כל, היא בודקת ומתקנת את מערכת הקבצים שעל הדיסק. דבר שני, היא מוחקת המון קבצי מטמון – Caches של פונטים, Caches של הקרנל. ודבר שלישי, היא לא מעלה אף אחד מה-LaunchDaemons, ה-LaunchAgents או ה-Extensions שהמשתמש או ה-IT התקינו. הכל נשאר בחוץ. רק מה שאפל צריכה כדי להעלות את המערכת עולה. אם משתמש מתלונן על בעיה מוזרה, ואנחנו מעלים את המחשב ל-Safe Mode והבעיה נעלמת – הוכחנו מעל לכל ספק שמדובר בתוכנת צד-שלישי שגורמת להתנגשות, ולא במערכת ההפעלה עצמה. והכי יפה? לפעמים עצם הכניסה ל-Safe Mode ואז ביצוע ריסטרט רגיל מיד אחריו, פותרים תקלות רק בזכות כך שהקאשים העמוקים התנקו והדיסק תוקן."
-
Demonstration:
- בשל המגבלות של שידור, מומלץ להציג צילומי מסך או וידאו של התהליך:
- הסבר כיצד נכנסים ל-Safe Mode במחשבי Apple Silicon: לחיצה ארוכה על כפתור ההפעלה מול מחשב כבוי, עד להופעת מסך ה-Startup Options.
- בחירת כונן המערכת (Macintosh HD).
- לחיצה ממושכת על מקש ה-Shift במקלדת עד שהכפתור הרגיל משתנה ל-"Continue in Safe Mode", ולחיצה עליו.
-
הראות ללומדים שכאשר המחשב עולה לתוך ה-Safe Mode, מופיע כיתוב באדום "Safe Boot" בפינת המסך הימנית העליונה של ה-Menu Bar, וכן ייתכן שהמערכת תרגיש קצת 'איטית' מבחינה גרפית מכיוון שההאצה הגרפית (Hardware Acceleration) כבויה.
-
Instructor Deep-Dive:
הרחבה טכנית למדריך: מה בדיוק מתרחש בקרביים של Safe Mode
* מניעת טעינה של Kernel Extensions (Kexts) של צד שלישי שאינם של אפל. * ביטול טעינה של פונטים שהותקנו על ידי משתמשים (נמצאים ב-`/Library/Fonts` או `~/Library/Fonts`). * מניעת עלייה של כל תהליכי הרקע הלא רשמיים, מה שמנטרל זמנית תוכנות הגנה, אנטי-וירוסים ו-Agents של MDM. * הפעלת `fsck_apfs` ברקע לבדיקה כפויה של מבנה ה-Data Volume ותיקון שגיאות מערכת קבצים. * מחיקה עמוקה של ה-Dynamic Loader Caches (`dyld`), Kernel Caches, ו-System Caches אחרים. זה קריטי במיוחד במקרים שבהם עדכון מערכת הותיר שאריות הגדרות לא תקינות.
3. חקירת המערכת באמצעות System Information (GUI)¶
-
Objective: היכרות עם הכלי הגרפי System Information כאמצעי העיקרי לקריאת נתוני חומרה, תוכנה ורשת, ולשמירת דו"חות.
-
Discussion - Script: "כאשר אנחנו חוקרים תקלה, הרבה פעמים נצטרך לדעת במדויק אילו רכיבי חומרה מותקנים, איזו גרסת מערכת רצה, מה ה-Uptime של המחשב (כמה זמן הוא פועל ללא הפסקה), או אילו התקני USB מחוברים. למזלנו, macOS מספקת לנו את System Information - כלי גרפי מרוכז ועשיר שמציג לנו את כל המידע הזה במקום אחד. לא רק שאנחנו יכולים לקרוא את המידע בקלות, אלא אנחנו יכולים גם לשמור (Save) את כל הנתונים לקובץ אחד, שאותו אפשר להעביר לצוות Tier 2 או למהנדסים של אפל לצורך המשך חקירה. זו הדרך האלגנטית והמהירה לאסוף דיאגנוסטיקה בלי להסתבך עם פקודות."
-
Demonstration:
- לחיצה על מקש
Option(⌥) במקלדת ולחיצה על תפריט ה-Apple (), שם תשתנה האפשרותAbout This Macל-System Information.... לחיצה על אפשרות זו. - הדגמת סקירת חומרה: ניווט לקטגוריית
Hardwareוסקירת התוצאות יחד עם הכיתה (למשל מספר סידורי ודגם). - הדגמת בדיקת מערכת הפעלה וזמן פעילות: ניווט ל-
Softwareלמציאת גרסת ה-macOS וה-Time since boot (Uptime) של המחשב. -
הדגמת יצוא דו"ח: בתפריט העליון בחירה ב-File ואז Save. שמירת הקובץ (בפורמט .spx) על שולחן העבודה, והדגמה כיצד ניתן לפתוח אותו שוב מאוחר יותר או במחשב אחר.
-
Instructor Deep-Dive:
הרחבה טכנית למדריך: שימוש ב-CLI ופקודת system_profiler
* למרות שהממשק הגרפי מעולה, בסביבות אוטומטיות או דרך MDM ניתן להשתמש בפקודת `system_profiler` בטרמינל. * כדי לראות את כל "משפחות" המידע הזמינות (Data Types), נריץ: `system_profiler -listDataTypes`. * ניתן להפיק את הפלט במבנה XML או JSON – זה פנטסטי למשיכת מידע למערכות Inventory בצורה אוטומטית. למשל: `system_profiler -json SPHardwareDataType`. * חשוב להדגיש: לעולם אל תריצו `system_profiler` ללא אף ארגומנט ממוקד! המערכת תנסה למשוך את הדו"ח המלא (הכולל סריקה של כל הקבצים וכל האפליקציות), מה שיגרום לטרמינל להיתקע לדקות ארוכות בזמן שהוא מפיק קובץ טקסט עצום.
4. תיבול ארגוני: איך תמיכת IT מבודדת בעיה כשיש המון פרופילי MDM ברקע¶
-
Objective: יישום עקרון ה-Isolation בסביבה מנוהלת ומורכבת דרך ה-System Settings, כדי להבין האם התקלה נובעת מ-macOS או מתצורות ופרופילי אבטחה של ה-MDM הארגוני.
-
Discussion - Script: "כשאנחנו מנהלים מקים בארגון, מתווספת לנו שכבה עצומה של מורכבות: שרת ה-MDM וכל פרופילי התצורה (Configuration Profiles) שהוא דוחף למחשב. לקוח קורא לנו ואומר 'אני לא מצליח לגשת לאתר מסוים' או 'ה-USB שלי נחסם' או 'המדפסת לא מגיבה'. איך אנחנו יודעים אם זה באג של ה-OS, או אולי פרופיל הגדרות אבטחה שדחפנו לו שנועל אותו? אנחנו יכולים לבדוק זאת על ידי כניסה ל-System Settings ותחת Privacy & Security לגלול ל-Profiles. שם נראה את כל הפרופילים שנדחפו למכשיר. לפעמים נוכל להסיר אותם משם כדי לבדוק (אם ה-MDM מאפשר זאת), או שנצטרך להוציא את המכשיר מקבוצת הניהול בשרת כדי לבודד את הבעיה."
-
Demonstration:
- פתיחת System Settings וניווט ל-Privacy & Security ואז Profiles.
- הראות של רשימת הפרופילים (אם ישנם). לחיצה כפולה על פרופיל כדי להציג את התוכן שלו ולהסביר אילו הגדרות הוא אוכף (Payloads).
-
הסבר כיצד לנסות להסיר פרופיל (סימן המינוס). ציינו שלרוב, מטעמי אבטחה, הם יוגדרו כ-"Non-Removable" על ידי ה-MDM ולכן אי אפשר להסירם משם בקלות ויש לבצע זאת דרך השרת.
-
Instructor Deep-Dive:
הרחבה טכנית למדריך: טקטיקות בידוד בעולם ה-MDM וניהול מתקדם
* מניעת הסרה: בסביבות עבודה מנוהלות, פקודת ההרשמה (ADE) כוללת לרוב את הדגל המונע מהמשתמש (ואפילו ממשתמש ה-Admin המקומי) להסיר פרופילים באופן ידני. * אנשי IT יכולים להשתמש בטרמינל כדי לאלץ סנכרון פרופילים, למשל: `sudo profiles renew -type enrollment`. * ניתן לראות את כל הפרופילים בטרמינל עם הפקודה `profiles list`. * שיטות עבודה לבדיקה מהירה של מנהל ה-IT (מעקפים): 1. **החרגה מצד השרת:** הוספת המק הספציפי ל-Exclusion Group בתוך שרת ה-MDM כדי "להוריד" ממנו זמנית פרופיל חשוד (למשל, פרופיל VPN או חסימת USB), ולאחר מכן סנכרון המכשיר. 2. **קונפליקט EDR:** לעיתים קרובות תקלות חיבור/האטה נובעות מתוכנת הגנה/אנטיוירוס (EDR) שה-MDM התקין. אם ניתן, הסרת האנטיוירוס זמנית מהווה את מבחן ה-Isolation הטוב ביותר.