% 100 CPU kullanımına neden olan / sbin / getty işlemi


11

Ben bir örneğini var Ubuntu 12.04 LTS (GNU/Linux 3.2.0-25-virtual i686)yanında bir tane daha VM çalışan bir konak-makinede bir KVM-VM olarak çalışan.

Capistrano dağıtım taşını kullanarak bir Ruby on Rails uygulamasını konuşlandırıyorum.

Ancak, kısa sürede arka arkaya iki kez konuşlandırırsam, /sbin/gettyişlem nedeniyle CPU kullanımı% 100'e atlar .

Bu nasıl olabilir?

Getty'nin bir terminalden bir giriş işlemine bir giriş adı geçiren oldukça basit bir program olduğuna inanıyorum.

Ayrıca: Benim Capfile (Capistrano yapılandırma dosyası) Rails uygulaması dağıtıldıktan sonra sudo /sbin/restart <APPNAME>bir uptart görevi olan bir çağrı da dahil olmak üzere bazı komutları çalıştırıyorum .

Bu bir şekilde ilişkili olabilir mi?

Her zaman getty sürecini öldürebilirim ve sorun bir sonraki konuşlandırmaya kadar gitti, ancak sorunu anlamayı ve düzeltmeyi tercih ederim.

Herhangi bir yardım takdir. Ekli, sorunumun bir ekran görüntüsü.

/ sbin / getty% 100 CPU yüküne neden oluyor


2
Getto'nun ne yaptığını 'strace -f -p 18081' ile izleyebilirsiniz; burada 18081, yanlış davranan getty'nin pididir. Strace hiçbir şey göstermezse, muhtemelen getty'de bir hata.
SpamapS

Bu sorunu kalıcı olarak çözebildiniz mi?
Christoph Geschwind

Yanıtlar:


2

Sonunda da bir Ubuntu 12.10 ServerVPS bu sorunla karşılaştı .

Ama herhangi bir şeye ihtiyacım olmadığından tty(bağlandığım için ssh) zor yoldan sabitledim :

sudo rm /etc/init/tty*
sudo reboot

Ve oldukça iyi çalışıyor! artık gettyişlem sıkışmış değil.


0

Giriş yapıyor musunuz syslog?

Senin mi syslogolacak tty1?

Eğer öyleyse, 38400bps'den fazla değere sahip olma syslogve gettyveriyi dökmek için beklerken engelleme şansı vardır tty.

rsyslogYapılandırmanızı kontrol ederdim - varsayılan olarak Ubuntu bazı syslogçıktıları günlüğe kaydeder /dev/xconsole via /etc/rsyslogd.d/50-default.conf.


Bu durumda, nasıl önlenir?
bilinenasilya

0

Çekirdeklerimden birinde agettyUbuntu 16.04 makinemde işlem için% 100 CPU kullanımı alıyordum . Benim durumumda sadece sunucuya erişmek için ssh bağlantısı kullandım, bu yüzden bir süre araştırdıktan sonra kaldırmaya karar verdim.

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

Yeniden başlatma gerekiyor. Çözüm https://peteris.rocks/blog/can-you-kill-it/ adresinde bulundu . Böyle bir seçeneği kullanmadan önce, gerçekten tty'ye ihtiyacınız olup olmadığını kontrol etmeye dikkat edin.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.