IT

管理者権限なしでzshをインストールする

おはようございます、cookie(@cookie_python)です。

みなさんはシェルに何を使ってますか?私はzshを使ってます。

学校のPCにはUbuntuがインストールされていますが、シェルは基本的に、というかほぼほぼデフォルトのbashでしょう。

bashではちょっと補完とか色とか寂しいし、何より普段使っているzshの環境をそのまま学校のPCにも欲しいなと思ったのでインストールすることにしました。

以下の環境の人におすすめです。

サーバーや学校のPCなど管理者権限はないけど、bashでは満足できずzshをインストールしたい人

ダウンロードと解凍

まずはここからzshのソースコードをダウンロードしてきてください。配置する場所はどこでもいいです。

次に解凍します。下のコマンドで解凍できます。

tar -xf zsh-xxx.tar.gz

解凍して出てきたディレクトリに移動してください。

cd zsh-xxx

インストール

通常、ほとんどのソフトウェアのインストールには管理者権限の必要な領域への書き込みが発生します。zshにおいては、configureコマンドでインストール先に管理者権限の必要ないユーザの領域を指定してやれば、管理者権限がなくてもインストールできます。

まずはzshのインストール先ディレクトリを作ります。以下のコマンドを打ってください。以下では作成するディレクトリの名前をlocalにしてありますが、ここの名前はなんでもokです。

mkdir ~/local

configureコマンドでインストール先とオプションを指定します。以下のコマンドを打ってください。

./configure --prefix=$HOME/local --enable-multibyte --enable-locale

各オプションの意味は下のとおりです。

  • ./configure --prefix=$HOME/local: $HOME/localにインストールします(インストール先は変更可能)
  • --enable-multibyte: マルチバイト対応
  • --enable-locale: 多言語対応

最後に、makeコマンドとmake installコマンドでインストールします。


make
make install

シェルの変更

本来は管理者権限があるのでchshとか叩いて変更するのですが、今回は管理者権限がありません。なので、.bashrcにzshを起動させるように書いて無理やりzshを起動させます。.bashrcの一番下に以下を追記してください。

${HOME}/local/bin/zsh
export PATH=$PATH:${HOME}/local

その後、sourceコマンドで変更を適用させます。

source ~/.bashrc

zsh終了時の挙動を変更

ここまでの作業で、端末を起動したときに勝手にzshが立ち上がるようにはなりましたが、終了するときにexitしても残念ながらzshが終了するだけでbashに戻ってしまいます。

毎回exitを2回叩くのは面倒なので、exit一発で端末が終了してくれるように設定しましょう。

.bashrcの一番下に以下を追記してください。

~/local/bin/zsh && exit

まとめと参考にしたサイト

zshのソースコードをダウンロードしてきてインストールし、起動と終了の挙動を設定する流れを紹介しました。
以下の2つのサイトを参考に自分もインストールしました。
快適なzshライフを楽しんでくださいね。

ABOUT ME
cookie
明石高専 5EJだった人 和歌山大学システム工学部3年 LoL初心者 SDVX python ブログ初心者になりたい