התקן את מערכת המשנה של Windows עבור Linux

Install Windows Subsystem



מערכת המשנה של Windows עבור לינוקס היא כלי שירות שפותח על ידי מיקרוסופט כדי לאפשר למפתחים ולחובבי לינוקס להריץ את סביבת הלינוקס האהובה עליהם באופן מקורי ב- Windows 10 ללא תקורה של הפעלת מכונה וירטואלית. אופן פעולתו דומה לדרך יַיִן עובד על לינוקס. WSL מאפשר להפעלת קבצים בינאריים של Linux באמצעות Windows באמצעות שכבת תאימות המתרגמת את שיחות מערכת לינוקס לשיחות מערכת של Windows.

ארכיטקטורה

ניתן לטעון ש- WSL פועל טוב יותר ב- Windows, מאשר WINE ב- Linux והסיבה שמאחוריו היא מכיוון ש- Linux מיוחדת מבחינת הארכיטקטורה שלה. בעוד שרוב מערכות ההפעלה מורכבות מליבה וחבילה שלמה של ספריות ותכונות הבנויות סביב הקרנל הזה, לינוקס היא רק קרנל. רוב הפצות ה- GNU/Linux לוקחות את הקרנל הזה ובונות מעליו ערימת מערכת הפעלה. בהתאם לאופן שבו בחרת לבנות מחסנית זו אתה מקבל הפצות שונות כמו Debian, RedHat וכו '.







כדי להריץ את סביבת לינוקס ב- Windows יהיה עליך להפעיל את תכונת WSL (נסקור זאת בקרוב) ולאחר מכן ללכת לחנות Microsoft כדי לקבל עותק של ההפצה המועדפת עליך (אובונטו, דביאן, OpenSUSE וכו ').



השלב הראשון מאפשר את שכבת התרגום של syscall והשלב השני מביא ערימה קלה של תוכנות כדי לתת לך מערכת הפעלה מלאה של לינוקס להפעלה על גבי תכונת WSL. לעשות את ההפך, זאת אומרת הפעלת יישומי Windows בלינוקס היא הרבה יותר קשה כי Windows הוא הרבה יותר מסתם גרעין NT.



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





התקנה והתקנה

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



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

אתה יכול לחפש בחנות את ההפצה האהובה עליך. להלן צילום מסך של כמה מההפצות הנפוצות ביותר. אתה יכול לראות שתי גרסאות של OpenSUSE, אפליקציית Debian ו- Kali Linux.

כמובן שההפצה הפופולרית ביותר היא עדיין אובונטו עם 16.04 ו- 18.04 LTS זמינים בחנות.

התקן את מערכת המשנה של Windows עבור Linux

עכשיו אתה רק צריך לבחור את ההפצה שאתה רוצה ולהתקין את האפליקציה המתאימה. אנו נתקין את אובונטו 18.04 LTS עבור סביבת ה- WSL שלנו. גודלו כ- 215 MB, קטן בהרבה מהתקנה שלמה של אובונטו.

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

זה עשוי לקחת עד 5 דקות, אך לאחר שתעשה זאת תתבקש להזין את שם המשתמש והסיסמה החדשים שלך ב- UNIX ואתה מוזמן ללכת!

הטרמינל שהושק יציע לך כמעט את כל הפונקציות של מערכת אובונטו, למעט ה- GUI. מכיוון שרוב יכולות UNIX/Linux מגיעות לכוחו של הטרמינל, זה יכול להביא לך דרך ארוכה.

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

$סודועדכון מתאים&& סודושדרוג מתאים

דברים שאתה יכול ולא יכול לעשות בסביבת WSL

עכשיו, השאלה שעולה בראש של כולם היא - מה התפיסה?

הבה נבחן את המקרה ההפוך. עם טכנולוגיות כמו WINE אנו יודעים שלא כל מה שאפשר לעשות ב- Windows אפשר לעשות בלינוקס. ספריות מערכת ברמה נמוכה כמו DirectX לא יהיו זמינות ב- Linux והרבה יישומים ב- Windows מסתמכים על ספריות כאלה.

מערכות הפעלה כמו Windows 10, FreeBSD או Illumos הן מערכות הפעלה מן המניין, לא רק הגרעין. עם Windows מכיוון שרוב הספריות הן קנייניות וזה מקשה על העניין. זה הופך את העבודה של פרויקט כמו WINE לקשה הרבה יותר.

בניסיון לחקות את לינוקס ב- Windows, ההיפך הוא הנכון. הסט הדוק של שיחות ABI (או syscalls) של לינוקס הוא כל מה שאתה צריך כדי לתרגם ל- Windows כדי להריץ הכל על גביו. אם ננסה לשאול את אובונטו ב- WSL איזה ליבה היא מפעילה, היא תעניק לך מספר גרסת ליבה של לינוקס, כאשר מיקרוסופט מוזכרת לצד מספר הגירסה כדי לציין שזה לא הענף הראשי של פרויקט הליבה של לינוקס.

$ללא שם

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

לדוגמה, הפקודות הבאות יעבדו כצפוי:

$df

$ifconfig

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

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

אותו הדבר נכון אם אתה מנסה להריץ docker. בעת התקנת Docker, אובונטו לא תתלונן, עם זאת, שירות Docker לא היה מתחיל, מכיוון שהוא תלוי ב- Systemd שנעדר בתת מערכת זו.

עם זאת, אתה יכול להפעיל שפע של שירותים ושירותים בסיסיים כדי להקל על חייך. אם אתה מנהל שרתי לינוקס למחייתך, אינך צריך שיהיה לינוקס גם על שולחן העבודה שלך. אתה יכול להריץ לקוחות SSH, לקוח Docker, bash, כלי עזר כמו grep ו- awk, כמו גם את שפת התכנות האהובה עליך מפייתון ועד חלודה בסביבה זו מבלי לזהם את מערכת Windows שלך.

אתה יכול גם להפעיל את אוטומציה CD/CI שלך באמצעות Ansible, Puppet או כל טכנולוגיה אחרת שאתה מעדיף. כלומר, ניתן להשיג כל דבר ש- DevOp, מפתח אינטרנט או יישומים או בודק ידרוש ממערכת לינוקס באמצעות WSL למעט האנשים שעובדים עם תוכנת מערכת ו/או פיתוח גרעינים.

סיכום

יש לך מחשבות או ניסיון משלך עם מערכת המשנה של Windows ב- Linux? או שאולי עדיין יש לך שאלות שאתה צריך תשובות עליהן. צור איתנו קשר עם השאלות שלך ואנו נכסה את הנושא עבורך.