##前回までの記事のあらすじ
Realsense435を使って画像認識デバイスを作成するにあたって、
WSL(1)環境(Windows10 1904,Ubuntu 18.04)にてRealsense435の動作確認を実施しようとしたところ起動しなかった。
前回記事:https://docs.microsoft.com/en-us/windows/wsl/install-win10
##概要
WSL1だとWindows側のGPUを認識できないという問題があったが、記事投稿後の数日後の2020/5/19 「Builed 2020」にてWSL2の新機能が発表されたため、まずWSL1からWSL2にバージョンアップを実施してみた。(WSL1が有効になっている状態でWSL2をインストールする)
WSL概要
https://www.google.co.jp/amp/s/forest.watch.impress.co.jp/docs/news/1253/524/amp.index.html
参考にしたのは以下MS公式ページ
https://docs.microsoft.com/en-us/windows/wsl/install-win10
##やったこと
###1.Windows バージョンアップデート
WSL2を利用するためには、Windows10 2004のバージョンである必要があり、現在('20/5月時点)はWindows Insider Previewに参加し2004にUPdateしなければならない。
1)Windows Insider Previewサイトから手順に従って最新ビルドをダウンロードをしてインストールを完了させる。
https://insider.windows.com/ja-jp/about-windows-insider-program/
※希望するpreviewビルドの種類はSlowを選択するのがおススメ。不具合などのリスクがあるためより製品版に近い「Slow」が推奨されている
Windows Insider Preview
※再起動なりで数時間はかかりました。インストール時は一晩寝かせておくがおススメ。
###2.WSLの設定確認
1)もともとWSL1を有効にしていたので、改めてWindows Subsystem for Linuxが有効になっていることを確認。
2)「仮想マシンプラットフォーム」オプションコンポーネントを有効にする
WSL 2をインストールする前に、「仮想マシンプラットフォーム」オプション機能を有効にする必要があります。
LinuxのWindowsサブシステムのオプションを有効に
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
3)再起動
###3.WSLのバージョンアップ
1)現在のWSLバージョンを確認(WSL1であることを確認)
wsl --list --verbose
2)WSLのバージョンを設定する(WSL1→WSL2)
wsl --set-version <distribution name> <versionNumber>
→WSL2を実行するにはカーネルコンポーネントの更新が必要らしい。
3)Linuxカーネルコンポーネントの更新
以下手順に従い更新を実施。
https://docs.microsoft.com/ja-jp/windows/wsl/wsl2-kernel
→「BIOSの仮想化が有効になっていることを確認してください」
4)UEFI(BIOS)の仮想化支援機能を有効にする
UEFI(BIOS)の仮想化支援機能が無効になっていることが原因らしい
https://qiita.com/poramal/items/3562472d52fe60f61c56
5)改めてWSL1からWSL2にアップデートを実施。→成功!!
##あとがき
・WSL2をデフォルトにしたい場合
wsl --set-default-version 2
・Xサーバーを起動し忘れないように前回の記事でインストールしたVcXsrvをスタートアップメニュー(Windows+Rでshell:startupを実行してVcXsrvショートカットを格納)に起動しておくことをおススメする。
・次回記事はWSL2に変更して、Realsenseがubuntuから起動することができるか確認する。
##参考
Microsoft windows subsystem for linux インストールガイド
https://docs.microsoft.com/ja-jp/windows/wsl/install-win10
WSL2におけるVcXsrvの設定
https://qiita.com/ryoi084/items/0dff11134592d0bb895c