WSL(Linux์šฉ Windows ํ•˜์œ„ ์‹œ์Šคํ…œ) ์ž‘์—…์„ ์œ„ํ•œ ๋ฉ‹์ง„ ์ƒํ™œ ๊ฟ€ํŒ

์ €๋Š” WSL(Linux์šฉ Windows ํ•˜์œ„ ์‹œ์Šคํ…œ)์— ๊นŠ์ด ๋น ์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. WSL2 ๊ฐ€๋Šฅ ์œˆ๋„์šฐ ๋‚ด๋ถ€์ž, ์ง€๊ธˆ์€ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์˜ต์…˜์„ ์‹ค์ œ๋กœ ์‚ดํŽด๋ณผ ์ˆ˜ ์žˆ๋Š” ์ข‹์€ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. WSL์—์„œ ๋ฐœ๊ฒฌํ•œ ๋งค์šฐ ํฅ๋ฏธ๋กœ์šด ๊ธฐ๋Šฅ์€ ์„ธ๊ณ„ ๊ฐ„์— ๋ฐ์ดํ„ฐ๋ฅผ "์ˆœ์ˆ˜ํ•˜๊ฒŒ" ์ด๋™ํ•˜๋Š” ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค. ์ด๋Š” ์™„์ „ํ•œ ๊ฐ€์ƒ ๋จธ์‹ ์œผ๋กœ๋Š” ์‰ฝ๊ฒŒ ์–ป์„ ์ˆ˜ ์žˆ๋Š” ๊ฒฝํ—˜์ด ์•„๋‹ˆ๋ฉฐ Linux์™€ Windows ๊ฐ„์˜ ๊ธด๋ฐ€ํ•œ ํ†ตํ•ฉ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

์•„๋ž˜๋Š” ๋•…์ฝฉ ๋ฒ„ํ„ฐ์™€ ์ดˆ์ฝœ๋ฆฟ์„ ์„ž์„ ๋•Œ ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฉ‹์ง„ ์ผ๋“ค์— ๋Œ€ํ•œ ์ž์„ธํ•œ ์ •๋ณด์ž…๋‹ˆ๋‹ค!

WSL(Linux์šฉ Windows ํ•˜์œ„ ์‹œ์Šคํ…œ) ์ž‘์—…์„ ์œ„ํ•œ ๋ฉ‹์ง„ ์ƒํ™œ ๊ฟ€ํŒ

Linux์—์„œ Windows ํƒ์ƒ‰๊ธฐ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ๋ฐฐํฌ ํŒŒ์ผ์— ์•ก์„ธ์Šคํ•˜์„ธ์š”.

WSL/bash ๋ช…๋ น์ค„์—์„œ ํŒŒ์ผ์— ์‹œ๊ฐ์ ์œผ๋กœ ์•ก์„ธ์Šคํ•˜๋ ค๋Š” ๊ฒฝ์šฐ ํ˜„์žฌ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์žˆ๋Š” "explorer.exe"๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ์„œ๋ฒ„๋ฅผ ํ†ตํ•ด ์ „๋‹ฌ๋œ Linux ํŒŒ์ผ์ด ํฌํ•จ๋œ Windows ํƒ์ƒ‰๊ธฐ ์ฐฝ์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๋กœ์ปฌ ๋„คํŠธ์›Œํฌ ๊ณ„ํš9.

WSL(Linux์šฉ Windows ํ•˜์œ„ ์‹œ์Šคํ…œ) ์ž‘์—…์„ ์œ„ํ•œ ๋ฉ‹์ง„ ์ƒํ™œ ๊ฟ€ํŒ

Windows์—์„œ ์‹ค์ œ Linux ๋ช…๋ น(CGYWIN ์•„๋‹˜) ์‚ฌ์šฉ

์ด์ „์— ์ด์— ๋Œ€ํ•ด ์“ด ์ ์ด ์žˆ์ง€๋งŒ ์ด์ œ๋Š” PowerShell ํ•จ์ˆ˜์— ๋Œ€ํ•œ ๋ณ„์นญ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์‹ค์ œ Linux ๋ช…๋ น์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค. Windows ๋‚ด๋ถ€์—์„œ.

๋‹ค์Œ๊ณผ ๊ฐ™์ด WSL.exe ๋’ค์— ๊ฐ„๋‹จํžˆ ๋ฐฐ์น˜ํ•˜์—ฌ DOS/Windows/๋ฌด์—‡์ด๋“  Linux ๋ช…๋ น์„ ์ง์ ‘ ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

