15
15

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

WSL で Amazon Linux 2 を使用する

Last updated at Posted at 2018-11-19

概要

WSL では、linux ディストリビューションを起動することができます。
公式に対応するディストリビューションは、Microsoft Store から入手することになりますが、必要な条件を整えられれば、その他のディストリビューションを使用することもできます。

Amazon Linux 2 では、オンプレミスでの使用のために各種イメージファイルが配布されています。こちらの配布ファイルを利用して、WSL で Amazon Linux 2 を起動してみます。

Amazon Linux 2 イメージファイル

インストール・起動ツール

インストール・起動のために以下のツールを使用します。

GitHub - noumia/wsl-toyc

準備

あらかじめ Windows の機能の有効化 から 「Windows Subsystem for Linux」 を有効化しておきます。

Amazon Linux 2 イメージファイル配布サイトから、コンテナ用のイメージファイルを入手します。記事執筆時点での最新版は、以下のファイルになりました。

インストール

配布ファイルが、tar.xz フォーマットなので、tar.gz フォーマットへ圧縮変換を行います。
xz, gzip 等の変換ツールは、Git for Windows 等に付属しているものを使用するとよいでしょう。

> xz -d -c amzn2-container-raw-2.0.20181024-x86_64.tar.xz | gzip > rootfs.tar.gz

wsl-toyc.zip を展開して、アーカイブ内のファイルをリネームして、次のように配置します。起点となるフォルダーは、NTFS ファイルシステム上の任意の場所で良いようです。

amzn/rootfs.tar.gz # 上記で変換したイメージファイル
amzn/create-toyc.exe # wsl-toyc.zip 内のファイル
amzn.exe # wsl-toyc.zip 内の launch-toyc.exe をリネーム

amzn/create-toyc.exe を実行します。
エラーコード 0x80070005 が表示される場合は、「管理者として実行」で起動させてください。(以前は、管理者権限不要だったように記憶していますが、仕様変更されたようです。)

インストール成功すれば、数分ほどで、amzn/rootfs/ 以下に linux 環境のファイル群が展開されます。これらのファイルは、Windows 側から見ることができるのですが、直接書き込み操作を行うと、ファイル破損の原因になるので、触らないようにしてください。

起動

amzn.exe ファイルが、起動用実行ファイルになります。PATH 設定された、任意の場所に配置することができます。

初めに、パッケージの更新を行います。

> amzn yum update -y

インストールする時期によりますが、いくつかのパッケージが更新されるかと思われます。

amzn.exe を引数なしで実行すると、bash によるインタラクティブシェルが起動します。

Amazon Linux 2 をローカルで使用する目的としては、ソフトウェア開発があると考えられますが、開発ツールをインストールしてみます。

> amzn yum groupinstall -y "Development Tools"

gcc などの開発ツールが利用可能になります。

> amzn gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/7/lto-wrapper
Target: x86_64-redhat-linux
Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,objc,obj-c++,fortran,ada,go,lto --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array --with-isl --enable-libmpx --enable-libsanitizer --enable-gnu-indirect-function --enable-libcilkrts --enable-libatomic --enable-libquadmath --enable-libitm --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
Thread model: posix
gcc version 7.3.1 20180303 (Red Hat 7.3.1-5) (GCC)

話題の corretto も試してみましょう。
extras から、インストールできます。

> amzn amazon-linux-extras install -y corretto8
> amzn java -version
openjdk version "1.8.0_192"
OpenJDK Runtime Environment (build 1.8.0_192-amazon-corretto-preview-b12)
OpenJDK 64-Bit Server VM (build 25.192-b12, mixed mode)

良いようです。

Java コンパイラも必要なら、追加インストールします。

> amzn yum install -y java-1.8.0-amazon-corretto-devel
> amzn javac -version
javac 1.8.0_192

削除

環境が不要になったり、最初から作り直したい場合は、WSL 標準の wslconfig コマンドで、登録解除が可能です。

> wslconfig -u amzn
15
15
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
15

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?