WSL 개발 환경 설정

WSL 개발 환경을 설정하기 위한 모범 사례에 대한 단계별 가이드입니다. 명령을 실행하여 Ubuntu를 사용하거나 다른 Linux 배포를 설치하도록 설정할 수 있는 기본 Bash 셸을 설치하고, 기본 WSL 명령을 사용하고, Visual Studio Code 또는 Visual Studio, Git, Windows 자격 증명 관리자, MongoDB, Postgres 또는 MySQL과 같은 데이터베이스, GPU 가속 설정, GUI 앱 실행 등을 설정하는 방법을 알아봅니다.

시작

Linux용 Windows 하위 시스템 Windows 운영 체제와 함께 제공되지만 사용하려면 먼저 Linux 배포를 사용하도록 설정하고 설치해야 합니다.

간소화된 --install 명령을 사용하려면 최신 Windows 빌드(빌드 20262+)를 실행해야 합니다. 버전 및 빌드 번호를 확인하려면 Windows 로고 키 + R을 선택하고, winver를 입력하고, 확인을 선택합니다. 설정 메뉴 또는 Windows 업데이트 도우미를 사용하여 업데이트할 수 있습니다.

Ubuntu 이외의 Linux 배포를 설치하거나 이러한 단계를 수동으로 완료하려는 경우 자세한 내용은 WSL 설치 페이지를 참조하세요.

PowerShell(또는 Windows 명령 프롬프트)을 열고 다음을 입력합니다.

wsl --install

--install 명령은 다음 작업을 수행됩니다.

  • 선택 사항인 WSL 및 Virtual Machine 플랫폼 구성 요소를 사용하도록 설정합니다.
  • 최신 Linux 커널을 다운로드하여 설치합니다.
  • WSL 2를 기본값으로 설정합니다.
  • Ubuntu Linux 배포판 다운로드 및 설치(다시 부팅이 필요할 수 있음)

이 설치 프로세스 중에 컴퓨터를 다시 시작해야 합니다.

wsl --install을 실행하는 PowerShell 명령줄

문제가 발생하는 경우 설치 문제 해결 문서를 확인합니다.

Linux 사용자 이름 및 암호 설정

WSL을 사용하여 Linux 배포를 설치하는 프로세스가 완료되면 시작 메뉴를 사용하여 배포(기본적으로 Ubuntu)를 엽니다. Linux 배포에 대한 사용자 이름암호를 만들라는 메시지가 표시됩니다.

  • 사용자 이름암호는 설치하는 각각의 개별 Linux 배포에만 적용되며, Windows 사용자 이름과는 관련이 없습니다.

  • 암호를 입력하는 동안 화면에 아무 것도 표시되지 않습니다. 이를 블라인드 입력이라고 합니다. 당신은 당신이 입력하는 것을 볼 수 없습니다, 이것은 완전히 정상입니다.

  • 사용자 이름암호를 만들면 해당 계정이 배포의 기본 사용자가 되고 시작 시 자동으로 로그인됩니다.

  • 이 계정은 sudo(슈퍼 사용자 작업) 관리 명령을 실행할 수 있는 Linux 관리자로 간주됩니다.

  • WSL에서 실행되는 각 Linux 배포에는 고유한 Linux 사용자 계정 및 암호가 있습니다. 배포를 추가하거나, 다시 설치하거나, 다시 설정할 때마다 Linux 사용자 계정을 구성해야 합니다.

참고

WSL과 함께 설치된 Linux 배포는 사용자별 설치이며 다른 Windows 사용자 계정과 공유할 수 없습니다. 사용자 이름 오류가 발생합니까? StackExchange: Linux의 사용자 이름에서 어떤 문자를 사용해야 하나요?

Ubuntu 명령줄에서 UNIX 사용자 이름을 입력합니다.

암호를 변경하거나 재설정하려면 Linux 배포를 열고 다음 명령을 passwd입력합니다. 현재 암호를 입력하고 새 암호를 입력하라는 메시지가 표시된 다음, 새 암호를 확인하라는 메시지가 표시됩니다.

Linux 배포용 암호를 잊은 경우 다음을 수행합니다.

  1. PowerShell을 열고, wsl -u root 명령을 사용하여 기본 WSL 배포의 루트를 입력합니다.

    기본값이 아닌 배포에서 잊어버린 암호를 업데이트해야 하는 경우 Debian을 대상 배포의 이름으로 바꾼 wsl -d Debian -u root 명령을 사용합니다.

  2. PowerShell 내의 루트 수준에서 WSL 배포가 열리면 이 명령을 사용하여 암호를 passwd <username> 업데이트할 수 있습니다. 여기서 암호를 잊어버린 배포에서 계정의 사용자 이름은 어디에 <username> 있나요?

  3. 새 UNIX 암호를 입력한 다음, 해당 암호를 확인하라는 메시지가 표시됩니다. 암호가 성공적으로 업데이트되었다는 메시지가 표시되면 다음 명령을 exit사용하여 PowerShell 내에서 WSL을 닫습니다.

