์ ๋ WSL(Linux์ฉ Windows ํ์ ์์คํ
)์ ๊น์ด ๋น ์ ธ ์์ต๋๋ค.
์๋๋ ๋ ์ฝฉ ๋ฒํฐ์ ์ด์ฝ๋ฆฟ์ ์์ ๋ ํ ์ ์๋ ๋ฉ์ง ์ผ๋ค์ ๋ํ ์์ธํ ์ ๋ณด์ ๋๋ค!
Linux์์ Windows ํ์๊ธฐ๋ฅผ ์คํํ๊ณ ๋ฐฐํฌ ํ์ผ์ ์ก์ธ์คํ์ธ์.
WSL/bash ๋ช ๋ น์ค์์ ํ์ผ์ ์๊ฐ์ ์ผ๋ก ์ก์ธ์คํ๋ ค๋ ๊ฒฝ์ฐ ํ์ฌ ๋๋ ํฐ๋ฆฌ๊ฐ ์๋ "explorer.exe"๋ฅผ ์คํํ๋ฉด ์๋ฒ๋ฅผ ํตํด ์ ๋ฌ๋ Linux ํ์ผ์ด ํฌํจ๋ Windows ํ์๊ธฐ ์ฐฝ์ด ํ์๋ฉ๋๋ค. ๋ก์ปฌ ๋คํธ์ํฌ ๊ณํ9.
Windows์์ ์ค์ Linux ๋ช ๋ น(CGYWIN ์๋) ์ฌ์ฉ
์ด์ ์ ์ด์ ๋ํด ์ด ์ ์ด ์์ง๋ง ์ด์ ๋ PowerShell ํจ์์ ๋ํ ๋ณ์นญ์ด ์์ต๋๋ค.
๋ค์๊ณผ ๊ฐ์ด 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."๋ฅผ ์คํํ ์ ์์ผ๋ฉฐ ์ค์นํ๋ผ๋ ๋ฉ์์ง๊ฐ ํ์๋ฉ๋๋ค.
๋ํ ์ค์นํด์ผํฉ๋๋ค
๋ค์์ Windows ๋ช ๋ น์ค ๋ธ๋ก๊ทธ์ ๋ค์ํ ๊ธฐ์ฌ์ ๋๋ค.
- ะงะฐััั 1
WSL ๋ฐ Visual Studio Code Remote๋ฅผ ์ฌ์ฉํ์ฌ Windows์์์ Linux ๊ฐ๋ฐ ๊ฒฝํ์ ํ ๋จ๊ณ ๋ ๋ฐ์ ์ํค์ธ์. - ะงะฐััั 2
WSL ๋ฐ Visual Studio Code๋ฅผ ์ฌ์ฉํ Windows์์์ Linux ๊ฐ๋ฐ์ ๋ํ ์ฌ์ธต ๊ฐ์ด๋ - ะงะฐััั 3
WSL ๋ฐ Visual Studio Code๋ฅผ ์ฌ์ฉํ Linux ๊ฐ๋ฐ์ ๋ํ ํ๊ณผ ์๋ น
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 ์คํ
Windows ์์คํ ๊ฐ์ WSL ๋ฐฐํฌํ์ ์ฝ๊ฒ ์ด๋ํ ์ ์์ต๋๋ค.
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 ์๊ฒฉ ์ฆ๋ช ๊ณต๊ธ์ ์ฌ์ฉ
์์ ๋ชจ๋ ๊ธฐ๋ฅ์ด ์ ์ ์ ํตํฉ๋ฉ๋๋ค.
์ฌ์ฉํด ๋ณด๊ณ WSL์ ์ค์นํ์ธ์.
์ถ์ฒ : habr.com