Windows10 環境を再構築中です。
Windows Subsystem for Linux(WSL) が必要な環境なのですが、WSLはデフォルトではインストールされないので、そのセットアップも必要です。
WSLのセットアップは過去何回も行っていますので、悩むことはないと思っていたのですが、予定とは異なり、はまりました。これはそのメモ。
まず、素のWindows10状態からWSLを動かすためには、Microsoft Store から自分が必要とするLinuxディストリビューションをインストールする必要があります。WSL1.xのころは、ディストリビューションの選択肢はありませんでしたが、今は、DebianでもUbuntuでも選択できます。選択肢が増えたのは良いものの、実際に動くようになるまでが遠い。
続いて、Windows側の設定。コントロールパネルの「プログラムと機能」から Linux用Windowsサブシステム を有効にしてOSを再起動する必要があります。これでようやく、Debianメニューが使えるようになりましたが、bash からコマンド入力できるかと思ったら、そうはならず。Debianを起動すると、そこでやっとLinux環境の初期化が始まり数分待たされたのちに、Linuxコマンド入力できるようになりました。
必要なパッケージをネットワークからインストールする必要がありますが、「sudo apt-get install パッケージ名」を行っても、
E: Unable to locate package パッケージ名
となってしまい、パッケージをインストールできない!前のメモを見たら、特に設定は必要ない感じなんだけどな~。何だろう?
unable to locate なので、パッケージが置いてあるサーバーが見つからないとか、ディレクトリー構造が異なるとかだと思いますが、この段階で設定ファイルを手で編集する必要はないはず。aptコマンドのオンラインヘルプを見て、いろいろオプションを試したら、update オプションを使ったところで、必要な設定ファイルが更新され、apt コマンドでパッケージをインストールが動くようになりました。
# apt update Get:1 http://deb.debian.org/debian bullseye InRelease [116 kB] Get:2 http://deb.debian.org/debian bullseye-updates InRelease [39.4 kB] Get:3 http://security.debian.org/debian-security bullseye-security InRelease [44.1 kB] Get:4 http://ftp.debian.org/debian bullseye-backports InRelease [44.2 kB] Get:5 http://deb.debian.org/debian bullseye/main amd64 Packages [8183 kB] Get:6 http://deb.debian.org/debian bullseye/main Translation-en [6243 kB] Get:7 http://deb.debian.org/debian bullseye-updates/main amd64 Packages [2596 B] Get:8 http://deb.debian.org/debian bullseye-updates/main Translation-en [2343 B] Get:9 http://security.debian.org/debian-security bullseye-security/main amd64 Packages [120 kB] Get:10 http://security.debian.org/debian-security bullseye-security/main Translation-en [77.0 kB] Get:11 http://ftp.debian.org/debian bullseye-backports/main amd64 Packages [209 kB] Get:12 http://ftp.debian.org/debian bullseye-backports/main Translation-en [169 kB] Fetched 15.2 MB in 7s (2166 kB/s) Reading package lists... Done Building dependency tree... Done Reading state information... Done 17 packages can be upgraded. Run 'apt list --upgradable' to see them.
私の必要とするパッケージを以下のコマンドでインストール。(radishでラジコをタイマー録音。)
apt-get install curl jq ffmpeg libxml2-utils
この後で、スクリプトやらcronの設定が必要ではありますが、環境は準備できました。
まとめると、新規 Windows10 20H2 で WSL上にパッケージをインストールしてLinuxのスクリプトを使えるようにするには、
- Microsoft Store から Linux ディストリビューションを入れる
- コントロールパネルの「プログラムと機能」→「Windowsの機能の有効かまたは無効化」 からLinux用Windowsサブシステム を有効化
- Debian の場合、apt update を発行したのちに、apt-get でパッケージをインストール。
このあとで、ようやくオプションインストールしたコマンドが使えるようになります。