패키지 업데이트 및 업그레이드

배포에 기본 설정 패키지 관리자를 사용하여 패키지를 정기적으로 업데이트하고 업그레이드하는 것이 좋습니다. Ubuntu 또는 Debian의 경우 다음 명령을 사용합니다.

sudo apt update && sudo apt upgrade

Windows는 Linux 배포를 자동으로 업데이트하거나 업그레이드하지 않습니다. 이는 대부분의 Linux 사용자가 직접 제어하는 것을 선호하는 작업입니다.

추가 배포 추가

Linux 배포를 추가하려면 Microsoft Store를 통해, --import 명령을 통해 또는 사용자 지정 배포를 테스트용으로 로드하여 설치할 수 있습니다. 엔터프라이즈 회사 전체에 배포할 사용자 지정 WSL 이미지를 설정할 수도 있습니다.

Windows 설정 Terminal

Windows Terminal 는 명령줄 인터페이스를 사용하여 모든 애플리케이션을 실행할 수 있습니다. 주요 기능에는 여러 탭, 창, 유니코드 및 UTF-8 문자 지원, GPU 가속 텍스트 렌더링 엔진, 사용자 고유의 테마를 만들고 텍스트, 색, 배경 및 바로 가기를 사용자 지정하는 기능이 있습니다.

새 WSL Linux 배포판이 설치될 때마다 기본 설정에 맞게 사용자 지정할 수 있는 Windows Terminal 내부에 새 인스턴스가 만들어집니다.

특히 여러 명령줄로 작업하려는 경우 Windows Terminal에서 WSL을 사용하는 것이 좋습니다. 설정 및 기본 설정 사용자 지정에 대한 도움말은 다음을 포함하여 Windows Terminal 문서를 참조하세요.

Windows Terminal 스크린샷

File Storage

  • Windows 파일 탐색기 WSL 프로젝트를 열려면 다음을 입력합니다.explorer.exe .
    명령의 끝에 마침표가 추가되어 현재 디렉터리를 열어야 합니다.

  • 사용하려는 도구와 동일한 운영 체제에 프로젝트 파일을 저장합니다.
    가장 빠른 성능 속도를 위해 Linux 명령줄(Ubuntu, OpenSUSE 등)에서 Linux 도구를 사용하여 작업하는 경우 WSL 파일 시스템에 파일을 저장합니다. Windows 도구로 Windows 명령줄(PowerShell, 명령 프롬프트)에서 작업하는 경우 파일을 Windows 파일 시스템에 저장합니다. 운영 체제에서 파일에 액세스할 수 있지만 성능이 크게 저하될 수 있습니다.

예를 들어 WSL 프로젝트 파일을 저장하는 경우 다음과 같습니다.

  • Linux 파일 시스템 루트 디렉터리(\\wsl$\<DistroName>\home\<UserName>\Project)를 사용합니다.
  • Windows 파일 시스템 루트 디렉터리를 사용하지 않는 경우: C:\Users\<UserName>\Project 또는 /mnt/c/Users/<UserName>/Project$

Linux 스토리지를 표시하는 Windows 파일 탐색기

즐겨찾는 코드 편집기 설정

WSL을 사용한 원격 개발 및 디버깅을 직접 지원하기 때문에 Visual Studio Code 또는 Visual Studio를 사용하는 것이 좋습니다. Visual Studio Code WSL을 완전한 기능 개발 환경으로 사용할 수 있습니다. Visual Studio는 C++ 플랫폼 간 개발을 위한 기본 WSL 지원을 제공합니다.

Visual Studio Code 사용

이 단계별 가이드에 따라 원격 개발 확장 팩 설치를 포함하는 WSL에서 Visual Studio Code 사용을 시작합니다. 이 확장을 사용하면 전체 Visual Studio Code 기능 집합을 사용하여 편집 및 디버깅을 위해 WSL, SSH 또는 개발 컨테이너를 실행할 수 있습니다. 서로 다른 별도의 개발 환경 간에 빠르게 전환하고 로컬 머신에 영향을 주지 않고 업데이트합니다.

VS Code가 설치되고 설정되면 다음을 입력하여 VS Code 원격 서버로 WSL 프로젝트를 열 수 있습니다. code .

명령의 끝에 마침표가 추가되어 현재 디렉터리를 열어야 합니다.

WSL 확장이 표시된 VS Code

Visual Studio 사용

