リモートサーバーにログファイルがあります。 tail -f
ローカルマシン上で ssh
。コマンドはかなり簡単です。
ssh -n user@domain.com 'tail -f /path/to/remote/file'
最初はうまく動作しますが、しばらくすると(おそらく1〜3時間)動作しなくなります。リモートログファイルに新しい行がありますが、ローカルマシンでは更新されません。エラーは表示されず、動作しなくなります。押して中断しなければならない Ctrl + C 同じコマンドを再起動すると、しばらくの間、再び機能し始めます。
同時に私は同じリモートサーバーへの対話型SSHセッションを持っているので、インターネット接続は100%動作しています、そしてそれは常に動作し続けます。
問題は何か、どうやってそれを解決するのですか?
念のために、私は自分が達成しようとしていることを述べたいと思います。それはリモートのirssi通知に関するものです。 irssiが常にtmuxセッションで実行されているサーバーがあり、デスクトップで通知を受け取りたい。重要なイベント(start_notification / stop_notification)がログファイルに書き込まれるように、そして私のローカルスクリプトはこのログを読んで通知を管理します(トレイアイコン、サウンド、libnotifyのイベント)
そして、すでに述べたように、しばらくすると再起動するまで機能しなくなります。
私のデスクトップOSはLinux Mint 13 MATE、サーバーOSはDebian 3.2.51-1です。
任意の助けをいただければ幸いです。
TCPKeepAlive=no
?私の場合、それは奇妙に聞こえます 欲しいです 接続を維持するために:)