注æ
ãã®ãã¼ã¸ã«ã¢ã¯ã»ã¹ããã«ã¯ãæ¿èªãå¿ è¦ã§ãã ãµã¤ã³ã¤ã³ã¾ãã¯ãã£ã¬ã¯ããªã®å¤æ´ã試ããã¨ãã§ãã¾ãã
ãã®ãã¼ã¸ã«ã¢ã¯ã»ã¹ããã«ã¯ãæ¿èªãå¿ è¦ã§ãã ãã£ã¬ã¯ããªã®å¤æ´ã試ããã¨ãã§ãã¾ãã
Windows Subsystem for Linux (WSL) 㯠Windows ã®æ©è½ã§ãããå¥ã®ä»®æ³ãã·ã³ããã¥ã¢ã« ãã¼ããå¿ è¦ã¨ããã«ãWindows ãã·ã³ã§ Linux ç°å¢ãå®è¡ã§ãã¾ãã WSL ã¯ãWindows 㨠Linux ã®ä¸¡æ¹ãåæã«ä½¿ç¨ããéçºè ã«ã·ã¼ã ã¬ã¹ã§çç£æ§ã®é«ãã¨ã¯ã¹ããªã¨ã³ã¹ãæä¾ããããã«è¨è¨ããã¦ãã¾ãã
- WSL ã使ç¨ãã¦ãUbuntuãDebianãKali ãªã©ã®ãã¾ãã¾ãª Linux ãã£ã¹ããªãã¥ã¼ã·ã§ã³ãã¤ã³ã¹ãã¼ã«ãã¦å®è¡ãã¾ãã Linux ãã£ã¹ããªãã¥ã¼ã·ã§ã³ ã¤ã³ã¹ãã¼ã«ããMicrosoft Storeããèªåæ´æ°ãåãåã£ãããMicrosoft Store ã§ä½¿ç¨ã§ããªã Linux ãã£ã¹ããªãã¥ã¼ã·ã§ã³ãã¤ã³ãã¼ããç¬èªã®ã«ã¹ã¿ã Linux ãã£ã¹ããªãã¥ã¼ã·ã§ã³ ãæ§ç¯ã
- ã¤ã³ã¹ãã¼ã«ããã¦ãããã£ã¹ããªãã¥ã¼ã·ã§ã³ã«åºæã®åé¢ããã Linux ãã¡ã¤ã« ã·ã¹ãã ã«ãã¡ã¤ã«ãæ ¼ç´ãã¾ãã
- BASH ãªã©ã®ã³ãã³ã ã©ã¤ã³ ãã¼ã«ãå®è¡ãã¾ãã
grep
ãsed
ãawk
ããã®ä»ã® ELF-64 ãã¤ããªãªã©ã®ä¸è¬ç㪠BASH ã³ãã³ã ã©ã¤ã³ ãã¼ã«ãå®è¡ãã¾ãã- Bash ã¹ã¯ãªãã㨠GNU/Linux ã³ãã³ã ã©ã¤ã³ ã¢ããªã±ã¼ã·ã§ã³ã次ã®ããã«å®è¡ãã¾ãã
- ãã¼ã«: vimãemacsãtmux
- è¨èª: NodeJSãJavaScriptãPythonãRubyãC/C++ãC# & F#ãRustãGo ãªã©ã
- ãµã¼ãã¹: SSHDãMySQLãApacheãlighttpdãMongoDBãPostgreSQLã
- ç¬èªã® GNU/Linux ãã£ã¹ããªãã¥ã¼ã·ã§ã³ ããã±ã¼ã¸ ããã¼ã¸ã£ã¼ã使ç¨ãã¦ã追å ã®ã½ããã¦ã§ã¢ãã¤ã³ã¹ãã¼ã«ãã¾ãã
- Unix ã«ä¼¼ãã³ãã³ã ã©ã¤ã³ ã·ã§ã«ã使ç¨ã㦠Windows ã¢ããªã±ã¼ã·ã§ã³ãå¼ã³åºãã¾ãã
- Windows ã§ GNU/Linux ã¢ããªã±ã¼ã·ã§ã³ãå¼ã³åºãã¾ãã
- GNU/Linux ã°ã©ãã£ã«ã« ã¢ããªã±ã¼ã·ã§ã³ãå®è¡ãWindows ãã¹ã¯ãããã«ç´æ¥çµ±åããã¾ã
- ããã¤ã¹ GPU ã使ç¨ãã¦ãLinux ã§å®è¡ããã¦ãã Machine Learning ã¯ã¼ã¯ãã¼ããé«éåãã¾ãã
WSL ã¯ãã½ã¼ã¹ ã³ã¼ãããã¦ã³ãã¼ããã¦æç¨¿ã§ãããªã¼ãã³ ã½ã¼ã¹ ãã¼ã«ã§ãã
- WSL ãªã¼ãã³ ã½ã¼ã¹ ã³ã³ãã¼ãã³ãã®è©³ç´°
- WSL ãªã¼ãã³ ã½ã¼ã¹ ããã¥ã¡ã³ã ãµã¤ã: wsl.dev
- GitHub ã® WSL ãªãã¸ããª: github.com/Microsoft/wsl
WSL ã®ä½¿ç¨ãéå§ãã:
WSL 2 ã¨ã¯
WSL 2 ã¯ãLinux ãã£ã¹ããªãã¥ã¼ã·ã§ã³ãã¤ã³ã¹ãã¼ã«ããã¨ãã®æ¢å®ã®ãã£ã¹ããªãã¥ã¼ã·ã§ã³ã®ç¨®é¡ã§ãã WSL 2 ã§ã¯ãä»®æ³åãã¯ããã¸ã使ç¨ãã¦ã軽éã¦ã¼ãã£ãªãã£ä»®æ³ãã·ã³ (VM) å
ã§ Linux ã«ã¼ãã«ãå®è¡ãã¾ãã Linux ãã£ã¹ããªãã¥ã¼ã·ã§ã³ã¯ãWSL 2 ããã¼ã¸ã VM å
ã®åé¢ã³ã³ããã¼ã¨ãã¦å®è¡ããã¾ãã WSL 2 ãä»ãã¦å®è¡ããã Linux ãã£ã¹ããªãã¥ã¼ã·ã§ã³ã¯ãåããããã¯ã¼ã¯åå空éãããã¤ã¹ ããªã¼ (/dev/pts
以å¤)ãCPU/ã«ã¼ãã«/ã¡ã¢ãª/ã¹ã¯ããã/init
ãã¤ããªãå
±æãã¾ãããç¬èªã® PID åå空éããã¦ã³ãåå空éãã¦ã¼ã¶ã¼åå空éãCgroup åå空éãããã³ init
ããã»ã¹ãããã¾ãã
WSL 2 ã§ã¯ãWSL 1 ã¢ã¼ããã¯ãã£ã¨æ¯è¼ãã¦ããã¡ã¤ã« ã·ã¹ãã ã®ããã©ã¼ãã³ã¹ ãåä¸ããã·ã¹ãã å¼ã³åºãã®å®å ¨ãªäºææ§ 追å ããã¾ãã WSL 1 㨠WSL 2 ã®æ¯è¼ ã«ã¤ãã¦è©³ãã説æãã¾ãã
åã ã® Linux ãã£ã¹ããªãã¥ã¼ã·ã§ã³ã¯ãWSL 1 ã¾ã㯠WSL 2 ã¢ã¼ããã¯ãã£ã§å®è¡ã§ãã¾ãã åãã£ã¹ããªãã¥ã¼ã·ã§ã³ã¯ãã¤ã§ãã¢ããã°ã¬ã¼ãã¾ãã¯ãã¦ã³ã°ã¬ã¼ãã§ããWSL 1 ãã£ã¹ããªãã¥ã¼ã·ã§ã³ã¨ WSL 2 ãã£ã¹ããªãã¥ã¼ã·ã§ã³ã並è¡ãã¦å®è¡ã§ãã¾ãã WSL ãã¼ã¸ã§ã³ã® è¨å®ã³ãã³ããåç §ãã¦ãã ããã
Microsoft 㯠Linux ãæãã¦ãã¾ã
Linux ã§å®è¡ããã Microsoft ãã¼ã«ãLinux ãã¬ã¼ãã³ã° ã³ã¼ã¹ãLinux åãã¯ã©ã¦ã ã½ãªã¥ã¼ã·ã§ã³ ã¢ã¼ããã¯ãã£ãMicrosoft + Linux ãã¥ã¼ã¹ãã¤ãã³ãããã¼ããã¼ã·ãããªã©ãMicrosoft ã§ã® Linux ãªã½ã¼ã¹ã®ã«ã¤ãã¦èª¬æãã¾ãã Microsoft 㯠Linux ãæãã¦ãã¾ãã
Windows Subsystem for Linux