Table of Contents
はじめに
リモートサーバーにSSHでログインしたとき、意図せずshやdashが起動してしまい、「いつも使っているbashをデフォルトにしたい」と思ったことはないでしょうか。
ログイン直後はclaudeやpythonなどのコマンドが通らないのに、bashと打ってからは使える、といった現象も典型的な症状です。
本記事では、SSH接続時にbashを起動する代表的な方法を3つ紹介します。
方法
1-1. 現在のログインシェルを確認する
まずは、いま自分のログインシェルが何になっているか確認します。
echo "$SHELL"getent passwd "$USER"getent passwd "$USER" の出力の末尾フィールド(例: /bin/sh, /bin/dash, /bin/bash)が、現在設定されているログインシェルです。
1-2. bashのパスを確認する
次に、bashがどこにインストールされているか確認します。
which bash多くのLinuxディストリビューションでは/bin/bashですが、自前でインストールした場合などは別パスになることがあります。
1-2. chshでログインシェルをbashに変更する
一般ユーザー権限でも、chshコマンドで自分のログインシェルを変更できます。
chsh -s /bin/bash# または、whichの結果をそのまま使うchsh -s "$(which bash)"実行するとパスワードを求められるので入力し、いったんログアウトしてから再度SSHでログインします。
再ログイン後に:
echo "$SHELL"と打って、/bin/bash になっていれば成功です。
2. .bash_profileや.bashrcでbashを起動する方法
ついでに、起動時に~/.bashrcも読み込むようにしておきましょう。
$ vim ~/.bash_profile
# 以下を追加# if [ -f ~/.bashrc ]; then# . ~/.bashrc# fi