Bash on Ubuntu on Windowsのchrootを試してみた
4/11の配信日が待ちきれないので、Insider Programに登録して新しいBash on Ubuntu on Windowsをいち早く試してみましたっ!
セットアップ
Windows Insider Program に登録し、Insiderのレベルを スロー に設定しました。
※登録してから更新が降ってくるまで、1日待ちました
Bash on Ubuntu on Windowsのバージョン確認
まずはBash on Ubuntu on Windowsの環境のバージョンを確認します。
uname -a
と cat /etc/lsb-release
で確認です。
uname -a
が
|
|
cat /etc/lsb-release
が
|
|
ですね。
ここで、Creators Updateしてない版のbash(以降、「現行」)の方も見てみましょう。
※別マシンなので解像度は小さいですが…‥
見ての通り、Ubuntuのバージョンが14.04
から16.04
に上がったのがわかります。
日本語の表示
現行ではターミナルに日本語を入力すると横が切れたりしますが、Creators Update適用後は切れずに表示されるよう改善されたみたいです。
chroot対応の確認 - コンテナで遊ぼう
現行のBash on Ubuntu on Windowsではchrootに対応しておらず、中でコンテナを起動させたり、無理やりArchLinuxを動かしてもpacman
でエラーが出るといった問題が発生1していました。
リリースノート2によると、Creators Updateにchroot対応が含まれているようです。そういうことなので、いろいろコンテナを作って試してみたいと思います。
※自分の中ではこれが今回の一番の目玉!!!
Ubuntuのコンテナの作成
必要なパッケージのインストール
|
|
debootstrapを使ったUbuntuのインストール
違いがわかりやすいよう、XenialではなくVividを入れます。
|
|
デバイスのマウント
bashを閉じる度に設定し直しになるので注意
|
|
ログインと確認
|
|
コンテナ内で
|
|
ちゃんと環境が変わってますね!
※少し遊んでみましたが、chroot環境ではターミナル内でスクロールできなかったり日本語を入力できなかったりしますね。()これは普通のLinuxとかでのchrootと同じかな)
sudo付きでchrootするとわかりやすいんですが、ホストのプロセスが見えてるっぽいんですよね……
Debianのコンテナの作成
※動かそうとしたらセグフォったのでパス!
ArchLinuxのコンテナの作成(ブートストラップイメージを使う方法)
ArchWiki3を見ながらインストールを進めます。
ブートストラップイメージの取得と展開
|
|
デバイスのマウント
|
|
pacmanの設定
pacmanで使用するmirrorlist
のファイルを先に修正しておきます。
|
|
好きなミラーサーバのコメントを外しておきます。
ログインと環境のセットアップ
ログイン
|
|
コンテナ内で環境をセットアップ
|
|
動作確認(gitのインストール)
|
|
Archちゃん動きました。
ArchLinuxのコンテナの作成(LiveCD イメージを使う方法)
airootfs.sfsの取得
|
|
airootfs.sfsからルートイメージの取り出し
|
|
デバイスのマウント
|
|
ログインと環境のセットアップ
ログイン
|
|
コンテナ内で環境をセットアップ
|
|
動作確認(gitのインストール)
|
|
どちらの方法でも動くようです。
環境をArchLinuxに入れ替える
前回(http://www.kunst1080.net/entry/2016/08/26/001940)と同じ手順でできました。
違うところは
- isoのダウンロード用URLが変わってるので要チェック
- resolv.conf書きましょう
- pacmanでエラー出なくなってました。
前よりちゃんと使えそうです。
ひとまずこんな感じで!
これは本格的に色々コンテナ作って遊べそうです!!
参考URL
- plans for alternative distributions: e.g. Fedora, ArchLinux, etc? · Issue #8 · Microsoft/BashOnWindows · GitHub
- Bash on Ubuntu on Windows - Release Notes
- BasicChroot - Community Help Wiki
- DebootstrapChroot - Ubuntu Wiki
- 既存の Linux からインストール - ArchWiki
- Bash on Ubuntu on WindowsにArchLinuxをセットアップする - くんすとの備忘録