WSL2&Linux導入 正式なSystemdに対応!(AmazonLinux2023)
2024/03/08
2024/03/12
通常、WindowsへLinuxを導入するとなると従来なら圧倒的にVirtualBoxを使用するケースが多かった。しかし今はWSLがある。しかもWSL1からWSL2になったことで更にパワーアップした。一番の凄さはメモリ共有と限りなくネイティブ動作の速度に近いことだろう。Hyper-Vのおかげだな。
WSL1からWSL2への進化
WSL1ではLinuxでサーバーデーモンを管理するsystemdが直接使えなかったので工夫が必要だった。これは過去の投稿でもWSLのLinux紹介で行っている攻略方法で実現可能だ。
しかし今はWSL2 Linuxがあるのでsystemdが使えるのだ。しかもWindows APIも使用していないので高速&安定動作している。
WSL2へのインストール
WSL2のインストールは新規であればpower shellから導入するかマイクロソフトストアから導入が可能だ。
ここではマイクロソフトストアから導入する方法を案内する。
インストールしたら念の為、再起動しよう。
Linux(Amazon Linux2023)の準備
AmazonLinux2023は公式にはマイクロソフトストアには登録されていない。そのためDockerのイメージから拝借して作る方法をトライしてみよう。このやり方はAmazon Linuxに偏ったやり方ではない。dockerに登録されているLinuxならどれでも応用できる。
1234567891011
docker pull amazonlinuxdocker run -it amazonlinux uname -adocker ps -a※コンテナIDメモ※必要であれば「docker exec -it コンテナID /bin/bash」でターミナル接続しdnf install パッケージ名で自分の必要なものを追加しよう。最後は「docker commit コンテナID レポジトリ名」でオリジナルアップ用のイメージ作成する docker export コンテナID > C:\Users\ユーザ名\amazonlinux.tarmkdir C:\AMLinuxwsl --import AmazonLinux2023 C:\AMLinux C:\Users\ユーザ名\amazonlinux.tar※コンテナIDはその都度インスタンス生成時にユニークに発行されます。
Linux(Amazon Linux2023)をWSL2環境へインポートする
12345678
wsl -s AmazonLinux2023 #規定設定(WSLのデフォルト bashで起動できます)※デフォルト設定のタイトルLinuxを指定することでコマンドプロンプトからbashと入力することで設定したLinuxが起動できます。 wsl -d AmazonLinux2023 #デフォルトでない指定タイトルのLinux起動はこれ。 以上起動方法2種類案内したが使いやすい方法でどうぞ!wsl -l -v #WSLに登録したLinuxのタイトル一覧
Linuxの起動の調整
下記はLinux起動時にsystemdが使えるようにする。実はデフォルトでは使えないのだ。/etc/wsl.confを編集してあげることで起動時に自動で読み込みます。またログインユーザはデフォルトではユーザがrootなのでuseraddコマンドで一般ユーザ作成しましょう。下記はstaffユーザを作成したとしてのサンプルです。作成後に一度Linuxを終了して再度起動してください。
コマンドプロンプトで「 wsl −−shutdown 」を実行し完全にLinuxを終了させます。つまりWSL2 LinuxをexitしてもLinuxは起動しています。セッションが切れただけなので設定を適用するにはシャットダウンが必要なのです。またbashで起動すればsystemdが起動しstaffユーザでログイン出来ることでしょう。
12345678
# vi /etc/wsl.conf -----以下編集----------[boot]systemd=true[user]default=staff-----------------------
WSL1ではLinuxでサーバーデーモンを管理するsystemdが直接使えなかったので工夫が必要だった。これは過去の投稿でもWSLのLinux紹介で行っている攻略方法で実現可能だ。 しかし今はWSL2 Linuxがあるのでsystemdが使えるのだ。しかもWindows APIも使用していないので高速&安定動作している。
WSL2のインストールは新規であればpower shellから導入するかマイクロソフトストアから導入が可能だ。 ここではマイクロソフトストアから導入する方法を案内する。
インストールしたら念の為、再起動しよう。
Linux(Amazon Linux2023)の準備
AmazonLinux2023は公式にはマイクロソフトストアには登録されていない。そのためDockerのイメージから拝借して作る方法をトライしてみよう。このやり方はAmazon Linuxに偏ったやり方ではない。dockerに登録されているLinuxならどれでも応用できる。
1234567891011
docker pull amazonlinuxdocker run -it amazonlinux uname -adocker ps -a※コンテナIDメモ※必要であれば「docker exec -it コンテナID /bin/bash」でターミナル接続しdnf install パッケージ名で自分の必要なものを追加しよう。最後は「docker commit コンテナID レポジトリ名」でオリジナルアップ用のイメージ作成する docker export コンテナID > C:\Users\ユーザ名\amazonlinux.tarmkdir C:\AMLinuxwsl --import AmazonLinux2023 C:\AMLinux C:\Users\ユーザ名\amazonlinux.tar※コンテナIDはその都度インスタンス生成時にユニークに発行されます。
Linux(Amazon Linux2023)をWSL2環境へインポートする
12345678
wsl -s AmazonLinux2023 #規定設定(WSLのデフォルト bashで起動できます)※デフォルト設定のタイトルLinuxを指定することでコマンドプロンプトからbashと入力することで設定したLinuxが起動できます。 wsl -d AmazonLinux2023 #デフォルトでない指定タイトルのLinux起動はこれ。 以上起動方法2種類案内したが使いやすい方法でどうぞ!wsl -l -v #WSLに登録したLinuxのタイトル一覧
Linuxの起動の調整
下記はLinux起動時にsystemdが使えるようにする。実はデフォルトでは使えないのだ。/etc/wsl.confを編集してあげることで起動時に自動で読み込みます。またログインユーザはデフォルトではユーザがrootなのでuseraddコマンドで一般ユーザ作成しましょう。下記はstaffユーザを作成したとしてのサンプルです。作成後に一度Linuxを終了して再度起動してください。
コマンドプロンプトで「 wsl −−shutdown 」を実行し完全にLinuxを終了させます。つまりWSL2 LinuxをexitしてもLinuxは起動しています。セッションが切れただけなので設定を適用するにはシャットダウンが必要なのです。またbashで起動すればsystemdが起動しstaffユーザでログイン出来ることでしょう。
12345678
# vi /etc/wsl.conf -----以下編集----------[boot]systemd=true[user]default=staff-----------------------
AmazonLinux2023は公式にはマイクロソフトストアには登録されていない。そのためDockerのイメージから拝借して作る方法をトライしてみよう。このやり方はAmazon Linuxに偏ったやり方ではない。dockerに登録されているLinuxならどれでも応用できる。
1 2 3 4 5 6 7 8 9 10 11 |
docker pull amazonlinux docker run -it amazonlinux uname -a docker ps -a ※コンテナIDメモ ※必要であれば「docker exec -it コンテナID /bin/bash」でターミナル接続し dnf install パッケージ名で自分の必要なものを追加しよう。 最後は「docker commit コンテナID レポジトリ名」でオリジナルアップ用のイメージ作成する docker export コンテナID > C:\Users\ユーザ名\amazonlinux.tar mkdir C:\AMLinux wsl --import AmazonLinux2023 C:\AMLinux C:\Users\ユーザ名\amazonlinux.tar ※コンテナIDはその都度インスタンス生成時にユニークに発行されます。 |
1 2 3 4 5 6 7 8 |
wsl -s AmazonLinux2023 #規定設定(WSLのデフォルト bashで起動できます) ※デフォルト設定のタイトルLinuxを指定することでコマンドプロンプトから bashと入力することで設定したLinuxが起動できます。 wsl -d AmazonLinux2023 #デフォルトでない指定タイトルのLinux起動はこれ。 以上起動方法2種類案内したが使いやすい方法でどうぞ! wsl -l -v #WSLに登録したLinuxのタイトル一覧 |
Linuxの起動の調整
下記はLinux起動時にsystemdが使えるようにする。実はデフォルトでは使えないのだ。/etc/wsl.confを編集してあげることで起動時に自動で読み込みます。またログインユーザはデフォルトではユーザがrootなのでuseraddコマンドで一般ユーザ作成しましょう。下記はstaffユーザを作成したとしてのサンプルです。作成後に一度Linuxを終了して再度起動してください。
コマンドプロンプトで「 wsl −−shutdown 」を実行し完全にLinuxを終了させます。つまりWSL2 LinuxをexitしてもLinuxは起動しています。セッションが切れただけなので設定を適用するにはシャットダウンが必要なのです。またbashで起動すればsystemdが起動しstaffユーザでログイン出来ることでしょう。
12345678
# vi /etc/wsl.conf -----以下編集----------[boot]systemd=true[user]default=staff-----------------------
下記はLinux起動時にsystemdが使えるようにする。実はデフォルトでは使えないのだ。/etc/wsl.confを編集してあげることで起動時に自動で読み込みます。またログインユーザはデフォルトではユーザがrootなのでuseraddコマンドで一般ユーザ作成しましょう。下記はstaffユーザを作成したとしてのサンプルです。作成後に一度Linuxを終了して再度起動してください。
コマンドプロンプトで「 wsl −−shutdown 」を実行し完全にLinuxを終了させます。つまりWSL2 LinuxをexitしてもLinuxは起動しています。セッションが切れただけなので設定を適用するにはシャットダウンが必要なのです。またbashで起動すればsystemdが起動しstaffユーザでログイン出来ることでしょう。
1 2 3 4 5 6 7 8 |
# vi /etc/wsl.conf -----以下編集---------- [boot] systemd=true [user] default=staff ----------------------- |