У меня есть экземпляр Ubuntu 12.04 LTS (GNU/Linux 3.2.0-25-virtual i686)
запуска в качестве KVM-VM на хост-машине, на которой работает еще одна виртуальная машина.
Я развертываю приложение Ruby on Rails, используя Gem для развертывания Capistrano.
Однако если я разверну два раза подряд за короткое время, загрузка ЦП из-за этого /sbin/getty
процесса возрастет до 100% .
Как это может быть?
Я полагаю, что getty - довольно простая программа, которая передает имя пользователя из терминала в процесс входа в систему.
Кроме того: В моем Capfile (файл конфигурации Capistrano) я запускаю определенные команды после развертывания приложения Rails, включая вызов, sudo /sbin/restart <APPNAME>
который является задачей upstart.
Может ли это быть как-то связано?
Я всегда могу убить процесс getty, и проблема исчезнет до следующего развертывания, но я бы лучше понял и решил проблему.
Любая помощь приветствуется. Прилагается скриншот моей проблемы.
Ответы:
Наконец я также столкнулся с этой проблемой на
Ubuntu 12.10 Server
VPS.Но так как мне это не нужно
tty
(потому что я подключаюсьssh
), я исправил это трудным способом :И это работает довольно хорошо! больше не
getty
процесс застрял.источник
Вы входите в
syslog
?Вы
syslog
собираетесьtty1
?Если это так, есть большая вероятность, что у вас более 38400 бит / с
syslog
иgetty
он блокируется, пока он ожидает сброса данных в негоtty
.Я бы проверил вашу
rsyslog
конфигурацию - по умолчанию Ubuntu записывает некоторые данныеsyslog
в/dev/xconsole via /etc/rsyslogd.d/50-default.conf
.источник
На одном из моих ядер я получал 100% загрузку ЦП для
agetty
процесса на моей машине с Ubuntu 16.04. В моем конкретном случае я использовал только ssh-соединение для доступа к серверу, поэтому после некоторого исследования я решил удалить его.Требуется перезагрузка. Решение было найдено по адресу https://peteris.rocks/blog/can-you-kill-it/ . Перед тем, как воспользоваться такой опцией, будьте осторожны, чтобы проверить, действительно ли вам не нужен tty.
источник