Ubuntuマシンにサーバーとしてgitリポジトリをセットアップします。これはホームネットワーク上にあります。次に、同じコンピューターまたは別のホームコンピューターからこのリポジトリにSSHで接続します。ログインは問題ありません。ただし、端末でファイル名またはディレクトリ名の一部を入力してから、 tab、通常のように完全なファイル名またはディレクトリ名を表示せずに、カーソルが端末上で右に移動します。
SSHサーバーを終了した後、 tab キーは正常に機能します。
編集:
また、 →、 ←、 ↑ そして ↓ キーが機能しません。これのいずれかを押すと、ターミナルでこれらを取得します。
$ ^[[A^[[D^[[C^[[A
理由は何でしょうか?
追加:
$ env
MAIL=/var/mail/git
USER=git
SSH_CLIENT=10.0.0.250 42342 2222
J2SDKDIR=/usr/lib/jvm/Java-8-Oracle
J2REDIR=/usr/lib/jvm/Java-8-Oracle/jre
HOME=/home/git
SSH_TTY=/dev/pts/5
LOGNAME=git
TERM=xterm-256color
XDG_SESSION_ID=93
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/lib/jvm/Java-8-Oracle/bin:/usr/lib/jvm/Java-8-Oracle/db/bin:/usr/lib/jvm/Java-8-Oracle/jre/bin
DERBY_HOME=/usr/lib/jvm/Java-8-Oracle/db
XDG_RUNTIME_DIR=/run/user/1001
LANG=en_US.UTF-8
Shell=/bin/sh
PWD=/home/git
Java_HOME=/usr/lib/jvm/Java-8-Oracle
SSH_CONNECTION=10.0.0.250 42342 10.0.0.250 2222
現在のシェルが問題です。 sh
コマンドの出力に見られるように、現在env
をデフォルトのシェルとして使用しています:
Shell=/bin/sh
問題を解決するには、これらのキー入力をサポートする別のシェル(例として使用するbash
など)に変更する必要があります。これを行うには、chsh
ユーティリティ(シェルを変更)を使用する必要があります。
例:
$ which bash
/bin/bash
$ chsh -c /bin/bash
これにより、ユーザーのデフォルトのシェル環境が更新されます(詳細については こちら を参照してください)。新しいシェルにロードするには、ログアウト/ログインするか、新しいセッションを開始する必要があります。
または、パスを見つけて現在のシェルから実行することにより、別のシェルを利用できます。例として、ここではsh
からbash
に変更しています。
$ which bash
/bin/bash
$ /bin/bash
chris@loki:~$
お役に立てれば!