WSL を使って Windows 10 の上で Linux を動かす

Windows 10 で Linux を動かす

Windows10 は何回か大きなバージョンアップがあって、そのたびに Linux を動かす機能をすこしずつ強化してきた。

2016/08/24 の Aniversary Update で少し動くようになり、 2017/07/28 Creators Update でもっと動くようになったそう。

まだ完全ではないらしいがとりあえずそれ、入れてみた。ここにその軌跡を記す。

発端

キーボードをHHKB(http://www.pfu.fujitsu.com/hhkeyboard/)にしたので、家で emacs の練習しとくかあ。

と思い、gnupack を起動したら mintty がエラー。teraterm に付いてる cygterm も動かない。。。

Windows 10 の仮想デスクトップをいくつか使っているせいかなと思って デスクトップを一つだけにしたけど動かず。。。

どうしよ。emacs で編集して gccコンパイルして、とかやれなくなってしまった。

・・・そういえば、WindowsUbuntu 動かすとか、そんな話あったよなあ。

参考にしたサイト(ありがとうございます!)

Windows10 の "Bash on Ubuntu on Windows" で困ったこと - Qiita

Windows Subsystem for Linuxをインストールしてみよう! - Qiita

  • うちの Windows 10 は Creator Update からだいぶ経っていることもあってか、初めから Windows Subsystem for Linux がインストールされていた。
  • そのため、Microsoft Store から Ubuntu をインストールしただけで動いた。
  • Microsoft Store のレビューにありましたが、初心者が手を出すとクラッカーの攻撃に晒されるかもしれないんだそうです。ご注意ください。

Windows Sybsystem for Linux

Winodws の機能から、Windows Sybsystem for Linux にチェックを付ける。 (私のとこではもう付いてた) OKすると再起動するらしい。

f:id:nodamotoki:20180120220935p:plain
Windowsの機能

  • Windows の機能は、OptionalFeatures.exe を実行すると出ます。
  • 設定メニューからもいけます。けっこう深いとこにいるけど。
    • 設定>アプリ>アプリと機能>(右のほうの)プログラムと機能>(左のほうの)Windowsの機能の有効化または無効化

Microsoft Store から Ubuntu をインストール

f:id:nodamotoki:20180120221934p:plain
Microsoft Store

スタートにピン留めした Ubuntu から実行

実行は スタート>Ubuntu でOK

cmd.exe から bash を実行することでも起動する。

Microsot Store のレビューコメントを見ると PowerShell から実行した方が速い?とか書いてあったので、PowerShell から実行してみたり。

使いたいプログラムをインストール

参考サイトの記載をみながら、ダウンロード元を、北陸先端科学技術大学院大学さん(http://ftp.jaist.ac.jp)に変更。

update & upgrade するらしいのでやってみる

sudo apt update
sudo apt upgrade

これで、最新版になったのかな。

↓ apt コマンドはこちらで少しお勉強(ありがとうございます!)。

「apt-get」はもう古い?新しい「apt」コマンドを使ったUbuntuのパッケージ管理 | Linux Fan

それから emacs やら gcc やらをゲット

$ sudo apt install emacs
$ sudo apt install build-essential     # gcc
$ sudo apt install python ruby         # python と ruby 

すべてをやり直したいとき

lxrun /uninstall /full
lxrun /install

cmd.exe で上のコマンドを叩くとすべてが消えて無くなり、新しく入れ直されるのだとか。 (Windows Subsystem on Linux を消したり入れ直したりする古い?コマンドらしい)

そういえば最初に lxrun /uninstall /full をとりあえずやってしまったんだけど、

そのとき「保留中」みたいな表示が出てたなあ。

パソコンを再起動したら今日やったこと全部消えてしまうのかな。

以上!