内です。過去2回までで、windows10の標準機能となったwindows subsystem for linux(WSL1)を有効化してkali linuxを動かす手順と、WSL2を有効化してubuntuを動かす手順をご紹介しました。
「ギーク」の行動指針はギークたる探求心を持ち続けよう的なものと、ギークとして他を圧倒する技術的得意分野を持ちつつ、ジェネラリスト的なフルスタックなエンジニアを目指そう的なものですが、
「フィード」のほうは、「伝えることへのこだわりを持つ」というものです。
素晴らしい技術をもっていても世の中やお客さんに伝えることが出来なければ自己満足でおわってしまうので、伝える力も養いましょうということですね。
実は、このギークブログを開始したきっかけも、「伝える力」を養うための施策の1つという真っ当な理由でした。
また、ギークフィードでは毎年忘年会の時に、
- 月間平均ブログのアクセス数
- 月間検索エンジンでのブログの表示数、
- 月間ブログの滞在時間
等々の1年間でどれだけブログの成果をあげたかを図る指標によって、ブログ大賞を表彰しているのですが、前回の私のwsl2の記事が昨年のブログアクセス数で
1位に表彰され景品も貰を頂きました(フライパン)。ありがとうございます。表彰したのも私ですけどね。
wsl上のCentOS難民を救済
MicrosoftStoreに公開されているCentOSは無料じゃない!?
前々回記事でインストールしたKaliLinuxはDebianベースです。
前回記事でインストールしたUbuntuもDebianベースです。
そうすると当然CentOSもインストール置きたくなりますよね。
そこでMicrosoftStoreでwslで検索すると、おー。あったあった。CentOS。
と思った直後に、よく見ると・・・大抵の人は愕然とするわけですね。
なんと、CentOSは無料じゃない。230円で販売されてます。RedHatじゃなくてCentOSだよね。
フリーじゃないの?そんな大金払えんよと諦める事になります。
製品の評価を表す★マークを見てもUbuntuにおいては評価44個で星4.5、KaliLinuxですら評価6個に星4.5あるのにCentOSとCentOS7においては評価も星もゼロであることからも、大抵の人がここでインストールをためらい、諦めているのが一目瞭然ですね。
ちなみにMicrosoftStoreアプリはそのアプリの公開者情報が見ることができます、
この有料版CentOSの公開者情報を見ると、公開者が漢字で表記されていて、CentOS公式じゃないことが判明します。赤い四角で囲ってあるところが公開者です。
ここで挫折するのはまだ早い、githubにwsl用のCentOSが公開されてます。
CentOSよりUbuntuの方が人気なようだ
ところでCentOSとUbuntuどっちが人気なんだろうと気になってちょっと調べてみました。
人気度を図る毎度お馴染みGoogle Trends先生でCentOSとUbuntuの人気度を過去一年で比較してみると、世界ではUbuntuのほうが圧倒的に人気なようです。
日本でもUbuntuのほうが人気ですけど、全世界で見た時ほどの人気の差はないようです。
wsl用CentOS8導入手順
githubからダウンロード
MicrosoftStoreで有料だったからといって諦めるのは早い。CentOS8のwsl用rootfsファイルがgithub上でCentWSLというプロジェクト名で公開されてますので、これを利用します。
CentOS7とCentOS8が公開されてますが、CentOS8は、2020/02/07執筆時点で、1時間前にリリースされたばかりの出来立てほやほやプレリリース版です。
ちなみにwsl2専用と書いてあります。
当然意識の高い最新のCentOS8プレリリース版を入れますので、以下リンクからダウンロードしましょう。
CentOS8用zipダウンロード
解凍し、インストール
ダウンロードしたzipを解凍すると、
CentOS8.exe
rootfs.tar.gz
というファイルが入っています。githubに公開されているプロジェクトのREADME.mdに従うと、ここでCentOS8.exeを実行すればCentOS8が登録されてることになっているのですが、この方法だと、ダウンロードしたCentOS8.exeファイルがあるフォルダにcentos8のハードディスクイメージファイルvhdxが作成され、そこから移動させられない不便さがあるので、今回はwslコマンドからインポートするという手段を選択します。
インポート先ディレクトリの作成
そのためには、まずインポート先のディレクトリを作成します。
MicrosoftStoreからインストールしたubuntuやkali-linuxなどのwslのファイルシステムは
1 |
%userprofile%\AppData\Local\Packages |
の下に作成されています。
そして、先にインストールしたUbuntu-18.04のフォルダ名は
CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc
kali-linuxのフォルダは
KaliLinux.54290C8133FEE_ey8k8hqnwqnmg
となっています。
同じフォルダ構成にするため、エクスプローラを立ち上げて、アドレス欄にそのまま
1 |
%userprofile%\AppData\Local\Packages |
と入力し、CentOS8というフォルダを作成してください。
rootfs.tar.gzからrootfs.tarを取り出す
次に、rootfs.tar.gzを解凍ソフトで解凍して、rootfs.tarにします。
wslコマンドでrootfs.tarを指定してインポート
最後にコマンドプロンプトを起動して、wslコマンドでこのrootfs.tarを登録します。
1 |
wsl --import CentOS8 "%userprofile%\AppData\Local\Packages\CentOS8" "C:\Users\uchi\Desktop\rootfs.tar" --version 2 |
このとき、–importの後の
- 第一引数CentOS8は、wsl -l -vコマンドを実行したときに表示されるディストリビューション名になります、他の名前にしても構いません。
- 第二引数の”%userprofile%\AppData\Local\Packages\CentOS8″は、インストール先になります。
- 第三引数の”C:\Users\uchi\Desktop\rootfs.tar”は、先ほど解凍して取り出した、インストール元のrootfs.tarファイルになります。
- 最後の–version 2は、今回取り出したCentOS8がwsl2専用と記載されていたため、wsl2としてインスト-ルします。
という意味です。
第一引数のディストリビューション名と第二引数のインストール先を変更すれば、複数インストールできますね、そういう意味でもwslコマンドでimportしたほうが便利!!
確認
wsl2で登録されいてることを、コマンドプロンプトから確認
1 2 3 4 5 |
C:\Users\uchi>wsl -l -v NAME STATE VERSION * Ubuntu-18.04 Running 2 CentOS8 Stopped 2 kali-linux Running 1 |
wslのCentOS8を起動
コマンドプロンプトから、wslコマンドでCentOS8を起動
1 2 |
C:\Users\uchi>wsl -d CentOS8 [root@CP747755-01 uchi]# |
ショートカット作成
ショートカットを作っておくと便利でしょう。
- 項目の場所:項目の場所C:\Windows\System32\wsl.exe -d CentOS8
- ショートカットの名前:CentOS8
ショートカットを作成して起動し、以下コマンドでcentos8がwsl2で起動できていることが確認できました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
[root@CP747755-01 uchi]# cat /etc/os-release NAME="CentOS Linux" VERSION="8 (Core)" ID="centos" ID_LIKE="rhel fedora" VERSION_ID="8" PLATFORM_ID="platform:el8" PRETTY_NAME="CentOS Linux 8 (Core)" ANSI_COLOR="0;31" CPE_NAME="cpe:/o:centos:centos:8" HOME_URL="https://www.centos.org/" BUG_REPORT_URL="https://bugs.centos.org/" CENTOS_MANTISBT_PROJECT="CentOS-8" CENTOS_MANTISBT_PROJECT_VERSION="8" REDHAT_SUPPORT_PRODUCT="centos" REDHAT_SUPPORT_PRODUCT_VERSION="8" |
CentOS8をwsl2上で動かす手順まとめ
- MicrosoftStore上に有料のCentOSがあるが、githubから入手して無料で入れられる。
- githubの手順だと、インストール先の設定が不便なのでrootfs.tar.gzだけ利用してwslコマンドでインストールしましょう。
- wslコマンドでインストールする際に、ディストリビューション名をかえてCentOS8をいくつでもインストールできるので便利。
- ショートカットつくっておくと便利。
あわせて読みたい
- 2023年ギークフィードが評価されて表彰されたことの振り返りとアピール - 2023-12-24
- Linuxコンソールで、本番、ステージング、テスト環境を混同しないための4つの工夫 - 2023-09-13
- Amazon Linux 2023を触ってみて質問がありそうなことをまとめてみました。 - 2023-03-22
- AmazonLinux3じゃなくってAmazon Linux 2022 (AL2022) だってさ。 - 2022-01-31
- 【祝:月間PV6万越え】2021年のギークブログ大賞を発表します。 - 2022-01-10