WSL (Windows Subsystem for Linux) を使ってWindows 10でopenSUSEを動作させみた シリーズ
- 第1弾 : 本記事
- 第2弾 : [ユーザ追加編] (http://qiita.com/ApricotSugar/items/8a6f1057939e50492a94)
- 第3弾 : [tcsh編] (http://qiita.com/ApricotSugar/items/8b842b8dfd5e6312c019)
- 番外編1 : [SDカード領域の参照] (http://qiita.com/ApricotSugar/items/d0afc32754fc78b4ad9c)
#1. はじめに
WSL(Windows Subsystem for Linux)を使ってWindows 10でopenSUSEを動作させる方法がSUSE blogで紹介されていたので実際に入れてみました.
SUSE blogの記事によると,WSLのセットアップ後,UbuntuのユーザスペースをまるごとopenSUSEのユーザスペースに入れ替える方法で実現しているみたいです.
#2. インストール手順
##2.1 WSLの有効化とBash on Ubuntu on Windowsのインストール
インストールについては,こちらの手順で行います.
##2.2 openSUSEのインストール
###2.2.1 システムアップデートの実行
$ sudo apt-get update
$ sudo apt-get dist-upgrade
###2.2.2 openSUSEのDockerイメージをダウンロード
$ wget -O openSUSE-42.2.tar.xz https://github.com/openSUSE/docker-containers-build/blob/openSUSE-42.2/docker/openSUSE-42.2.tar.xz?raw=true
###2.2.3 openSUSEユーザスペースを抽出
$ sudo mkdir rootfs
$ sudo tar -C rootfs -Jxf openSUSE-42.2.tar.xz
$ exit
上記コマンドを実行すると下記のような警告/エラーが発生します.
$ sudo tar -C rootfs -Jxf openSUSE-42.2.tar.xz
sudo: ホスト BLUE-OPAL の名前解決ができません
tar: dev/loop3: mknod 不能: 関数は実装されていません
tar: dev/full: mknod 不能: 関数は実装されていません
tar: dev/urandom: mknod 不能: 関数は実装されていません
tar: dev/console: mknod 不能: 関数は実装されていません
tar: dev/net/tun: mknod 不能: 関数は実装されていません
tar: dev/loop1: mknod 不能: 関数は実装されていません
tar: dev/tty1: mknod 不能: 関数は実装されていません
tar: dev/tty0: mknod 不能: 関数は実装されていません
tar: dev/tty4: mknod 不能: 関数は実装されていません
tar: dev/loop0: mknod 不能: 関数は実装されていません
tar: dev/zero: mknod 不能: 関数は実装されていません
tar: dev/tty: mknod 不能: 関数は実装されていません
tar: dev/random: mknod 不能: 関数は実装されていません
tar: dev/tty3: mknod 不能: 関数は実装されていません
tar: dev/tty2: mknod 不能: 関数は実装されていません
tar: dev/ptmx: mknod 不能: 関数は実装されていません
tar: dev/loop2: mknod 不能: 関数は実装されていません
tar: dev/null: mknod 不能: 関数は実装されていません
tar: 前のエラーにより失敗ステータスで終了します
$
画面キャプチャを取り忘れました
SUSE blogでは,警告を無視すると書かれていますので気にせずに行きましょう.
SUSE blogには,以下のように書かれています.
Extract the openSUSE userspace (ignore any warnings) and exit the bash shell
###2.2.4 Ubuntu rootfs のバックアップを行い,openSUSE rootfsをコピー
コマンドプロンプトまたは,PowerShellを立ち上げ,以下のコマンドを実行します.
- 管理者権限で行ってください
cd %localappdata%\lxss\
rename rootfs rootfs.ubuntu
move .\home\[Linux User]\rootfs .\
cd C:\Users\[User Name]\AppData\Local\lxss\
mv .\rootfs -newName .\rootfs.ubuntu
mv .\home\[Linux User]\rootfs .\
###2.2.5 デフォルトユーザ(rootユーザ)の設定
lxrun /setdefaultuser root
####2.2.5.1 lxrunコマンドについて
lxrun.exeは,WSLの管理を行うソフトウェアです.
このコマンドを利用することで,Ubuntu on Windowsのインストールやアンインストールを行うことができます.
- lxrun コマンドリファレンス概要
コマンド | 概要 |
---|---|
lxrun | WSLの管理に使用されるコマンド |
lxrun /install | Ubuntu on Windowsをインストール |
lxrun /uninstall | Ubuntu on Windowsをアンインストール |
lxrun /setdefaultuser [User Name] | bashのデフォルトのUbuntuユーザー指定 |
###2.2.6 bashの起動
bash
# cat /etc/os-release
NAME="openSUSE Leap"
VERSION="42.2"
ID=opensuse
ID_LIKE="suse"
VERSION_ID="42.2"
PRETTY_NAME="openSUSE Leap 42.2"
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:opensuse:leap:42.2"
BUG_REPORT_URL="https://bugs.opensuse.org"
HOME_URL="https://www.opensuse.org/"
上記の結果が出力されれば成功です.
###2.2.7 アイコンなどの変更 (任意)
####2.2.7.1アイコンのダウンロード
SUSE blogに書かれているリンクからダウンロードをします.
link: http://www.iconarchive.com/show/nuoveXT-icons-by-saki/Apps-suse-icon.html
####2.2.7.2 アイコンの変更
cd %localappdata%\lxss\
rename bash.ico Ubuntu.ico
rename Saki-NuoveXT-Apps-suse.ico bash.ico
cd C:\Users\[User Name]\AppData\Local\lxss\
mv bash.ico Ubuntu.ico
mv /PATH/to/Saki-NuoveXT-Apps-suse.ico bash.ico
####2.2.7.3 名称の変更
「Bash on Ubuntu on Windows」の名称を変更するには,
エクスプローラーで「%AppData%\Microsoft\Windows\Start Menu\Programs」を開き,
「Bash on Ubuntu on Windows」の名前を変更することができます.
私は,SUSE blagと同じく「Bash on SUSE on Windows」に変更しました.
#3. まとめ
今回は,WSLを使ってWindows10でopenSUSEを動作させてみました.
現状では,openSUSEが動作していますが,rootユーザしか存在しない状態となっています.
そのため,openSUSE上にローカルユーザの作成が必要になります.
次回は,ローカルユーザの作成方法の紹介と起動ユーザの変更方法を紹介したいと考えています. (なるべく早めに紹介したいと思っています.)
#4. 参考文献