Windows Server 2019でWSL Debian 11から12へのアップグレードと開発環境構築

Windows Server 2019上のWSL環境でDebian 11(bullseye)からDebian 12(bookworm)へのアップグレードと、 Python開発環境の構築手順を解説します。特にusrmergeの問題への対処方法と、Python 3.11の設定に焦点を当てています。

1. 環境概要

  • ホストOS: Windows Server 2019
  • WSL: Debian 11(bullseye)→ Debian 12(bookworm)
  • 開発言語: Python 3.11

2. Debian 12へのアップグレード手順

以下の手順でDebian 11からDebian 12へアップグレードします:

2.1. システムの更新

sudo apt-get update sudo apt-get upgrade -y

2.2. ソースリストの更新

sudo sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list

2.3. システムのアップグレード

sudo apt-get update sudo apt-get dist-upgrade -y

3. usrmergeの問題への対処

Debian 12へのアップグレード時に発生するusrmergeの問題に対する解決手順:

3.1. usrmergeパッケージの削除

sudo apt-get remove --purge usrmerge sudo apt-get autoremove -y

3.2. 一時ファイルの削除

sudo find / -name "*~usrmerge*" -delete

3.3. シンボリックリンクの修正

以下のコマンドで/lib64のシンボリックリンクを修正します:

sudo mv /usr/lib64/ld-linux-x86-64.so.2 /lib64/ld-linux-x86-64.so.2

4. Python開発環境の構築

Debian 12で最新のPython環境を構築する手順:

4.1. Python 3.11のインストール

sudo apt-get install -y python3.11 python3.11-venv

4.2. python-is-python3の設定

sudo apt-get install -y python-is-python3

4.3. 仮想環境の作成

python -m venv venv source venv/bin/activate pip install --upgrade pip pip install -r requirements.txt

5. 動作確認

以下のコマンドで環境が正しく構築されていることを確認できます:

# Debianバージョンの確認 cat /etc/os-release # Pythonバージョンの確認 python --version # 仮想環境でのDjangoバージョン確認 python -c 'import django; print(django.get_version())'

6. トラブルシューティング

6.1. usrmergeのエラー

usrmergeのエラーが発生した場合は、以下の点を確認してください:

  • シンボリックリンクの重複がないか
  • ファイルの所有権とパーミッションが適切か
  • 一時ファイルが残っていないか

6.2. Pythonパッケージのインストールエラー

パッケージのインストールでエラーが発生した場合:

  • pipを最新バージョンにアップグレード
  • 必要なビルドツールのインストール確認
  • 仮想環境の再作成

7. まとめ

WSL環境でのDebian 12へのアップグレードは、usrmergeの問題に注意が必要ですが、 適切な手順で対処することで、最新のPython開発環境を構築できます。 特にWindows Server 2019上での開発環境として、WSLは優れた選択肢となっています。

参考文献