C:temp> wsl ls -la | findstr "foo"
-rwxrwxrwx 1 root root     14 Sep 27 14:26 foo.bat

C:temp> dir | wsl grep foo
09/27/2016  02:26 PM                14 foo.bat

C:temp> wsl ls -la > out.txt

C:temp> wsl ls -la /proc/cpuinfo
-r--r--r-- 1 root root 0 Sep 28 11:28 /proc/cpuinfo

C:temp> wsl ls -la "/mnt/c/Program Files"
...contents of C:Program Files...

Windows ๊ฒฝ๋กœ๋Š” Windows ์ด์ „์˜ $PATH์— ์žˆ์œผ๋ฏ€๋กœ WSL/Linux์—์„œ Windows ์‹คํ–‰ ํŒŒ์ผ์„ ํ˜ธ์ถœ/์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ๋ถ„์ด ํ•ด์•ผ ํ•  ์ผ์€ ๋์— .exe๋ฅผ ๋ถ™์—ฌ ๋ช…์‹œ์ ์œผ๋กœ ํ˜ธ์ถœํ•˜๋Š” ๊ฒƒ๋ฟ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด "Explorer.exe."๊ฐ€ ์ž‘๋™ํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. notepad.exe ๋˜๋Š” ๋‹ค๋ฅธ ํŒŒ์ผ์„ ๋งŒ๋“ค ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

Visual Studio Code๋ฅผ ์‹คํ–‰ํ•˜๊ณ  Windows์—์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ Linux ์•ฑ์— ์•ก์„ธ์Šคํ•˜์„ธ์š”.

WSL์˜ ํด๋”์— ์žˆ๋Š” ๋™์•ˆ "code."๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์„ค์น˜ํ•˜๋ผ๋Š” ๋ฉ”์‹œ์ง€๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. VS ์›๊ฒฉ ํ™•์žฅ.. ์ด๋Š” Visual Studio Code๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ์ ˆ๋ฐ˜์œผ๋กœ ๋ถ„ํ• ํ•˜๊ณ  Windows ํ™˜๊ฒฝ์—์„œ VS Code ํด๋ผ์ด์–ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Linux์—์„œ "ํ—ค๋“œ๋ฆฌ์Šค" VS Code Server๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

๋˜ํ•œ ์„ค์น˜ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค Visual Studio ์ฝ”๋“œ ะธ ์›๊ฒฉ ํ™•์žฅ - WSL. ์›ํ•˜๋Š” ๊ฒฝ์šฐ ์„ค์น˜ Windows ํ„ฐ๋ฏธ๋„ ๋ฒ ํƒ€ ๋ฒ„์ „ Windows์—์„œ ๋” ๋‚˜์€ ํ„ฐ๋ฏธ๋„ ๊ฒฝํ—˜์„ ์œ„ํ•ด.

๋‹ค์Œ์€ Windows ๋ช…๋ น์ค„ ๋ธ”๋กœ๊ทธ์˜ ๋‹ค์–‘ํ•œ ๊ธฐ์‚ฌ์ž…๋‹ˆ๋‹ค.

WSL 2์˜ ์ด์ ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • ๊ฐ€์ƒ ๋จธ์‹ ์€ ๋ฆฌ์†Œ์Šค ์ง‘์•ฝ์ ์ด๋ฉฐ ๋งค์šฐ ๋…๋ฆฝ์ ์ธ ๊ฒฝํ—˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ์›๋ž˜ WSL์€ ๋งค์šฐ "์—ฐ๊ฒฐ"๋˜์–ด ์žˆ์—ˆ์ง€๋งŒ VM์— ๋น„ํ•ด ์„ฑ๋Šฅ์ด ์ƒ๋‹นํžˆ ๋‚ฎ์•˜์Šต๋‹ˆ๋‹ค.
  • WSL 2๋Š” ๊ฒฝ๋Ÿ‰ VM, ์™„์ „ํžˆ ์—ฐ๊ฒฐ๋œ ์ธํ„ฐํŽ˜์ด์Šค ๋ฐ ๊ณ ์„ฑ๋Šฅ์„ ๊ฐ–์ถ˜ ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ์ ‘๊ทผ ๋ฐฉ์‹์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๋ช‡ ์ดˆ ๋งŒ์— ์—ฌ๋Ÿฌ Linux ์‹คํ–‰

์—ฌ๊ธฐ์„œ๋Š” "wsl --list --all"์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ์‹œ์Šคํ…œ์— ์ด๋ฏธ ์„ธ ๊ฐœ์˜ Linux๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

