
これには困惑しています。Ubuntu 14.04 を使用していますが、3 日前 (2014-20-10) から速度が低下し始めました。
gedit を開いてから閉じることで再現しましたが、問題がアクティブな場合は空のファイルを閉じるのに約 2 秒かかりますが、問題がない場合は常に瞬時に完了します。同様に他のすべてに影響します。
フリーズが発生したときに top は異常なアクティビティを報告しません。htop も同様で、iotop も同様です。
この問題は、30 分間の稼働後にのみ発生します。稼働 29 分間では再現できなかったと断言できますが、稼働 31 分間ではこれを一貫して再現できました (上記の方法を使用し、ターミナルと htop 以外のアプリは起動していません)。また、これを 4 回または 5 回繰り返すことができました (シャットダウンして起動し、30 分間待つことで、快適でした)。
再起動後も問題は解決しませんが、シャットダウンして再度電源を入れるとリセットできます。再起動後も状態が保持されるのにシャットダウン後は保持されないのは、Ubuntu のどの部分ですか?
この期間に関連するログは、syslog、auth.log、Xorg.0.log です (指定された範囲内で変更された時間の /var/log の内容を調べることにより)
シスログ:
Oct 22 17:21:36 raiden NetworkManager[1102]: <warn> nl_recvmsgs() error: (-33) Dump inconsistency detected, interrupted
Oct 22 17:39:01 raiden CRON[3284]: (root) CMD ( [ -x /usr/lib/php5/maxlifetime ] && [ -x /usr/lib/php5/sessionclean ] && [ -d /var/lib/php5 ] && /usr/lib/php5/sessionclean /var/lib/php5 $(/usr/lib/php5/maxlifetime))
Oct 22 18:09:01 raiden CRON[3370]: (root) CMD ( [ -x /usr/lib/php5/maxlifetime ] && [ -x /usr/lib/php5/sessionclean ] && [ -d /var/lib/php5 ] && /usr/lib/php5/sessionclean /var/lib/php5 $(/usr/lib/php5/maxlifetime))
認証ログ:
Oct 22 17:39:01 raiden CRON[3283]: pam_unix(cron:session): session opened for user root by (uid=0)
Oct 22 17:39:01 raiden CRON[3283]: pam_unix(cron:session): session closed for user root
Oct 22 18:09:01 raiden CRON[3369]: pam_unix(cron:session): session opened for user root by (uid=0)
Oct 22 18:09:01 raiden CRON[3369]: pam_unix(cron:session): session closed for user root
Oct 22 18:17:01 raiden CRON[3495]: pam_unix(cron:session): session opened for user root by (uid=0)
Oct 22 18:17:01 raiden CRON[3495]: pam_unix(cron:session): session closed for user root
Xorg.0.log: (おそらくコンピュータを再起動しているところです)
[ 3466.727] (II) intel(0): switch to mode [email protected] on LVDS1 using pipe 0, position (0, 900), rotation normal, reflection none
[ 3466.880] (II) intel(0): switch to mode [email protected] on VGA1 using pipe 1, position (0, 0), rotation normal, reflection none
これらはいずれも悪いことを示しておらず、問題を再現するためのその後の手順ではログに変更は見られなかったため、これらはおそらく無害なログであったと考えられます。
この問題の原因としては、次の 3 つが考えられます。
ソフトウェアのインストール: 怪しいものをインストールしました
やった:
- history | grep apt-get' - その期間内にインストールはありません
- シナプティックパッケージマネージャーの履歴を確認しましたが、その期間には何もありませんでした
- ソフトウェア センターの履歴 - 最後の更新は数週間前です (依存関係の問題があったため、しばらく更新を行っていませんでした)
- その頃に Skype for Ubuntu をインストールしましたが、Skype が原因であるという兆候はありません (とにかく削除しました)
Cronジョブがうまくいかない
crontab、/etc/cron.d、/etc/cron.daily、および hourly で cronjobs をチェックしましたが、そこに何かがあることを示すものはなく、PHP cron ジョブが 30 分ごとに実行されるだけですが、それが cron であれば、起動後 30 分ではなく、24 時間ごとの特定の時点で実行されます。
非スローダウン状態とスローダウン状態の間で開始された新しいプロセスを分析すると、新しいプロセスは開始されていないことが示唆されます (最初のテストでは kworker スレッドが表示されましたが、これは単なる偶然である可能性があります)。これは、既存のプロセスがトリガーしたか、または他の何かがトリガーされたことを意味しているに違いないと思います。
マルウェア
この問題がとらえどころがなく、30 分間も問題が起こらなかった (30 分は人間が選んだ時間のように思えます) ことから、可能性は低いものの、何らかのマルウェアである可能性もあると考え始めました (しばらく更新しておらず、ポートがいくつか開いていました)。そこで、rkhunter (ルートキット ファインダー) を実行しましたが、異常な点は何も見つかりませんでした。
私が試した他のこと:
- 特定の compiz コンポーネントのチェックを外す - 変化なし
- compiz を再起動しても変化なし
- すべての Compiz コンポーネントのチェックを外しても変化なし (コンピューターを再び使用可能にするのに苦労する以外は)
- 稼働時間が 30 分になるまで待機しながらさまざまな楽器を演奏し、top と htop の結果に疑わしい変化がないか確認します。何もおかしなことはありません。
これに似たようなことが起こった人はいますか、または私に正しい方向を指し示してくれる人はいますか?もしいたら、あなたの回答に何度も賛成投票ボタンを押します(奇数になるようにします)
答え1
cron を起動後 30 分でジョブを実行するように構成する方法はいくつかあります。Jenkins は、関数をハッシュして、H/30 * * * *
たとえばを使用してこれを実行します。また、30 分間スリープし、サイレント CPU キラー プロセスを生成するスレッドにすることもできます。
いくつかのアイデアがあります:
htop を root として試しましたか? 一部のプロセスは表示されない可能性があります。特に Debian でこの現象が発生しました。
問題が発生したときにログアウト/再度ログインしてみましたか? ウィンドウ マネージャーまたはセッションの問題である可能性があります。
ログアウト/ログインが機能しない場合は、セッション マネージャーを再起動してみてください。デフォルトでは lightdm になっていると思うので、そうsudo service lightdm restart
してください。
答え2
これは、SMARTデータ問題のドライブに対して有効になっていること。
SMART データを無効にすると、この問題が解決しました:
sudo smartctl --smart=off /dev/sda
おそらく、ディスクが回転してから 30 分後に何らかの内部セルフテストが再実行され続け、ループ状態になったと思われます。これはハードウェア レイヤーで発生したため、コンピューターの残りの部分はそれが起こっていることを認識していませんでした。そのため、IO ブロックの原因となっているプロセスや、リソースを占有しているプロセスは特に確認できませんでした。