lsはリモートサーバーでゆっくり実行されます


3

私には非常に奇妙な問題があります。マシンにアクセスしなければ診断が難しいかもしれませんが、おそらく誰かが助けてくれるかもしれません。

OS Xを使用しており、ローカルマシンでls即座に実行されます。ただし、特定のリモートサーバーにログインしlsてホームディレクトリでのみ実行すると、戻るまでに約15秒かかります。また、ホームディレクトリには数個のファイルしかない。サブディレクトリまたはそれ以上のディレクトリに切り替えると、lsすぐに実行されます。

奇妙なことは次のとおりです。別のコンピューターを使用してリモートサーバーにアクセスlsし、ホームディレクトリで実行すると、すぐに戻ります。

要約すると、特定のラップトップ+特定のリモートサーバー+特定のディレクトリ= lsの実行が遅い

何か案は?または、少なくともこれをデバッグする方法はありますか?

編集:さて、もっと奇妙な。lsの最初の実行では遅いだけです。その後の実行はすべて高速です。初めてのように遅いので、もう一度タイプするのに苦労したことはないと思います。


遅いのは 'ls'か 'ls -l'だけですか?'ls -l'は、/ etc / passwdを調べることに加えて、すべてのファイルを統計する必要があります(または、さらに悪いことに、このdbが集中している外部ユーザーデータベースを参照してください)。いずれの場合でも、lsでstraceを実行して、15秒間の一時停止が発生する場所を確認できます。これにより、答えが得られるはずです。
アリエル

ログインした直後に別のディレクトリをls-ingしてみてください。問題があるのはホームディレクトリではなく、最初のlsである可能性があります。
グロノスタジ

@arielfそれはちょうどlsです。
ニック

回答:


1

何が起こっているのかを確認するのは少し難しいです。あなたの症状は、実際の問題(まあ、そうではない)とテストバイアスの混合によって簡単に説明できます。

たとえば、Linuxサーバーが単にディスクをアイドル状態にしており、必要なディレクトリがキャッシュにない(または、外部ディスクとしてスピンダウンされたデバイスにマウントまたはリンクされている)と仮定します。

その後、最初のアクセスにはスピンアップ/アイドリングが必要で、15秒がかかります。

別のディレクトリに移動すると、別のデバイスまたは現在回転しているデバイスにあるため、高速です。

同じディレクトリに戻ると、高速になりました(IOSSキャッシュも何か関係があるかもしれません)。

あなたはログアウトして別の場所からログインして、しかし、今のデバイスは、まだキャッシュはまだ下塗りされ、回転している、とディレクトリが速いです。

このような問題ではないことを確認するには、適切な時間待機してから、3番目のコンピューター(最初lsは高速だったコンピューター)から最初にログインを再試行し、現在lsが実際に遅いかどうかを確認する必要があります


あなたは良い点を述べています。それを試してみます。
ニック

1

これをデバッグする方法についての部分に答えます。Linuxセッションでこれを試してください。

sudo strace ls

そして、15秒間ハングするシステムコールに注意してください。

(OS-Xでは、「dtruss」を使用するか、dtrace(man dtrace)を使用できます)


申し訳ありませんが、明確にすべきでした。私はSSH-INGのOS XからLinuxサーバへの思い
ニック・
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.