WSL(Windows Subsystem for Linux) 로 Windows 에서 리눅스 사용하기
WSL 은 Windows 10 에 새로 포함된 기능으로 오버헤드 없이 리눅스를 윈도우에서 사용할 수 있게 해줍니다.
설치
WSL 을 사용하려면 64 비트의 Windows 10 가 필요합니다. (출처)
먼저 "Linux용 Windows 하위 시스템"를 사용하도록 설정해야 합니다. PowerShell 을 관리자 권한으로 오픈한 후에 아래 명령을 실행합니다.
Linux용 Windows 하위 시스템 활성화
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
POWERSHELL- 또는 제어판 → 프로그램 → windows 기능 켜기/끄기에서 해당 기능을 켜도 됩니다.
- "Linux용 Windows 하위 시스템" 사용 설정이 끝났으면 PC 를 재부팅해 줍니다.
- 이제 "Microsoft Store" 앱에 연결한 후에 검색창에 Linux 를 입력하고 결과에서 설치할 리눅스 배포판을 선택한 후에 설치를 클릭해 주면 됩니다.
실행을 클릭하면 리눅스용 bash 가 실행되고 우분투 리눅스를 사용할 수 있습니다.
ssh 서버 구성
기본적으로 WSL 은 ssh server 가 구동되지 않으므로 ssh 로 접속할 수 없지만 아래 절차대로 설정하면 ssh 로 접속할 수 있습니다.
설명은 Ubuntu 리눅스 기준입니다.
- bash 를 실행해서 WSL 리눅스에 들어갑니다.
빠른 패키지 다운로드를 위해 ubuntu 미러를 국내 사이트로 변경합니다.
curl -O https://gist.githubusercontent.com/lesstif/8185f143ba7b8881e767900b1c8e98ad/raw/54ceaed47410d64af25b1aaf691e4319c5daba4c/change-ubuntu-mirror.sh sudo bash change-ubuntu-mirror.sh
CODE패키지 정보를 업데이트합니다.
sudo apt update sudo apt upgrade
CODEopenssh 서버를 재설치합니다.
sudo apt remove openssh-server sudo apt install openssh-server
CODEsshd 설정 파일은 /etc/ssh/sshd_config 를 편집합니다.
## 다른 포트를 사용할 경우 수정 Port 22 ## PermitRootLogin no ## PasswordAuthentication yes
CODE설정을 반영하기 위해 ssh 서버를 재구동합니다.
sudo service ssh --full-restart sudo service ssh restart
CODE- 이제 ssh 로 연결해서 정상 설정 여부를 확인합니다.
- 정상 동작한다면 ssh 시작시 암호 입력을 안 하도록 sudoers 파일을 수정합니다.
- visudo 를 실행합니다.
아래의 추가 부분을 기존 sudoers 에 추가합니다.
%sudo ALL=(ALL:ALL) ALL ## 추가 %sudo ALL=NOPASSWD: /usr/sbin/sshd start
CODE
wsl.conf 로 동작 제어
/etc/wsl.conf
# Enable extra metadata options by default
[automount]
enabled = true
root = /mnt/
options = "metadata,umask=22,fmask=11"
mountFsTab = true
# Enable DNS – even though these are turned on by default, we’ll specify here just to be explicit.
[network]
generateHosts = true
generateResolvConf = true
CODE
같이 보기
- WSL(Windows Subsystem for Linux) 폴더를 Windows depender 예외 폴더 처리하기
- WSL 2(Windows Subsystem For Linux 2) Preview 버전 사용하기