이 단계별 가이드에 따라 C++ 플랫폼 간 개발을 위해 WSL에서 Visual Studio 사용을 시작합니다. Visual Studio 2022를 사용하면 동일한 Visual Studio 인스턴스에서 Windows, WSL 배포 및 SSH 연결에서 CMake 프로젝트를 빌드하고 디버그할 수 있습니다.

Visual Studio 2022에서 대상 시스템 선택

Git을 사용하여 버전 관리 설정

이 단계별 가이드 에 따라 WSL에서 Git 사용을 시작하고 , 인증을 위해 자격 증명 관리자를 사용하고, Git 무시 파일을 사용하고, Git 줄 끝을 이해하고, VS Code에 기본 제공된 Git 명령을 사용하여 프로젝트를 Git 버전 제어 시스템에 연결합니다.

명령줄에 git 버전 표시

Docker를 사용하여 원격 개발 컨테이너 설정

이 단계별 가이드에 따라 WSL 2에서 Docker 원격 컨테이너를 시작하고 Windows용 Docker Desktop을 사용하여 원격 개발 컨테이너에 프로젝트를 연결합니다.

Docker 데스크톱 스크린샷

데이터베이스 설정

이 단계별 가이드에 따라 WSL에서 데이터베이스를 시작하고 WSL 환경의 데이터베이스에 프로젝트를 연결합니다. MySQL, PostgreSQL, MongoDB, Redis, Microsoft SQL Server 또는 SQLite를 시작합니다.

WSL을 통해 Ubuntu에서 MongoDB 실행

더 빠른 성능을 위해 GPU 가속 설정

이 단계별 가이드에 따라 WSL에서 GPU 가속 기계 학습 학습 을 설정하고 컴퓨터의 GPU(그래픽 처리 장치)를 활용하여 성능이 큰 워크로드를 가속화합니다.

WSL을 사용하여 GPU 가속 실행

기본 WSL 명령

WSL을 통해 설치하는 Linux 배포판은 PowerShell 또는 CMD(Windows 명령 프롬프트)를 사용하여 가장 잘 관리됩니다. WSL을 사용할 때 잘 알고 있어야 하는 기본 명령 목록은 WSL 명령 참조 가이드를 참조하세요.

또한 많은 명령은 Windows와 Linux 간에 상호 운용할 수 있습니다. 다음은 몇 가지 예입니다.

  • Windows 명령줄에서 Linux 도구 실행: PowerShell을 열고 다음을 입력하여 Linux ls -la 명령을 사용하는 디렉터리 콘텐츠를 표시합니다C:\temp>.wsl ls -la

  • Linux 및 Windows 명령 혼합: 이 예제에서는 Linux 명령을 ls -la 사용하여 디렉터리의 파일을 나열한 다음 PowerShell 명령을 findstr 사용하여 "git" wsl ls -la | findstr "git"이 포함된 단어에 대한 결과를 필터링합니다. Windows dir 명령을 Linux grepdir | wsl grep git명령과 혼합하여 수행할 수도 있습니다.

  • WSL 명령줄에서 직접 Windows 도구를 실행합니다. 예를 들어 .bashrc 파일(Linux 명령줄 <tool-name>.exe 이 시작될 때마다 실행되는 셸 스크립트)을 열려면 다음을 입력합니다. notepad.exe .bashrc

  • Linux Grep 도구를 사용하여 Windows ipconfig.exe 도구 실행: ipconfig.exe | grep IPv4 | cut -d: -f2 이 예제에서는 현재 TCP/IP 네트워크 구성 값을 표시하는 데 사용되는 Windows 파일 시스템의 ipconfig 도구를 보여 줍니다. 그런 다음 Linux 도구인 grep를 사용하여 IPv4 결과로만 필터링됩니다.

외부 드라이브 또는 USB 탑재

이 단계별 가이드에 따라 WSL 2에서 Linux 디스크 탑재를 시작합니다.

wsl mount 명령 스크린샷

Linux GUI 앱 실행

이 자습서에 따라 WSL에서 Linux GUI 앱을 설정하고 실행하는 방법을 알아봅니다.

추가 리소스

  • Windows에서 개발 환경 설정: React, Python, NodeJS, Vue 등 기본 설정 언어 또는 프레임워크에 대한 개발 환경을 설정하는 방법에 대해 자세히 알아봅니다.
  • 문제 해결: 일반적인 문제, 버그를 보고할 위치, 새 기능을 요청하는 위치 및 문서에 기여하는 방법을 찾습니다.
  • FAQ: 질문과 대답 목록을 찾습니다.
  • 릴리스 정보: 이전 빌드 업데이트 기록에 대한 WSL 릴리스 정보를 검토합니다. WSL Linux 커널에 대한 릴리스 정보도 찾을 수 있습니다.