Bash on Ubuntu on Windows の再インストール手順

筆者が使用している Windows 10 の PC に Anniversary Update が振ってきた (その後 KB3176929 も振ってきて、現在のビルド番号は 14393.10) ので、待望の Bash on Ubuntu on Windows をインストールしてみた。

Bash on Ubuntu on Windows

インストール方法は、ちょっとググればいくらでもみつかるので省略するが、筆者の環境では「Windows Subsystem for Linux (Bata)」をインストールし、指示に従って再起動してから初回の Bash の起動で文字化けしてしまい、セットアップ途中で強制中断する羽目になった。
他にも文字化け事例が多々あるようだが、Bash の初回セットアップには lxrun.exe を使うのが一番よさそうだ。

character corruption at setup Bash on Ubuntu on Windows

Bash 初回セットアップの失敗の他にも、Bash で linux コマンドを実行中に Ctrl-C で強制終了したときなどに Bash の反応が無くなり、Bash のプロンプト ウィンドウを閉じることもできなくなることがある。
ある程度 (数十秒から数分) 待つと、Bash のプロセスがハングアップしたのか、勝手にプロンプト ウィンドウが閉じる。
こうなると、新しく Bash を立ち上げても無反応のまま数十秒から数分でウィンドウが 勝手に閉じるようになってしまう。
OS 自体の再起動で直ることもあるが、最悪は Bash on Ubuntu on Windows の再インストールが必要だ。

Bash on Ubuntu on Windows の再インストールは、素直に考えれば「プログラムと機能」から「Windows の機能の有効化または無効化」を開き、「Windows Subsystem for Linux (Bata) 」のチェックを外して「OK」から再起動。
再起動後に、「プログラムと機能」から「Windows の機能の有効化または無効化」を開き、こんどは「Windows Subsystem for Linux (Bata) 」にチェックを付けて「OK」から再起動で、Bash の初回セットアップの手順だ。

だが、すでに Bash の初回セットアップがある程度以上に済んでいる場合は、「Windows Subsystem for Linux (Bata) 」をアンインストールしても Bash のモジュールはそのまま残ってしまう。
このため、再インストール後の Bash 初回セットアップでスキップされてしまう手順が生じる。

これを避けて、Bash の初回セットアップをもう一度実行させるには、上に書いた lxrun.exe を使う。

「Windows Subsystem for Linux (Bata) 」を再インストールして再起動したら、Bash を起動せず、コマンド プロンプト (cmd.exe) か PowerShell を起動する。
そこで lxrun /uninstall /full を入力して実行する。
これで Bash のモジュールがアンインストールされる。
とはいえ、いくつかのファイルは削除されずそのまま残るみたいなので、完全に削除したいなら %USERPROFILE%\AppData\Local\lxss フォルダー以下をエクスプローラーなどから削除する。
なお、%USERPROFILE%\AppData\Local\lxss フォルダーには隠し属性が付いているので、素直には見つけられないかもしれない。

lxrun /uninstall /full したら、次は lxrun /install を実行する。
これで Bash の初回セットアップが実行されるはずだ。

関連記事

  • Windows で作った自己署名証明書を調べる2015.7.10 (金) Windows で作った自己署名証明書を調べる Azure に ポイント対サイト (P2S) 接続をする際に必要な、ルート証明書とクライアント証明書をWindows の makecert.exe コマンドを使って作成する方法を前の記事で書いた。同じことを Linux の OpenSSL […]
  • OpenSSL で Azure ポイント対サイト (P2S) の証明書を作る2015.7.13 (月) OpenSSL で Azure ポイント対サイト (P2S) の証明書を作る Azure に ポイント対サイト (P2S) 接続をする際に必要な、ルート証明書とクライアント証明書をWindows の makecert.exe […]
  • ゲスト OS (Windows Web Server 2008 R2) の設定 [Install Maniax 3]2010.1.1 (金) ゲスト OS (Windows Web Server 2008 R2) の設定 [Install Maniax 3] 世間では「明けましておめでとうございます」という言葉が飛び交っているようですが、あいにくの空模様に初日の出を拝むことも無いまま、いつもと変わらぬ一日を送ろうとしている。 さて、インストールマニアックスが環境作りだけで終わりそうな気配を見せつつも、ゲスト […]
  • Office 365 を PowerShell で操作するための手順2014.1.21 (火) Office 365 を PowerShell で操作するための手順 昨今ようように Office 365 を試用している。 運用しているメールシステムを Office 365 に移行して、少しでも構築維持の手間を軽減しようとの考えだ。 だが Office 365 の管理は Web UI […]

コメントを残す