WSL上のLinuxをCドライブから移動させる
はじめに_
Windows Subsystem for Linux (以下、WSL)では標準でCドライブにLinuxがインストールされる。インストール済みのLinuxを別ドライブに移動させる手順についてまとめる。
参考サイト_
移動させることによるデメリット_
以下のデメリットがある(2020年12月13日時点)
- 標準アイコンからの起動ができない
- 起動時に設定しないと、デフォルトユーザがrootになる
- 起動時にデフォルトユーザを指定しても、ターミナル起動時のカレントディレクトリがホームディレクトリでない
- 「設定」→「アプリ」→「アプリと機能」からアンインストールできない
前提_
- Ubuntuがインストール済み
- Ubuntuのデフォルトユーザ(Ubuntu起動時のユーザ)はgotoh
- DドライブにWSL-Linuxというフォルダが存在し、そこにLinuxを移動させるとする
- コマンドはPowerShell上から実行するとする(管理者権限での実行が必要かどうかは失念)
以下ではUbuntu 18.04を例に進めているが、他のバージョンでも同様なので、適宜読み替えること。
WSLを停止させる_
まず、起動中のWSLを停止させる。PowerShell上で以下を実行する。
wsl --shutdown
実行状態を確認する。
wsl -l -v NAME STATE VERSION * Ubuntu-18.04 Stopped 1
エクスポートする。_
PowerShell上でUbuntu 18.04をエクスポートする。
wsl --export Ubuntu-18.04 D:\WSL-Linux\Ubuntu-18.04.tar
Ubuntuのアンインストール_
PowerShell上でUbuntu 18.04を削除する。
wsl --unregister Ubuntu-18.04
アンインストールされていることを確認する。
wsl --list --verbose Linux 用 Windows サブシステムには、ディストリビューションがインストールされていません。 ディストリビューションは Microsoft Store にアクセスしてインストールすることができます: https://aka.ms/wslstore
Ubuntuのインポート_
PowerShell上で以下のコマンドを実行する。この例ではWSL1上で動いていたUbuntu 18.04をWSL2上で動くように設定している。
wsl --import Ubuntu-18.04 D:\WSL-Linux\Ubuntu-18.04 D:\WSL-Linux\Ubuntu-18.04.tar --version 2
確認する。
wsl -l -v NAME STATE VERSION * Ubuntu-18.04 Stopped 2
起動用ショートカットを作成する_
適当な場所にショートカットを作成し、ショートカットをクリックすることでWSL上のLinuxを起動できるようにする。デスクトップなどで右クリックを押し「新規作成」→「ショートカット」を選択する。
「項目の場所」として以下を入力する。
C:\Windows\System32\wsl.exe -u 「Ubuntu 18.04の初期ユーザ名」 -d Ubuntu-18.04
ショートカットの名前を入力する。この例では「Ubuntu 18.04」としている。
WSL.EXEのショートカットは以下のLinuxペンギンになる。
ショートカット上で右クリックし「プロパティ」を選択すると以下の画面が開く。ここでアイコンやUbuntu起動時のフォルダ(ディレクトリ)を変更できる。「作業フォルダ」でUbuntu起動時のフォルダ(ディレクトリ)を変更できる。