שיעור 05: אפליקציות ותהליכים¶
חלק ב': מדריך העברה למרצה (vEXP)
זהו עזר ההדרכה עבור המדריך. המסמך מכיל את מטרות הלמידה, תסריט ההדרכה (Script), הוראות להדגמות החיות (Demonstration), ומידע טכני מורחב למענה על שאלות מורכבות (Instructor Deep-Dive).
הערה למדריך: יש לשמור על סנכרון מלא עם ה-Instructor Reference (Asset A). מסמך זה משמש כ'תסריט' שלך מול הכיתה.
1. סוגי התקנות: חבילות (PKG), תמונות דיסק (DMG) ו-App Store¶
מטרת השיעור (Objective): התלמידים יכירו את שלושת ערוצי ההתקנה המרכזיים ב-macOS, ויבינו מתי משתמשים בתמונת דיסק (DMG) לעומת מתקין מערכתי (PKG) ואת ההבדל בהרשאות הנדרשות. הם יכירו גם את השינויים החדשים ב-Gatekeeper ב-macOS Tahoe.
תסריט שיחה (Discussion - Script):
- "בואו נדבר על התקנת אפליקציות ב-Mac."
- "בווינדוס, הכל מגיע בקובץ EXE או MSI."
- "ב-macOS, יש לנו שלוש דרכים שונות:"
- הדרך הראשונה והפשוטה ביותר היא ה-App Store.
- "בדיוק כמו באייפון – מחפשים, לוחצים 'הורד' וסיימנו. הכל נבדק ומאובטח על ידי אפל."
- הדרך השנייה היא קובץ DMG (Disk Image).
- "נשתמש בזה לרוב לתוכנות מהאינטרנט (דפדפן, נגן מדיה)."
- "עובדה היסטורית (DeepDive): קבצי תמונות דיסק אלו פותחו במקור כדי לייצג תקליטונים (Floppy Disks) לצורכי ייצור ושכפול במפעלים!"
- "זה בעצם Volume (ווליום) וירטואלי. לחיצה כפולה עוגנת (Mount) אותו, כאילו הכנסנו כונן אמיתי."
- "כדי להתקין, פשוט גוררים את האייקון לתיקיית Applications."
- "בסוף התהליך: חובה ללחוץ הוצא (Eject) על ה-Volume הווירטואלי."
- הדרך השלישית היא חבילות התקנה (PKG).
- "דומות למתקינים המוכרים מווינדוס."
- "משמשות כשתוכנה צריכה לשים קבצים במקומות נסתרים, כגון תהליכי רקע."
- "מכיוון שזה משנה את ליבת המערכת – כמעט תמיד תידרש סיסמת מנהל (Admin)."
- "רגע, מה לגבי אבטחה?"
- "אפל אוכפת את ה-Gatekeeper ונוטריזציה (Notarization). אם אפליקציה זדונית או שונתה אפילו בתו אחד, היא לא תיפתח."
- "עדכון קריטי ב-Tahoe: בגרסאות קודמות, יכולתם לעקוף את Gatekeeper באמצעות קליק ימני ובחירה ב-'Open'. ב-macOS Sequoia ו-Tahoe, האפשרות הזו הוסרה לחלוטין. חובה לגשת אל System Settings > Privacy & Security וללחוץ על 'Open Anyway'."
הדגמה מעשית (Demonstration):
- הדגמת DMG:
- הורד קובץ
.dmgמהאינטרנט. - לחץ לחיצה כפולה. הראה את ה-Volume החדש בסרגל הצד ב-Finder תחת Locations.
- גרור את האפליקציה ל-Applications (הצג את חלון ההעתקה).
- הוצא (Eject) דרך קליק ימני > Eject.
- הפעל את האפליקציה. הצג את אזהרת ה-Gatekeeper והסבר שזו הגנה שגרתית.
- אתגר Tahoe: נסה להפעיל אפליקציה שאינה חתומה, הראה שקליק ימני > Open לא עובד יותר, ונווט ל-System Settings > Privacy & Security כדי להדגים לחיצה על "Open Anyway".
- הדגמת PKG:
- הפעל קובץ
.pkg. הראה את מתקין המערכת ואת שלביו. - הדגם כיצד הוא עוצר ומבקש סיסמת Admin.
Instructor Deep-Dive (מידע טכני מורחב)
- Code Signing & CDHash: מנגנון ה-Gatekeeper מסתמך על ה-Code Directory Hash (CDHash) באלגוריתם SHA-256. המערכת מבצעת בדיקה בזמן אמת (Lazy checking) ומוודאת כל דף זיכרון בעת טעינתו ל-RAM.
- App Translocation: אם משתמשים מפעילים אפליקציה ישירות מ-DMG או מההורדות מבלי להזיז אותה, macOS מבצעת רנדומיזציה לנתיב ב-
/private/var/folders/כדי למנוע טעינת ספריות זדוניות סמוכות. תמיד הנחו: גררו ל-Applications! - Rosetta 2 (OAH): זהו לא אמולטור, אלא מתרגם Ahead-Of-Time (AOT). התהליכים מבודדים לחלוטין (אין ערוב של קוד Intel ו-ARM באותו תהליך).
2. ארגזי חול (Sandboxing): איפה אפליקציות שומרות את המידע שלהן ואיך לאפס אותן¶
מטרת השיעור (Objective): התלמידים יבינו את מנגנון ה-App Sandboxing המונע מאפליקציות גישה בלתי מורשית, וילמדו לחקור דרך ה-Finder היכן נשמר המידע המקומי של האפליקציה כדי לאפס אותה בהצלחה ללא צורך בהסרה מוחלטת.
תסריט שיחה (Discussion - Script):
- "אפל לוקחת אבטחה ופרטיות מאוד ברצינות."
- "בעבר, אפליקציות יכלו להסתובב בחופשיות בכל המחשב."
- "היום, יש מנגנון בשם Sandbox (ארגז חול)."
- "אפליקציות מה-App Store, ורבות מהאינטרנט, חיות בסביבה סגורה ומבודדת."
- "אנלוגיה (DeepDive): תחשבו על ה-Container של האפליקציה כמו בובת מטריושקה. האפליקציה מקבלת תיקיית 'Home' קטנה משלה וחיה באשליה שהיא שולטת במערכת, כשבפועל היא כלואה."
- "הן לא יכולות לקרוא מסמכים בלי אישור מפורש (באמצעות ה-Powerbox)."
- "היכן נשמרות ההגדרות והמטמון (Cache)?"
- "במקום לפזר קבצים, ה-Mac יוצר 'תיקיית בית וירטואלית'."
- "היא נמצאת בנתיב נסתר בשם
Containersבתוך ספריית ה-Library של המשתמש." - "מה קורה כשאפליקציה נתקעת או משתבשת?"
- "בווינדוס – מסירים ומתקינים מחדש."
- "ב-Mac – האפליקציה היא לרוב רק אייקון ב-Applications, כך שמחיקתה לא מסירה הגדרות פגומות."
- "הפתרון הנכון: לגשת ל-Container דרך ה-Finder ולמחוק אותו."
- "בפתיחה הבאה: האפליקציה תחזור להגדרות יצרן (Factory Defaults)!"
הדגמה מעשית (Demonstration):
- חשיפת תיקיית Library:
- פתח את ה-Finder. לחץ על תפריט ה-
Go. החזק אתOptionכדי לחשוף את ה-Libraryולחץ עליה. - סקירת תיקיות:
- הראה תיקיות קלאסיות:
Preferences,Application Support. נווט אלContainers. - בחינת Containers:
- הראה שהתיקייה מלאה בארגזי חול (לרוב מתחילים ב-
com.appleאו שמות מפתחים). - היכנס לאחד מהם, והראה את מבנה התיקיות הפנימי (Desktop, Documents, Downloads). הסבר שאלו קיצורי דרך (Symlinks) שמיועדים להטעות את האפליקציה הכלואה.
- איפוס חי:
- פתח אפליקציה (כמו Keynote או Apple Configurator). שנה הגדרה.
- צא ממנה לחלוטין. מחק את ה-Container שלה.
- פתח מחדש והראה שהיא ריקה עם מסך 'ברוכים הבאים'.
Instructor Deep-Dive (מידע טכני מורחב)
- Powerbox: ממשק מערכת מאובטח לבחירת קבצים. כאשר משתמש בוחר קובץ, ה-Powerbox מחזיר אסימון מאובטח לאפליקציה ומעניק לה גישה חד-פעמית אליו.
- פליסטים זומביים (
cfprefsd): תהליך הרקע הזה שומר פליסטים ב-RAM לטובת ביצועים. אם טכנאי מוחק פליסט בעוד האפליקציה פועלת, התהליך ישחזר אותו מיד מהזיכרון. סדר נכון: לצאת מהאפליקציה, למחוק את ה-Container, ובמקרה הצורך להריץkillall cfprefsdלאיפוס המטמון. - TCC מול Sandbox: ארגז החול מגביל גישה למערכת; TCC מנהל הרשאות פרטיות קריטיות (מצלמה, מיקרופון). גם אפליקציה שאינה ב-Sandbox חייבת לציית ל-TCC.
3. אבחון תקיעות: Force Quit וטיפול באפליקציות קורסות (Not Responding)¶
מטרת השיעור (Objective): המטרה היא לתת לתלמידים כלים מבוססי GUI לביצוע יציאה מאולצת (Force Quit) ופתרון תקיעות באפליקציות שמסרבות להגיב, תוך שימוש במנגנונים המובנים במערכת.
תסריט שיחה (Discussion - Script):
- "אפליקציה מפסיקה להגיב פתאום? סמן העכבר הופך ל'כדור ים צבעוני'."
- "לחיצה על X אדום או Command + Q לא תעזור."
- "המערכת מזהה שהאפליקציה בסטטוס 'Not Responding'."
- "כאנשי IT, אילו כלים גרפיים עומדים לרשותנו?"
- מנגנון ה-Force Quit (יציאה מאולצת):
- "זהו הכלי המהיר ביותר."
- "קיצור מקלדת: Command + Option + Escape."
- "מציג מיד אפליקציות תקועות (באדום) ומאפשר לחסל אותן."
- מנטר הפעילות (Activity Monitor):
- "המקבילה ל-Task Manager בווינדוס."
- "מאפשר לראות צריכת משאבים (CPU, Memory)."
- "מאפשר סגירה נקייה או אילוץ סגירה."
הדגמה מעשית (Demonstration):
- מנגנון Force Quit:
- פתח מספר אפליקציות. הקש
Command+Option+Escapeמול הכיתה. - הראה את החלון, בחר אפליקציה ולחץ על Force Quit כדי להראות סגירה מיידית.
- Force Quit דרך ה-Dock:
- קליק ימני על אייקון ב-Dock, החזק את
Option(⌥) והדגם איך "Quit" מתחלף ל-"Force Quit". - שימוש ב-Activity Monitor:
- פתח Activity Monitor.
- אתר אפליקציה, לחץ על
Xלמעלה. - הראה את הדיאלוג עם הברירה בין Quit (בטוח) ל-Force Quit (אילוץ).
Instructor Deep-Dive (מידע טכני מורחב)
- Preemptive Multitasking & WindowServer: ה-WindowServer מנהל את הממשק הגרפי. אם ה-Thread הראשי של אפליקציה נתקע למשך 2-4 שניות, ה-WindowServer מצייר אוטומטית את 'כדור הים'.
- הבדלים בסיגנלים:
- Quit: שולחת
SIGTERM(15). סגירה נקייה עם שמירת קבצים. - Force Quit: שולחת
SIGKILL(9). הקרנל רוצח את התהליך מיידית ללא שמירה. - תהליכים זומביים (בתוך הקרנל): אם ה-Thread נתקע במרחב הליבה (למשל בהמתנה לכונן חיצוני תקול), הליבה לא תאשר קבלת
SIGKILLכדי למנוע Kernel Panic. במצבים אלו האפליקציה לא תיסגר למרות ה-Force Quit עד לניתוק החומרה הפגומה או ביצוע Hard Reboot.
4. תיבול ארגוני: הפצת אפליקציות דרך VPP וקטלוג Self-Service¶
מטרת השיעור (Objective): להבין כיצד ארגונים מנהלים רכש והפצה של תוכנות באמצעות מנגנוני VPP מתוך Apple Business Manager, וכיצד משתמשים יכולים להתקין אפליקציות ללא הרשאות אדמין באמצעות שירות עצמי (Self Service).
תסריט שיחה (Discussion - Script):
- "בארגונים גדולים, לעובדים לרוב אין הרשאות מנהל (Admin)."
- "כאן נכנסים לתמונה הכלים הארגוניים – VPP ו-MDM."
- "איך זה עובד מאחורי הקלעים?"
- "ה-IT רוכש רישיונות (לחינם ובתשלום) דרך Apple Business Manager."
- "הרישיונות משודכים לשרת ה-MDM הארגוני."
- "ה-MDM מפיץ את האפליקציות שקטה (Silent Install) למחשבים."
- "המשתמשים לא צריכים להזין את ה-Apple ID האישי שלהם."
- "מהי חנות ה-Self Service?"
- "חנות אפליקציות פרטית של הארגון לתוכנות מאושרות."
- "משתמשים בוחרים ולוחצים 'התקן'."
- "אין צורך בסיסמת Admin: ה-MDM מתקין בשמם עם הרשאות מערכת ברקע."
הדגמה מעשית (Demonstration):
- אפליקציית Self Service:
- פתח את ה-Self Service בעמדת ההדגמה והראה את הקטלוג.
- התקנה מאובטחת:
- לחץ 'התקן' על אפליקציה נבחרת והראה התקנה ללא בקשת סיסמת Admin.
- נווט ל-Applications ב-Finder והראה את התוכנה החדשה.
Instructor Deep-Dive (מידע טכני מורחב)
- תוקף VPP Token: במרבית המקרים שבהם התקנה נתקעת בסטטוס "Pending", הדבר נובע מ-Token VPP שפג תוקפו ב-ABM, או מנהל מערכת ששינה את הסיסמה לפורטל.
- חסימת CDN בפיירוול: לעיתים סוכן ה-MDM מעביר את הפקודה בהצלחה, אך תהליך הרקע
appstoredנחסם על ידי הפיירוול הארגוני. הטריק הידוע: נתק את המק מה-Wi-Fi, חבר אותו ל-Hotspot מסלולרי. אם האפליקציה מחליקה פנימה, הבעיה היא בצוות אבטחת הרשת. - Managed App Configuration: מאפשר ל-MDM להזריק קובץ תצורה (XML/Plist) יחד עם האפליקציה לחוויית Zero-Touch מושלמת למשתמש.
סיום שיעור 5: ודא שיש לתלמידים שאלות לגבי מנגנון ארגזי החול והסרת האפליקציות, והסבר שבמעבדה המעשית (Asset D) הם יתנסו במו ידיהם בהתקנות מחבילות, יתמודדו מול ה-Gatekeeper הקשוח ב-Tahoe ויבצעו אילוץ סגירה ואבחון בעזרת הכלים הגרפיים.