kledgeb UbuntuやLinuxの最新情報を紹介

WSL その220 - WSL 2のLinux kernelがLUKSに対応・LUKSで暗号化されたボリュームを復号化してマウント可能に

WSL 2のLinux kernelがLUKSに対応

「WSL 2」の「Linux kernel」が「LUKS」に対応し、「LUKS」で暗号化されたボリュームを復号化してマウントできるようになりました。


  • Servicing the Windows Subsystem for Linux (WSL) 2 Linux kernel

Linux kernel 5.10.16.3

「LUKS」のサポートは、2021年4月16日にリリースされた「Linux kernel 5.10.16.3」で実装されました。

  • Release Notes for Windows Subsystem for Linux kernel - 5.10.16.3

不具合の修正も

本バージョンではPCのスリープから復帰した時に日時がおかしくなる不具合も修正されています。

  • WSL2 date incorrect after waking from sleep

Linux kernelをアップデートするには

「WSL 2」の「Linux kernel」をアップデートする方法は、以下を参照してください。

  • WSL 2のLinux kernelをアップデートするには・Linux kernelのバージョンを調べるには

WSLでボリュームをマウントする方法について

「WSL」でボリューム(ファイルシステム)をマウントする方法は、以下で紹介しています。
基本的な手続きの流れは変わらないため、以下も参考にしてください。

  • Linuxのファイルシステムを物理ストレージからマウント可能に

例で使用するWSLの環境について

ここでは以下の「WSL」環境で「LUKS」で暗号化されたボリュームをマウントします。


「Windows」のバーションは「Windows 10 Insider Preview Build 21364」です。
デフォルトのLinuxディストリビューションは「Ubuntu 20.04 LTS」です。
「Ubuntu」から見た「Linux kernel」のバージョンは「5.10.16.3-microsoft-standard-WSL2」です。

1.cryptsetupのインストール

「Ubuntu」で「cryptsetup」パッケージをインストールします。
「cryptsetup」パッケージは「LUKS」ボリュームを操作するために必要です。

1-1.cryptsetupがインストールされているかどうか調べるには

すでに「cryptsetup」パッケージがインストールされているかどうか調べるには、以下のコマンドを実行します。

apt-cache policy cryptsetup


すでに「cryptsetup」パッケージがインストールされている場合、上記のように「Installed:」の行にインストール済みのパッケージのバージョンが表示されます。

1-2.cryptsetupのインストール

「cryptsetup」パッケージがインストールされていない場合、以下のコマンドを実行して「cryptsetup」パッケージをインストールします。

sudo apt install cryptsetup


2.ストレージのアタッチ

「LUKS」ボリュームを復号化する前に、「LUKS」ボリュームが含まれているストレージを調べアタッチします。
ここでは例として以下のストレージ(ディスク2)の1番目のパーティションを「LUKS」で暗号化しています。


「LUKS」ボリュームをマウントするにあたり、そのボリュームが含まれているストレージを一意に特定するデバイスID(識別子)が必要になります。

2-1.ストレージのデバイスIDを調べる

以下のコマンドを実行し、ストレージの情報を出力します。

wmic diskdrive list brief

以下のようにストレージの情報を出力されるので、該当するディスクの情報を探します。

Caption                                    DeviceID            Model                                      Partitions  Size
...(省略)...
VMware Virtual NVMe Disk                   \\.\PHYSICALDRIVE2  VMware Virtual NVMe Disk                   1           107372805120
...(省略)...

「DeviceID」の列に表示されている識別子が、今回必要になるデバイスIDです。
今回の例では「\\.\PHYSICALDRIVE2」がマウントするストレージのデバイスIDになります。

2-2.ストレージのアタッチ

以下のコマンドを実行し、ストレージをアタッチします。
アタッチするストレージの識別子は、「2-1.」で調べたデバイスIDを指定します。

wsl --mount \\.\PHYSICALDRIVE2 --bare


3.マウントするボリュームを調べる

次にマウントするボリュームのブロックデバイス(デバイスファイル)を特定します。

デバイスファイルを特定する

ストレージのアタッチにより「Ubuntu」側で「LUKS」ボリュームに対応したデバイスファイルが生成されるため、このデバイスファイルを特定します。
いくつか方法がありますが、「lsblk」や「parted」を利用してデバイスファイルを調べる方法を紹介します。

Ubuntu側で作業してもOK

ここでは「wsl」コマンドを使用して作業しますが、ここから先の作業は「Ubuntu」側で作業しても良いです。
またここではとりあえず復号化したボリュームのマウントを目標に作業します。

3-1.lsblkで調べる

以下のように「lsblk」コマンドを実行すると、ブロックデバイスの一覧が表示されます。

wsl lsblk


表示される情報が少ないため分かりにくいかもしれません。
ストレージをアタッチする前と後でこのコマンドを実行し出力内容を比較すれば、分かりやすいかと思います。

今回の例では「/dev/sdd1」が「LUKS」ボリュームに対応したデバイスファイルになります。

3-2.partedで調べる

以下のように「parted」コマンドを実行すると、ブロックデバイスの一覧が表示されます。

wsl -- sudo parted -l

各ブロックデバイスごとに詳細な情報が表示されます。


今回の例では「/dev/sdd1」が「LUKS」ボリュームに対応したデバイスファイルになります。
ちなみに「/dev/sdd」の情報は以下のようになっています。


4.LUKSボリュームを復号化する

「cryptsetup」コマンドを利用して「LUKS」ボリュームを復号します。

cryptsetupコマンドの使い方について

「cryptsetup」コマンドの使い方や詳細は、以下を参照してください。

  • cryptsetup

