Windows Subsystem for Linux (WSL2) Ubuntu 설치 및 Python 개발 환경 설정

Windows Subsystem for Linux (WSL)는 Windows 운영 체제 내에서 Linux 환경을 직접 사용할 수 있도록 지원하는 강력한 도구입니다. 특히 WSL2는 가상화 기술을 활용하여 더 나은 성능과 완벽한 Linux 커널 호환성을 제공합니다. 본 문서는 WSL2에 Ubuntu를 설치하고 필요한 Python 개발 환경을 구성하는 과정을 안내합니다.

WSL2 환경 구성

1. Windows 기능 활성화

WSL을 사용하기 위해 먼저 필요한 Windows 기능을 활성화해야 합니다. 'Windows 기능 켜기/끄기' 설정에서 다음 항목을 활성화합니다.

  • 'Linux용 Windows 하위 시스템'
  • '가상 머신 플랫폼'

이후 시스템을 재시작해야 할 수도 있습니다.

2. WSL 기본 버전 설정

PowerShell을 관리자 권한으로 실행하고 다음 명령어를 입력하여 WSL의 기본 버전을 WSL2로 설정합니다.

wsl --set-default-version 2

3. Ubuntu 배포판 설치

Microsoft Store를 열고 'Linux'를 검색한 후 원하는 Ubuntu 버전을 선택하여 설치합니다. 일반적으로 안정성과 호환성을 위해 Ubuntu 20.04 LTS 버전을 권장합니다. 22.04와 같은 최신 버전은 특정 도구와의 호환성 문제가 발생할 수 있습니다.

설치 완료 후 처음 Ubuntu를 실행하면 사용자 이름과 비밀번호를 설정하게 됩니다.

WSL 터미널 경로 표시 길이 조정

기본 WSL 터미널 프롬프트는 현재 경로를 전체 경로로 표시하여 길이가 길어질 수 있습니다. 이를 현재 디렉터리 이름만 표시하도록 변경하여 가독성을 높일 수 있습니다.

`.bashrc` 파일 수정

Ubuntu 터미널을 열고 홈 디렉터리(`~`)에서 `.bashrc` 파일을 편집합니다.

vim ~/.bashrc

파일 내에서 `PS1` 변수 정의 부분을 찾아 `\w`를 `\W`로 변경합니다. 일반적으로 다음과 같은 라인들을 찾을 수 있습니다:

if [ "$color_prompt" = yes ]; then
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\W\[\033[00m\]\$ '
else
    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\W\$ '
fi

위 예시와 같이 `\u@\h:\w\$ ` 또는 이와 유사한 형태에서 `\w`를 `\W`로 수정합니다. `\w`는 전체 경로를, `\W`는 현재 디렉터리 이름만을 나타냅니다.

수정 후 파일을 저장하고 종료합니다. (Vim에서 `Esc`를 누른 후 `:wq` 입력)

환경 변수 갱신

변경 사항을 즉시 적용하려면 다음 명령어를 실행합니다.

source ~/.bashrc

이제 터미널을 이동하면 경로가 간략하게 표시되는 것을 확인할 수 있습니다.

고급 터미널 활용 (Windows Terminal)

기본 터미널보다 더 많은 기능과 시각적 개선을 제공하는 Windows Terminal을 사용하는 것을 권장합니다. Microsoft Store에서 무료로 다운로드할 수 있으며, 여러 터미널 프로필(WSL, PowerShell, CMD 등)을 하나의 창에서 관리할 수 있어 편리합니다.

Intel oneAPI 개발 환경 준비 (GCC/GFortran)

특정 과학 계산 라이브러리나 Intel oneAPI와 같은 도구를 사용하기 위해서는 GCC 및 GFortran 컴파일러가 필요할 수 있습니다.

GCC 컴파일러 설치

GCC를 포함한 빌드 필수 도구들을 설치합니다.

sudo apt update
sudo apt install build-essential

설치 확인:

gcc --version

GFortran 컴파일러 설치

Fortran 언어 컴파일러인 GFortran을 설치합니다.

sudo apt install gfortran

설치 확인:

gfortran --version

Intel oneAPI 설치

Intel oneAPI Base Toolkit 및 HPC Toolkit 설치는 Intel 공식 문서 또는 가이드를 참조하여 진행합니다. 일반적으로 Intel oneAPI는 자체 Python 환경인 Intel Python을 포함하고 있어, 이를 활용할 수 있습니다.

Python 환경 설정 (Conda 활용)

Intel oneAPI의 Intel Python을 사용하거나 독립적인 Miniconda 설치를 통해 Python 환경을 관리할 수 있습니다. 여기서는 conda를 기반으로 환경을 설정하는 방법을 설명합니다.

Conda 미러 설정

패키지 다운로드 속도 향상을 위해 conda 채널 미러를 설정할 수 있습니다. 예를 들어, 국내 미러나 해외 주요 미러를 사용할 수 있습니다. 여기서는 일반적인 설정 예시를 보여줍니다.

vim ~/.condarc

파일에 다음 내용을 추가합니다. (예: `conda-forge` 및 기본 채널)

channels:
  - conda-forge
  - defaults
show_channel_urls: true

필요에 따라 `https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/` 등 다른 미러 URL을 추가할 수 있습니다.

Pip 미러 설정

pip를 통한 패키지 설치 시에도 미러를 설정하여 속도를 개선할 수 있습니다.

mkdir -p ~/.pip
vim ~/.pip/pip.conf

파일에 다음 내용을 추가합니다. (예: PyPI 기본 인덱스 또는 다른 미러)

[global]
index-url = https://pypi.org/simple
# 특정 미러 사용 예시 (주석 처리)
# index-url = https://pypi.tuna.tsinghua.edu.cn/simple
# trusted-host = pypi.tuna.tsinghua.edu.cn

특정 Python 버전 가상 환경 생성

프로젝트별로 특정 Python 버전이 필요한 경우, conda를 사용하여 가상 환경을 생성할 수 있습니다. 예를 들어, Python 2.7 환경이 필요한 경우:

conda create --name py2_env python=2.7

현재 시스템에 생성된 conda 가상 환경 목록을 확인합니다.

conda info --envs

생성된 가상 환경을 활성화/비활성화합니다.

conda activate py2_env # 활성화
conda deactivate py2_env # 비활성화

필요 라이브러리 설치

활성화된 가상 환경 내에서 필요한 Python 라이브러리를 설치합니다. 예를 들어 `numpy`, `pandas`, `netCDF4`, `pyproj`를 설치하려면:

conda install numpy pandas netCDF4 pyproj

이제 WSL2 Ubuntu 환경에서 Python 개발을 위한 기본적인 준비가 완료되었습니다.

태그: WSL2 ubuntu python conda pip

7월 15일 23:43에 게시됨