web-dev-qa-db-ja.com

cygwin sshは、終了時に「Kill​​ed bysignal1」を表示します

Cygwinのsshを使用してWindowsからLinuxホストにログインした後、リモートシェルを終了すると、常に迷惑なメッセージが表示されます。

「信号1で殺された」

私はグーグルして、その無害であることに気づきました、しかしそれでも迷惑です...いくつかはあなたが使用することによってメッセージを取り除くことができると提案しました

$ ssh -q.。

しかし、それは私が試したどのマシンにも影響を与えません。

誰かがこのメッセージを取り除くための実用的な解決策を知っていますか?

21
Rop

~/.ssh/configファイルに次の行を追加すると、そのメッセージがつぶれる可能性があります。

更新:QUIETはすべてCAPSである必要があり、構成内のホストごとに追加する必要があります。

LogLevel QUIET

最初の行に追加すると、メッセージがグローバルに押しつぶされます。 Hostの下に配置されている場合にのみ、特定のホストに対して有効になります。

6
Hongbo Liu

これは、sshセッションを別のホストを介してプロキシするときに発生します。例.ssh/configファイル:

# machine with open SSH port
Host proxy
HostName foo.com

# machine accessible only from the above machine
Host target
HostName 192.168.0.12
ProxyCommand ssh proxy nc %h %p

ssh targetを終了すると、sshProxyCommandが出力を生成します。そこに-qを追加すると、抑制されます。

ProxyCommand ssh -q proxy nc %h %p

この出力がCygwinとは何の関係もないことに驚かれるかもしれません-それはLinuxでも起こります。

39
Irfy

おそらく、代わりに PuTTY がお勧めです。私はそれがそのエラーを与えるとは思わない、そしてそれはあなたが接続情報や他の素晴らしいものを保存するようなことをすることを可能にする。

私は試していませんが、sterr(メッセージが送信されると私が信じているストリーム)を/ dev/null(事実上、物事が死ぬ場所であるビットバケットまたは底なしのボイド)にリダイレクトできる可能性があります。あなたはおそらく次のようなことをすることができます:

ssh user @ Host 2>/dev/null

0
Paul Calabro

さまざまな状況下で新しい解決策があるため、新しい回答を追加しています。

最新のProxyJumpディレクティブを使用する場合、ProxyCommandのように、-qを配置する場所はありません。

Host target
  ProxyJump proxy

ProxyCommandを使用してより手動のジャンプ定義に戻す代わりに、ProxyJumpを使用した解決策はLogLevel QUIETHost proxy定義に追加することです。

Host target
  ProxyJump proxy
Host proxy
  LogLevel QUIET

これは、ProxyCommand-qssh -q proxy ...と同じ効果があります。

0
Irfy

ControlMasterディレクティブを使用して接続共有を有効にすると、別のホストを介してセッションをプロキシするときに単一の接続を共有できます。次に、ControlPersistディレクティブを1秒に設定できます。これにより、共有接続の終了を遅らせることで、「killedbysignal1」エラーを回避できます。

〜/ .ssh/configに以下を追加します

ControlMaster auto
ControlPersist 1
ControlPath ~/.ssh/.%C
0
Jon Nalley