4-1.ボリュームの復号

「cryptsetup」コマンドでは復号化したボリュームのデバイス名を指定して復号化します。
復号化したボリュームのデバイスファイルは、「/dev/mapper」内に配置されます。
この時コマンドで指定したデバイス名がファイル名に使用されます。
ここでは例としてデバイス名に「decryptDevice」を指定します。

wsl sudo cryptsetup open /dev/sdd1 decryptDevice


4-2.パスフレーズの入力

暗号化した時に指定したパスフレーズを入力します。


特に問題なければ以下のように復号化が完了します。


4-3.復号化ボリュームの確認

復号化したボリュームのデバイスファイルは、「/dev/mapper」内に配置されます。
以下のように「/dev/mapper」内に「decryptDevice」が生成されています。


5.復号化ボリュームのマウント

後は他のボリュームと同様にマウントします。
ここでは例として「/mnt/wsl/decryptVolume」に復号化したボリュームをマウントします。

5-1.ディレクトリーの作成

以下のコマンドを実行し、マウントポイントとなるディレクトリーを作成します。

wsl mkdir /mnt/wsl/decryptVolume


5-2.復号化したボリュームのマウント

以下のコマンドを実行し、復号化したボリュームのデバイスファイルである「/dev/mapper/decryptDevice」を「/mnt/wsl/decryptVolume」にマウントします。

wsl sudo mount /dev/mapper/decryptDevice /mnt/wsl/decryptVolume


これでマウント完了です。
マウント先を見てみると、復号化されたボリュームがマウントされていることが分かります。


また「lsblk」コマンドで見てみると、以下のようにマウントされていることが分かります。


6.エクスプローラーからアクセスしてみる

他のボリュームと同様に、エクスプローラーから復号化されたボリュームにアクセスできます。


ファイル操作も可能です。


ファイル操作の結果が反映されていますね。


7.復号化したボリュームを閉じるには

いわゆる後片付けですね。
復号化したボリュームを閉じる方法です。

7-1.復号化したボリュームのアンマウント

復号化したボリュームをマウントしている場合、まずそのボリュームをアンマウントします。
上記の例では「/mnt/wsl/decryptVolume」にマウントしているので、以下のコマンドを実行しアンマウントします。

wsl sudo umount /mnt/wsl/decryptVolume


7-2.復号化したボリュームを閉じる

「4-1.」で指定したデバイス名を指定して、復号化したボリュームを閉じます。
今回の例ではデバイス名に「decryptDevice」を指定します。

wsl sudo cryptsetup close decryptDevice


以下のように「decryptDevice」デバイスファイルが削除されています。


以上で完了です。

WSL
スポンサー
コメント
コメントポリシー
コメントをする前に UbuntuのCode of Conduct(CoC/行動規範) を確認し、CoCに沿ったコメントをお願いします。
コメントの使い方は、コメントの使い方を参照してください。
同一カテゴリーの記事
SNS
人気の記事
  • Linux その450 - Canonical LXD や MicroCloud にクライアントなりすましの脆弱性・アップデートを
    Canonical LXD や MicroCloud に重大な脆弱性 2026年10月28日、Canonical LXD や MicroCloud に重大な脆弱性がみつかりました。
  • Ubuntu 26.04 その82 - Linux kernel の脆弱性 CVE-2026-98432 の対応状況
    CVE-2026-98432 の対応状況 2026年11月2日、Linux kernel の脆弱性である CVE-2026-98432 の対応状況がアナウンスされました。
  • Linux Mint その294 - Linux Mint 27 の開発とリリース方針の変更・アラーム管理アプリの開発
    Linux Mint 月刊ニュース Linux Mint 開発チームは Linux Mint 月刊ニュースにて、Linux Mint の開発状況や取り組みを紹介しています。
  • Ubuntu 26.04 その76 - CVE-2026-92392 含む curl の脆弱性22件修正・アップデートを
    curl の脆弱性22件修正 CVE-2026-92392 含む22件の curl の脆弱性に対応したセキュリティーアップデートがリリースされました。
  • Ubuntu 26.10 その38 - Ubuntu 26.10 がリリースされました・ディスクイメージのダウンロード
    Ubuntu 26.10 リリース 2026年10月15日、Ubuntu 26.10 がリリースされました。
  • Ubuntu 26.04 その78 - eMudhra 認証局の秘密鍵の侵害・アップデートを
    eMudhra 認証局の秘密鍵の侵害 2026年10月20日、eMudhra 認証局(eMudhra CA)の秘密鍵の侵害が発覚しました。
  • Ubuntu 26.04 その79 - CVE-2026-111497 に対応した Brotli のリリース・アップデートを
    Brotli のセキュリティーアップデート 2026年10月26日、CVE-2026-111497 に対応した Brotli がリリースされました。
  • Ubuntu 26.04 その77 - PHP に php2shell(CVE-2026-109618/CVE-2026-109619)の脆弱性・アップデートを
    PHP に php2shell の脆弱性 PHP に php2shell と呼ばれる致命的な脆弱性が見つかりました。
  • Ubuntu 26.10 その39 - Ubuntu 26.10 の新機能と変更点・既知の問題
    Ubuntu 26.10 の新機能と変更点・既知の問題 リリースノートから、Ubuntu 26.10 の新機能と変更点を紹介します。
  • Ubuntu 26.10 その40 - Ubuntu Desktop 26.10 の注目機能
    Ubuntu Desktop 26.10  の注目機能 Ubuntu Desktop 26.10  の注目機能を紹介します。
記事のピックアップ
オプション