ssh ログインは .profile または .bashrc を正しく解析しません。通常は奇妙です。

ssh ログインは .profile または .bashrc を正しく解析しません。通常は奇妙です。
  • まず、PS1はロードされません。ただ私にメッセージがあります。$
  • 矢印キーは、予想される操作を実行せずに次の内容を表示します。$ ^[[A

これにより非常に使用できなくなります。考慮すべき事項は次のとおりです。

  • これは、サーバーに直接ログインするのではなく、sshを介してログインした場合にのみ発生します。
  • ユーザーの1人はsshを使ってもうまくいきます。これは、OSのインストール中に設定されたユーザーです。Ubuntuサーバー14.04)。
  • su - otherUserうまく機能するユーザーの内部に入ると、すべてがうまく機能します。

.bashrc見たい場合に備えて、以下を紹介します(うまく機能するユーザーを含むすべてのユーザーに同じです)。

関数解析_git_branch() {
  子ブランチ2> / dev / null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
}

赤 = "\[\033[0;31m\]""
黄色 = "\[\033[0;33m\]""
緑 = "\[\033[0;32m\]""
NO_COLOR="\[\033[0m\]""
#PS1="[\u@\h \W]\$"
PS1="[\u@\h $YELLOW\W$NO_COLOR]$GREEN\$(parse_git_branch)$NO_COLOR\$ " エクスポート

ユーザーログインを試みたときに出力されるログ。働く適切にssh -vvv ubuntu@server:http://paste.ubuntu.com/15436267/

ユーザーログインを試みたときに出力されるログ。動作しません適切にssh -vvv adam@server:http://paste.ubuntu.com/15436301/

ベストアンサー1

あなたが説明する症状(非常に基本的なプロンプトのみが表示され、矢印キーが機能しない)は/bin/shログインシェルと一致し、予想されるものとは/bin/bash異なります。/bin/shスクリプトをすばやく実行するように設計された小さなシェルですが、インタラクティブな使用には適していません。

ログインシェルが何であるかを確認するには、次のようにします。

getent passwd $USER

コロンで区切られたフィールドのリストが表示され、ログインシェルが最後のフィールドです。

ログインシェルが望ましくない場合は、次のようにします。chsh -s /bin/bash

ターミナルからbashを受け取る理由は、おそらく設定のどこかでSHELLbashの環境変数を設定したからです。端末エミュレータは通常表示されたプログラムを実行するか、設定されていない場合はSHELLログインシェルに置き換えられます。SHELL

おすすめ記事