Ground Sunlight

Windowsで作る - PHPプログラミングの開発環境

ユーザ用ツール

サイト用ツール


wsl2:centos7

文書の過去の版を表示しています。


WSL2 CentOS7のインストール

— y2sunlight 2020-12-08

WSL2に戻る

関連記事

リンク

本章では、WSL2でのCentOS7のインストールについて説明します。現時点(2020-12-08)で、WSL用の CentOS は Microsoft Store で公開されているにも関わらず、有償でしかも公式でもなく、レビューもついていません。従って、GitHubから入手してインストールします。

本章でインストールするCentOS7は以下の通りです:

  • CentOS 7.6

ダウンロード

以下のサイトにアクセスします:

ここではWSL用の各種CentOSが配布されています(感謝です!!)。

本章では、WSL2にCentOS7を設置するので、7.0.1907.3 をダウンロードします。

■ CentOS7.zip をクリックしてzipファイルをダウンロードします。

インポート用のファイルの作成

zipファイルの中には、以下のファイルが含まれています:

CentOS7.exe
rootfs.tar.gz

wsldl-pg/CentWSL のドキュメントによれば CentOSのインストールは、CentOS7.exe で行うようになってますが、本編では、wsl コマンドを使ってインポートします。これは、他のLinuxディストリビューションと同じ運用方法にしたいからで、それ以外の理由はありません。

ダウンロードしたzipファイルを解凍して rootfs.tar.gz を取り出し、分かり易い名前に変更して、所定のフォルダに移動します。本章では、以下のファイルをWSL用のCentOS7のインポートファイルとします。

D:\WSL2\Exports\CentOS7.6.1907.tar.gz
wsl コマンドは tar.gz もインポートしてくれるようなので、tar-ballに変換せず、このままで使用します。


インポート

wsl –import コマンドを使って、先に保存した tar.gz ファイルをインポートします。

PS C:\> wsl --import CentOS7.6 D:\WSL2\Packages\CentOS7.6.1907 D:\WSL2\Exports\CentOS7.6.1907.tar.gz

wsl –import コマンドに関しては本編の「WSL2 ディストリビューションの複製」を参照して下さい。

wsl -l -v でディストリビューションの一覧を表示し、インポートを確認します。

  NAME            STATE           VERSION
* Ubuntu-20.04    Stopped         2
  CentOS7.6       Stopped         2


起動

先にインポートした CentOS7.6 を wsl -d コマンドで起動します。

PS C:\> wsl -d CentOS7.6

この時、Power Shell が bash に切り替わりCentOSが利用できるようになります。

以下のコマンドでCentOSのバージョンを確認してみましょう:

$ cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)

PowerShell に戻るには、exit または logout コマンドを使います。

$ exit


CentOSの初期設定

この段階では、ユーザは root しか存在しません。以下は全てrootユーザから設定している例になります。

管理者(root)のパスワード設定

rootユーザのパスワードが分からないので、最初に設定しておきます:

# passwd


新しいユーザの追加

ユーザを作成します:

# adduser --shell /bin/bash y2sunlight

作成したユーザにグループを追加します:

# usermod -G adm,wheel,dialout,cdrom,floppy,audio,video y2sunlight

これらのグループは、必要に応じて追加・削除して下さい。wheel グループは /etc/sudoers の設定で必要なグループです。

ユーザ情報を確認します:

# id y2sunlight
uid=1000(y2sunlight) gid=1000(y2sunlight) groups=1000(y2sunlight),4(adm),10(wheel),11(cdrom),18(dialout),19(floppy),39(video),63(audio)


/etc/sudoers

開発用のローカルサーバなので、rootで運用しても良いですが、sudo の設定もしておきます。viduso を実行して /etc/sudoers の wheel グループの箇所を書き換え、sudo でパスワードが不要になるように設定します:

$ visudo
sudoers
## Allows people in group wheel to run all commands
- # %wheel  ALL=(ALL)       ALL
+ %wheel  ALL=(ALL)       ALL
 
## Same thing without a password
- # %wheel        ALL=(ALL)       NOPASSWD: ALL
+ %wheel        ALL=(ALL)       NOPASSWD: ALL

この設定で wheel グループに入っているユーザは、sudo でパスワードが不要になります。

パッケージの更新

パッケージを最新の状態に更新します:

$ yum -y update  # パッケージを最新に更新する

これ以降、Ubuntu には ユーザ y2sunlight でログインして操作します。


Windowsの初期設定

PowerShellからの起動

PowerShellから起動するには以下のようにします。

PS C:\> wsl -d Ubuntu-20.04-2 -u y2sunlight
  • -d でディストリビューション名を指定してす。
  • -u でユーザ名を指定してす。

Windowsターミナルをご利用の場合は、[プルダウンメニュー]から[Ubuntu-20.04-2]を選択できます。


Windows ターミナルの設定

Windowsターミナルを起動し、[プルダウンメニュー]から[設定]を選択します。

setting.json を開き、“name” がインポート時に指定したディストリビューション名( “Ubuntu-20.04-2” ) と同じターミナルを探し、その設定を以下のように変更して下さい。

{
    "guid": "{048a85e4-0278-5ae1-8add-531a3d3eb4ac}",
    "hidden": false,
    "name": "Ubuntu-20.04-2",
    "source": "Windows.Terminal.Wsl",
+   "commandline": "wsl.exe -d Ubuntu-20.04-2 -u y2sunlight",
+   "startingDirectory": "//wsl$/Ubuntu-20.04-2/home/y2sunlight"
}
  • "commandline" — 起動コマンドを指定します。
    ここでは、-d でディストリビューション名を、-u でユーザ名を指定してす。
  • "startingDirectory" — シェル起動時の開始ディレクトリを指定します。


ショートカットの作成

ショートカットを作成することで、新しいCentOSのbash を簡単に起動できます。デスクトップ上を右クリックして[新規作成][ショートカット]を選択し、以下の内容でショートカットを作ります。

項目の場所wsl -d CentOS7.6
ショートカットの名前CentOS7.6


登録解除

インポートした Ubuntu を登録解除(アンインストール)するには、wsl –unregister コマンドを使います。

PS C:\> wsl --unregister Ubuntu-20.04-2

このコマンドには、実行の確認がないので、注意して下さい。実行されると直ぐに、登録解除され、Ubuntu のイメージは削除されてしまいます。


wsl2/centos7.1607998066.txt.gz · 最終更新: by y2sunlight