超お手軽なUbuntu環境の構築ができる!WSLの使い方

Windows上でBash動かせないかなーと調べていたところ見つけたのが“Windows Subsystem for Linux”です。(略してWSL)

これはWindwos上でUbuntuなどのLinux OSの環境を作れるというもののようで、仕組みは詳しくわからないのですがUbuntuと同じようにaptやsudoを使うことができます。

この機能はFall Creators Updateで追加されたようなので試す際は最新のWindowsにアップデートしてください。

WSLの有効化

Win+Rを押してファイル名を指定して実行

appwiz.cplを入力

左上にあるWindwosの機能の有効化または無効化をクリック

Windwos Subsystem for Linuxにチェックを入れる

これでWSLの有効化ができました。

Ubuntuのインストール

WindowsストアでUbuntuと検索し、WindowsでLinuxを実行するをクリック

Ubuntuを選択しインストールして下さい。

ダウンロード・インストールが完了すればスタートなどから起動することができると思います。

Ubuntuの設定

パスワード・ユーザー名

初回起動時にユーザー名、パスワードを聞かれると思うので好きなように入力してください。

注意点としてパスワードは打っても画面には表示されませんのでご注意ください。

ソフトの更新

コマンドは一行ずつ入力してください。

sudo apt update
sudo apt upgrade

updateでキャッシュの更新、updateで実際のアップデート、みたいな感じです。

aptをapt-getに変えても同じ動作をします。

ソフトのインストール

多分Linuxをインストールするということは何かの目的があるのかと思いますが今回はApacheとphpをインストールしようと思います。

sudo apt install apache2 #apacheのインストール 
sudo apt install php #phpのインストール 
sudo apt-get install libapache2-mod-php #phpのモジュール 
sudo service apache2 start #サーバーのスタート

これでhttp://localhostにアクセスするとデフォルトのホームページが表示されると思います。

phpinfo.phpにアクセスしてphpの情報が表示されたら成功です。

sudo touch /var/www/html/phpinfo.php
sudo chmod 777 /var/www/html/phpinfo.php
sudo echo '<?php phpinfo();' > /var/www/html/phpinfo.php

systemctlは使えない

ほかにインストールしたいものなどあればググってその通りにやればうまくいくと思いますが注意点としてsystemctlコマンドを使おうとすると

sudo systemctl start <サービス名> 
Failed to connect to bus: No such file or directory

となりエラーになってしまうので、

sudo service <サービス名> start

のようにしてください。

またふつうのUbuntuではApacheなどはインストールすると自動で起動されますがWSLでは手動なのでそこもご注意ください。