【WSL】 割り当てるディスク領域を増やす
こちらで紹介した方法で、STARのindex作成を行ったところ、以前は成功していたのに同じコマンドでエラーが出るようになった。
エラー画面
書き込み権限関係かと思っていたが、調べてみるとディスク書き込み容量のせいだとか。
https://github.com/alexdobin/STAR/issues/410
https://groups.google.com/g/rna-star/c/qkGJFlE5qh8
しかし、WSLがあるドライブはまだまだ空き容量がある。
ということでWSLに割り当てられているドライブ容量を変更する。
手順
1. WSLを終了
Powershellでwsl --shutdown
する。
(wsl -l -v
で全てのディストリビューションが終了していることを確認できる。)
Docker Desktopが動いているときはwsl --shutdown
でちゃんと終わらないかも。タスクバーのDockerアイコンを右クリックしてメニューから終わらせる。
2. diskpart
管理者権限でコマンドプロンプトを立ち上げて、diskpart
と打ち込む。
プロンプトが「DISKPART> 」に変わる。
3. 仮想ディスクファイルを選択
「ext4.vhdx」というファイルのファイルパスを使用する。私の場合は次のようなパスであった。
select vdisk file="C:\Users\admin\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu_79rhkp1fndgsc\LocalState\ext4.vhdx"
4. ディスク割り当てサイズを指定する。
detail vdisk
コマンドで現在のディスク割り当てが確認できる。
この仮想サイズの上限を上げる。
MB単位で指定するとのこと。1024 GB (1024000 MB)から2048000 MBへ変更する。
expand vdisk maximum=2048000
再び詳細を見ると、仮想サイズの上限が上がっていた。(2048GBではなく2000GBになっていた。)
5. DiskPartを終了
exit
でDiskPartを終了する。
exit
6. WSL側も設定
紹介通り進めた。
sudo mount -t devtmpfs none /dev
mount | grep ext4
私の場合は「sdc」だが、ここはドライブによって変わる?みたい。一つ上のコマンドの出力を参照すればいいみたい。
sudo resize2fs /dev/sdc 2048000M
これでSTAR index作成でのディスク容量エラーが解消した。
compact vdisk
も行ったが、私の場合は効果が無かった。
https://qiita.com/siruku6/items/c91a40d460095013540d#5-diskpartを使う
Discussion