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
人気の記事
  • Ubuntu 26.04 その42 - Ubuntu 26.04.1 LTS のリリーススケジュール
    Ubuntu 26.04.1 LTSのリリーススケジュール Ubuntu 26.04.1 LTS のリリーススケジュールを紹介します。
  • Linux Mint その292 - Linux kernel 7.0 採用の Linux Mint 22.3 リリース・システム管理ツールにカーネル管理機能追加など
    Linux Mint 月刊ニュース Linux Mint 開発チームは Linux Mint 月刊ニュースにて、Linux Mint の開発状況や取り組みを紹介しています。
  • Linux その422 - GNOME Boxes の再構築と未来・Flatpak のみの提供やモダンな機能の実装など
    GNOME Boxes の再構築と未来 GNOME Boxes の再構築と未来が以下で紹介されています。
  • Ubuntu 26.04 その68 - Ubuntu 26.04.1 LTS がリリースされました・ディスクイメージのダウンロード
    Ubuntu 26.04.1 LTS リリース 2026年8月27日、Ubuntu 26.04.1 LTS がリリースされました。
  • Kubuntu その117 - Kubuntu 26.04 LTS にもっと手厚いサポートを・最高の信頼性を誇る KDE 搭載ディストリビューションを目指して
    最高の信頼性を誇る KDE 搭載ディストリビューションを目指して Kubuntu 26.04 LTS に手厚いサポートが導入されました。
  • Linux その421 - GNOME Shell のデザイン構想と長期的な見通し
    GNOME Shell のデザイン構想と長期的な見通し GNOME Shell のデザイン構想と長期的な見通しが、以下で紹介されています。
  • Linux その420 - KDE Plasma で実装予定の新機能や改善・UI レイアウトの調整やリモートデスクトップの改善など
    KDE Plasma で実装予定の新機能や改善 KDE Plasma で実装予定の新機能や改善を紹介します。
  • Windows その29 - Windows 向け Coreutils 登場・Coreutils のインストールやコマンドの一覧など
    Windows 向け Coreutils 登場 Windows 向け Coreutils が登場しました。
  • Linux その386 - Arch Linux の AUR パッケージで悪意あるコミットが続く・今度はソースコードの難読化か
    Arch Linux の AUR パッケージで悪意あるコミットが続く Arch Linux の AUR パッケージで悪意あるコミット(マルウェア)が続いています。
  • Ubuntu 18.04 その195 - PolicyKitにクラッシュや権限の昇格など複数の脆弱性・今すぐアップデートを
    PolicyKitの脆弱性 2018年7月16日、クラッシュや権限の昇格など複数の脆弱性に対応した「PolicyKit」がリリースされました。
記事のピックアップ
オプション