Windows10のbashをzshで起動するように変更する
2016-07-18 Mon.
この記事は 2016/7/18 時点の Preview Build 14390 に基づきます。
- 自分の検証範囲での動作確認のため、環境や処理内容やビルドバージョンによっては動作しません。
- 内容に誤りや検証不足の項目があった場合はご指摘いただけますと幸いです。
概要
- bash on windows をwindows から起動すると
chsh
によるログインシェル変更が適用されず/bin/bash
が呼ばれる。(ssh でログインすれば適用される。) - bash 起動時の処理の中に、zsh を起動する処理を書く。
/etc/profile
に書いても良いが、/bin/bash
を書き換えるのが速そうなのでこちらを変更する。
手順
sudo apt-get install zsh
等で/bin/zsh
にインストールする。/bin/bash
を/bin/bashbin
等に名前を変更する。(念のため、他にもバックアップを作成すると良いです。)/bin/bash
を以下のように記述する。
sudo chmod 755 /bin/bash
で権限を変更する。
(失敗した際はC:\Users\{$USER}\AppData\Local\lxss\rootfs\bin
の bash を元のものに戻しましょう。)
補足
/etc/profile
を読むより前なので、そちらを書き換えるより速いはず。bash
コマンドでのインストールスクリプト等の実行も問題なさそう。(参考元では動かなかったため)- tmux は$SHELL の shell で起動するので、はじめから zsh が起動する。
exec $SHELL -l
で shell を再起動した場合も同じく zsh が起動する。- 参考元と同様に
pstree
コマンドを実行するとはじめから zsh が動いていることになっている。 - /bin/bash は最初にしか読まれていないようである。(プリントデバッグで検証。)
参考
Pickup
Under Construction