WSL과 함께 사용할 Linux 배포판 가져오기

Microsoft Store 사용할 수 없는 경우에도 tar 파일로 가져와 WSL(Linux용 Windows 하위 시스템 내의 Linux 배포를 사용할 수 있습니다.

이 문서에서는 Docker 컨테이너를 사용하여 tar 파일을 가져와 WSL에서 사용하기 위해 Linux 배포판 CentOS를 가져오는 방법을 보여 줍니다. 이 프로세스를 적용하여 모든 Linux 배포를 가져올 수 있습니다.

배포에 대한 tar 파일 가져오기

먼저 배포에 대한 모든 Linux 이진 파일이 포함된 tar 파일을 가져와야 합니다.

다음과 같은 다양한 방법으로 tar 파일을 가져올 수 있습니다.

  • 제공된 tar 파일을 다운로드합니다. Alpine Linux 다운로드 사이트의 "미니 루트 파일 시스템" 섹션에서 Alpine에 대한 예제를 찾을 수 있습니다.
  • Linux 배포 컨테이너를 찾고 인스턴스를 tar 파일로 내보냅니다. 아래 예제에서는 CentOS 컨테이너를 사용하는 이 프로세스를 보여줍니다.

CentOS 예제에 대한 tar 파일 가져오기

이 예제에서는 WSL 배포 내에서 Docker를 사용하여 CentOS에 대한 tar 파일을 가져옵니다.

사전 요구 사항

컨테이너에서 tar 내보내기

  1. Microsoft Store 이미 설치한 Linux 배포판의 명령줄(Bash)을 엽니다(이 예제에서는 Ubuntu).

  2. Docker 서비스를 시작합니다.

    sudo service docker start
    
  3. Docker 내에서 CentOS 컨테이너를 실행합니다.

    docker run -t centos bash ls /
    
  4. grep 및 awk를 사용하여 CentOS 컨테이너 ID를 가져옵니다.

    dockerContainerID=$(docker container ls -a | grep -i centos | awk '{print $1}')
    
  5. 탑재된 c 드라이브의 tar 파일로 컨테이너 ID를 내보냅니다.

    docker export $dockerContainerID > /mnt/c/temp/centos.tar
    

Example of running the commands above

이 프로세스는 이제 WSL에서 로컬로 사용하기 위해 가져올 수 있도록 Docker 컨테이너에서 CentOS tar 파일을 내보냅니다.

tar 파일을 WSL로 가져오기

tar 파일이 준비되면 다음 명령을 wsl --import <Distro> <InstallLocation> <FileName>사용하여 가져올 수 있습니다.

CentOS 가져오기 예제

CentOS 배포 tar 파일을 WSL로 가져오려면:

  1. PowerShell을 열고 배포를 저장할 폴더가 만들어졌는지 확인합니다.

    cd C:\temp
    mkdir E:\wslDistroStorage\CentOS
    
  2. 명령을 wsl --import <DistroName> <InstallLocation> <InstallTarFile> 사용하여 tar 파일을 가져옵니다.

    wsl --import CentOS E:\wslDistroStorage\CentOS .\centos.tar
    
  3. 이 명령을 wsl -l -v 사용하여 설치한 배포를 확인합니다.

    Example of the above commands running in WSL

  4. 마지막으로 이 명령을 wsl -d CentOS 사용하여 새로 가져온 CentOS Linux 배포를 실행합니다.

기본 사용자와 같은 WSL 특정 구성 요소 추가

기본적으로 --import를 사용할 때는 항상 루트 사용자로 시작됩니다. 사용자 고유의 사용자 계정을 설정할 수 있지만, 설정 프로세스는 각각 다른 Linux 배포에 따라 약간씩 달라집니다.

방금 가져온 CentOS 배포를 사용하여 사용자 계정을 설정하려면 먼저 PowerShell을 열고 명령을 사용하여 CentOS로 부팅합니다.

wsl -d CentOS

다음으로 CentOS 명령줄을 엽니다. 이 명령을 사용하여 CentOS에 sudo 및 암호 설정 도구를 설치하고, 사용자 계정을 만들고, 기본 사용자로 설정합니다. 이 예제에서 사용자 이름은 'caloewen'입니다.

참고

사용자가 sudo를 사용할 수 있도록 사용자 이름을 sudoers 파일에 추가하려고 합니다. 이 명령은 adduser -G wheel $myUsername 사용자를 myUsername 휠 그룹에 추가합니다. 휠 그룹의 사용자에게는 sudo 권한이 자동으로 부여되며 상승된 권한이 필요한 작업을 수행할 수 있습니다.

yum update -y && yum install passwd sudo -y
myUsername=caloewen
adduser -G wheel $myUsername
echo -e "[user]\ndefault=$myUsername" >> /etc/wsl.conf
passwd $myUsername

이제 해당 인스턴스를 종료하고 모든 WSL 인스턴스가 종료되었는지 확인해야 합니다. PowerShell에서 다음 명령을 실행하여 배포를 다시 시작하여 새 기본 사용자를 확인합니다.

wsl --terminate CentOS
wsl -d CentOS

이제 이 예제를 기반으로 출력으로 표시됩니다 [caloewen@loewen-dev]$ .

Example of the code above running in WSL

WSL 설정을 구성하는 방법에 대한 자세한 내용은 .wslconfig 및 wsl.conf를 사용하여 설정 구성을 참조하세요.

사용자 지정 Linux 배포 사용

UWP 앱으로 패키지된 사용자 지정된 Linux 배포를 만들 수 있습니다. 이 배포는 Microsoft Store 사용할 수 있는 WSL 배포판과 똑같이 작동합니다. 방법을 알아보려면 WSL용 사용자 지정 Linux 배포판 만들기를 참조하세요.