/ sbin / gettyプロセスによりCPU使用率が100%になる


11

Ubuntu 12.04 LTS (GNU/Linux 3.2.0-25-virtual i686)ホストマシン上でKVM-VMとして実行されているインスタンスがあり、そのホストマシンでもう1つのVMが実行されています。

Capistrano deployment-gemを使用してRuby on Railsアプリケーションをデプロイします。

ただし、短時間で2回続けてデプロイすると、/sbin/gettyプロセスのためにCPU使用率が100%に跳ね上がります。

どうすればいいの?

gettyは、ログイン名を端末からログインプロセスに渡すかなり単純なプログラムだと思います。

また、Capfile(Capistrano構成ファイル)で、Railsアプリケーションのデプロイ後、特定のコマンドを実行してsudo /sbin/restart <APPNAME>います。これには、起動タスクが含まれます。

これは何らかの形で関係しているのでしょうか?

私はいつでもgettyプロセスを強制終了でき、問題は次の展開まで消えますが、問題を理解して修正したいです。

どんな助けも大歓迎です。添付されているのは、私の問題のスクリーンショットです。

/ sbin / gettyは100%のCPU負荷を引き起こします


2
'strace -f -p 18081'を使用すると、gettyの動作を追跡できます。18081は、正常に動作していないgettyのPIDです。straceが何も表示しない場合は、gettyのバグである可能性があります。
SpamapS

この問題を永久に解決できましたか?
クリストフゲシュウィンド14

回答:


2

最後に、Ubuntu 12.10 ServerVPS でもこの問題に遭遇しました。

しかし、私は何も必要としないのでtty(私はで接続しているためssh)、私はそれを難しい方法で修正しました:

sudo rm /etc/init/tty*
sudo reboot

そして、それはかなりうまくいきます!これ以上gettyプロセスがスタックしません。


0

にログインしていsyslogますか?

あなたはされsyslogに行くのtty1

その場合、38400bps以上の価値がsyslogあり、gettyデータをにダンプするのを待っている間にブロックされている可能性がありttyます。

rsyslog設定を確認します-デフォルトでは、Ubuntuはにいくつかのsyslog出力を記録し/dev/xconsole via /etc/rsyslogd.d/50-default.confます。


この場合、それを防ぐ方法は?
既知の

0

コアの1つでagetty、Ubuntu 16.04マシンのプロセスのCPU使用率が100%になりました。私の特定のケースでは、サーバーへのアクセスにssh接続のみを使用したため、しばらく調査した後、ssh接続を削除することにしました。

sudo rm /etc/systemd/system/getty.target.wants/getty@tty1.service
sudo rm /lib/systemd/system/getty@.service

再起動が必要です。ソリューションはhttps://peteris.rocks/blog/can-you-kill-it/で見つかりました。そのようなオプションを使用する前に、ttyが本当に必要ないかどうかを注意深く確認してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.