C:Usersscott>wsl --list --all
Windows Subsystem for Linux Distributions:
Ubuntu-18.04 (Default)
Ubuntu-16.04
Pengwin

์‰ฝ๊ฒŒ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๊ณ  Windows ํ„ฐ๋ฏธ๋„์— ํ‘œ์‹œ๋˜๋„๋ก ํ”„๋กœํ•„์„ ํ• ๋‹นํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

Pengwin์„ ์‚ฌ์šฉํ•˜์—ฌ Windows์—์„œ X Windows Server ์‹คํ–‰

ํŽญ์œˆ ๋งค์šฐ ๋ฉ‹์ง„ ์‚ฌ์šฉ์ž ์ •์˜ WSL Linux ๋ฐฐํฌํŒ์ž…๋‹ˆ๋‹ค. ๋‹น์‹ ์€ ๊ทธ๊ฒƒ์„ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค ์œˆ๋„์šฐ ์Šคํ† ์–ด. Pengwin์„ ๋‹ค์Œ๊ณผ ๊ฒฐํ•ฉ X ์„œ๋ฒ„(์˜ˆ: X410), ๋งค์šฐ ๋ฉ‹์ง„ ํ†ตํ•ฉ ์‹œ์Šคํ…œ์„ ์–ป๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

Windows ์‹œ์Šคํ…œ ๊ฐ„์— WSL ๋ฐฐํฌํŒ์„ ์‰ฝ๊ฒŒ ์ด๋™ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Ana Betts๋Š” ์ด ์œ„๋Œ€ํ•œ ๊ธฐ์ˆ ์„ ๊ธฐ๋…ํ•ฉ๋‹ˆ๋‹ค., ์ด๋ฅผ ํ†ตํ•ด ์ด์ƒ์ ์ธ WSL2 ๋ฐฐํฌํŒ์„ ํ•œ ์‹œ์Šคํ…œ์—์„œ ๋‹ค๋ฅธ ์‹œ์Šคํ…œ์œผ๋กœ ์‰ฝ๊ฒŒ ์ „์†กํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. n ๊ธฐ๊ณ„.

wsl --export MyDistro ./distro.tar

# ั€ะฐะทะผะตัั‚ะธั‚ะต ะตะณะพ ะณะดะต-ะฝะธะฑัƒะดัŒ, Dropbox, Onedrive, ะณะดะต-ั‚ะพ ะตั‰ะต

mkdir ~/AppData/Local/MyDistro
wsl --import MyDistro ~/AppData/Local/MyDistro ./distro.tar --version 2 

๊ทธ๊ฒŒ ๋‹ค์•ผ. ๋ชจ๋“  ์‹œ์Šคํ…œ์—์„œ ๋™๊ธฐํ™”๋œ ์™„๋ฒฝํ•œ Linux ์„ค์ •์„ ์–ป์œผ์„ธ์š”.

WSL ๋‚ด์—์„œ Windows Git ์ž๊ฒฉ ์ฆ๋ช… ๊ณต๊ธ‰์ž ์‚ฌ์šฉ

์œ„์˜ ๋ชจ๋“  ๊ธฐ๋Šฅ์ด ์ •์ ์— ํ†ตํ•ฉ๋ฉ๋‹ˆ๋‹ค. Ana Betts์˜ ๋ฉ‹์ง„ ๊ฒŒ์‹œ๋ฌผ์—์„œ, ํ†ตํ•ฉ๋˜๋Š” ๊ณณ WSL์˜ Windows Git ์ž๊ฒฉ ์ฆ๋ช… ๊ณต๊ธ‰์ž, /usr/bin/git-credential-manager๋ฅผ Windows git creds ๊ด€๋ฆฌ์ž๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ์‰˜ ์Šคํฌ๋ฆฝํŠธ๋กœ ์ „ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๋ฉ‹์ง„. ์ด๋Š” ๊นจ๋—ํ•˜๊ณ  ๊ธด๋ฐ€ํ•œ ํ†ตํ•ฉ์„ ํ†ตํ•ด์„œ๋งŒ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉํ•ด ๋ณด๊ณ  WSL์„ ์„ค์น˜ํ•˜์„ธ์š”. ์œˆ๋„์šฐ ํ„ฐ๋ฏธ๋„, ๊ทธ๋ฆฌ๊ณ  ์ƒ์„ฑ Windows์˜ ๋›ฐ์–ด๋‚œ Linux ํ™˜๊ฒฝ..

์ถœ์ฒ˜ : habr.com

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€