Ubuntu сильно грузит процессор
Иногда имеем высокую загрузку процессора некими системными задачами.
Не процессами из userland, а именно "система" грузит.
Т.е. явно выполняются какие-то системные вызовы (выделение памяти, переключения контекста), или работают драйверы (обрабатывают прерывания или что-то еще), идёт активный ввод-вывод.
Это всё я всегда предполагаю, Но как узнать ТОЧНО, почему высокая загрузка - не представляю. Поэтому прошу помощи.
Сейчас я использую несколько косвенных методов, но они не всегда подходят: глянуть в iotop, прибвать процессы по одному, и смотреть не спала ли нагрузка.
Но иногда просто нельзя останавливать сервисы. А иногда и процессов работающих уже почти не осталось, а нагрузка всё равно есть.
Вот хочется найти какое-нибудь средство быстро и точно узнавать что же грузит процессор.
что значит "система" грузит? примеры ваших процессов приведите? что для вас "быстро"? если процесс выдает 100% нагрузку в течении 0.5 секунд, с частотой 3 секунды? если раз в минуту грузит 100% на 10 секунд? "быстро" зависит от периода, который конкретно для вас слишком долгий
Сорри, ещё не знаю тут как ответить конкретно человеку. Поэтому отпишу сразу всем: 1) Система - это поле sy в top. Или "красненькая" часть столбца в htop. Короче всё, что не user-space и не i/o. 2) Я рассматриваю сейчас случаи, когда 100% загрузка проца/ядра, и либо все эти 100% значатся как sys.load, либо часть как user, а часть как sys. 3) В основном меня начинает этот вопрос волновать когда эта нагрузка постоянна в течение как минимум часа и никуда не девается, и никак не коррелирует со входящим траффиком. Ну либо девается, когда убиваешь всё-всё-всё, гасишь обмен траффиком с сеткой.
Результат vmstat уже показыватьно нет смысла. В этот раз причиной был DDOS с флудом TCP-пакетами на 80-й порт. И сетевушка просто захлёбывалась. Ядро даже не успевало забирать из её буфера пакеты. Но это я точно выяснил лишь когда хостер прикрыл траффик из инета кроме как от меня. Но не всегда есть такая возможность. Да и опять же. всё это косвенные способы. Я их знаю и умею. Но я хочу найти некую системную утилиту, которая показывает что там происходит под капотом у ядра. Чем оно грузит проц. Какой драйвер, прерывание от какого устройства, какой системный вызов.
Ответить конкретно -- @имя (в одном комментарии допускается только одно). Смотреть статистику прерываний -- /proc/interrupt (вообще, man 5 proc -- полезное чтиво). А тут нагуглил кучу разных мониторов.
Что-то на 100% грузит CPU (Как узнать что именно?)
Модератор: Bizdelnick
2 ответа 2
надо сходить сюда, можете найти русский перевод или похожие статьи. Поможет вам ограничить выборочно потребление CPU процессами
почитать про strace и подобные ему sudo strace -t -e trace=open,connect,accept unity сможете увидеть много интересного
для ядра - ftrace или поищите еще kernel tracer-ов
утилиты, которая дает понять это с одного взгляда я не знаю, если вы не нагуглите, я бы пошел следующим способом: настроить мониторинг процессов так, чтобы в случае возникновения нагрузки на K% на N секунд каким-либо процессом, он давал алерт.
Можно наскриптовать так, чтобы при возникновении алерта, мониторинг натравливал trace на этот процесс, на секунду, допустим, и сохранял бы список самых часто выполняемых / долгих функций.
Но тут нужно быть осторожным, чтобы не повалить систему и не заполнить hdd. Т.е. скриптинг должен учитывать, что необязательно ставить trace на процесс, который уже был под трейсом (т.е. для которого уже сохранен tracefile), иначе процессы начнут тормозить еще больше, к примеру. Нельзя трейсить слишком долго - гигабайтные дампы вам не нужны.
Если вы решаете конкретную задачу борьбы с DDoS - ну, или очень много денег и очень много дц (повезло, если у вас есть), или cloudflare - я бы так пошел для начала.
Т.е. тут все от задач зависит, дебажить драйвер ядра - один подход, защищаться от ddos - другой.
Постоянно загружены под 100% два ядра процессора (попеременно), при этом никаких программ не запущено. То есть, постоянной нагрузки на 2 конкретных ядра нет, через некоторое время нагрузка переходит на другие ядра. Такое переключение напоминает обычную работу системы, но встревожен тем, что раньше ядра никогда не были так загружены.
Возможно это только на моей стороне, а может это делает патч от Meltdown/Spectre или что-то типа того (регулярно устанавливаю обновления системы в Ubuntu Software, поэтому могло быть установлено автоматически).
Компьютеру нет еще и года. Я начинающий пользователь Linux, так что не судите строго :) Подскажите, что это может быть и как это решить.
Запусти мониторилку от рута. Возможно два ядра разгребают прерывания.
Патч Meltdown не влияет на загрузку ядер в простое. Так что это явно какой-то процесс грузит.
скорее всего это tracker гномовский тебе покоя не даёт :)
В top'е хоть что показывает?
top - 11:50:26 up 19 min, 1 user, load average: 2.62, 2.56, 1.89
Tasks: 218 total, 1 running, 217 sleeping, 0 stopped, 0 zombie
%Cpu(s): 50.7 us, 0.2 sy, 0.0 ni, 49.1 id, 0.0 wa, 0.0 hi, 0.1 si, 0.0 st
KiB Mem : 16204752 total, 13145312 free, 1401376 used, 1658064 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 14209132 avail Mem
Судя по %Cpu(s): 50.7 us , запущены какие-то процессы, которые и потребляют процессорное время. Там же в выводе топа они должны быть видны, в колонке S должно быть R, а в %CPU - 100
В гномовском/кде-шном мониторе посмотри, какой процесс грузит.
смотрел в приложении «System Monitor», все приложения показывают 0% CPU. В самой команде top показывает что команад systemd потребляет 200% (как раз эти 2 ядра по 100%).
2008 root 20 0 584716 19648 10868 S 200.0 0.1 68:08.76 systemd
покажи вывод команды lsof -p 2008 -n , запускать от рута
Deleted ( 11.05.18 12:12:27 )
Последнее исправление: Deleted 11.05.18 12:14:36 (всего исправлений: 1)
Лог получился довольно большой. Нужна отдельная строка? Или полностью? Если полностью, то могу попробовать скинуть куда-нибудь в облако и дать ссылку. А то вижу тут документы нельзя прикреплять вроде как.
systemd 2008 root 5u REG 8,2 1243863 156894 /root/snap/2048buntu/4/.local/share/systemd/log/minergate.log
Это майнер. Судя по
Со снапами дела не имел, так что возможно, что его можно просто удалить, если у этих пакетов есть какой-то свой менеджер. В крайнем случае придется переустанавливать систему, т.к. от рута программа могла сильно закрепиться в ОС.
Совсем недавно установил CS 1.6 с интернета (нативная на Ubuntu), наверное в этом причина :) До этого только устанавливал обновления системы в Ubuntu Software, ну и другие безобидные программы.
поможет ли обновление до LTS 18.04? Или нужно полностью удалить систему и поставить заново? И если полностью, то безопасно ли бекапить файлы с этой зараженной системы и ставить на новую? Или на линуксе нет таких фишек как на Виндовс, где вирусы могут прятаться в файлах? :)
Вспомнил про шутку: пришло время переустанавливать шиндошс!
Стоп, кажется это даже не CS :)
По названию снапа это нативная игрушка 2048 (на компе так и называется 2048ubuntu).
Ладно, попробую разобраться. Систему удалять не хочется.
поможет ли обновление до LTS 18.04?
Обновление скорее всего не поможет, т.к. с большой вероятностью все данные сохранятся, в том числе и майнер. Лучше переустановить систему полностью.
И если полностью, то безопасно ли бекапить файлы с этой зараженной системы и ставить на новую? Или на линуксе нет таких фишек как на Виндовс, где вирусы могут прятаться в файлах? :)
Все свои файлы из /home можешь переносить без опасений. Кроме них вряд ли будет нужно что-нибудь бэкапить.
Удалил эту игру и все стало на свои места :) Спасибо тебе огромное просто.
это где ты такую годноту выкачал? Или это сразу в убунтовских репах раздают? )
Вирусы теперь не в моде, майнеры особенно монеро в тренде
В Центре Приложений скачал. Вбил в поиск 2048. Да, не ожидал такого поворота :)
unsquash'нул - действительно майнер inside, несмотря на то что virustotal молчит
Интересно, куда нужно сообщить чтобы эту игру удалили с Центра Приложений. Не хочу чтоб кто-то другой также как и я думал в чем проблема.
Может быть ответят куда писать. На сайте за 10 минут поиска кнопку «пожаловаться» не нашел.
Маняйнерщики такие ламеры, пипец просто.
email у него тоже хорош.
snap таки помойка, все-таки.
Как это не удивительно, но там тоже есть. Посмотрел на hextetris. Остальное лень смотреть.
ЛОЛ, вирусня в официальном убунтусторе? Линукс пришел к успеху.
Удалил эту игру и все стало на свои места
Проверь ещё не завалялись ли где стопитсотгиговые файлики.
systemd + ubuntu + snap = успех
А зачем snap-у нужен root? Разве пойнт не в том, чтобы ставить от пользователя?
В голосину с этого треда. Репозитории это надёжно, говорили они.
Это не репозиторий, это таки стор, разница есть.
За наполнение репозитория отвечает мейнтейнер, в репозиторий поступает оригинальный сорс, если надо на него накладывают патчи специфичные для дистрибутива. Отвечает за все мейнтейнер, который и тестирует полученный пакет. Для дебиана пакет проходит различение стадии тестирования, от экспериментального репозитория до стабильного, где его опять же тестируют пользователи.
Сравни с принципом маркета где загружает пакет его автор, и он в лучшем случае проходит проверку на антивирусе.
Если малварь в репозитории то мейнтейнер вылетает мейнтейнер, а это годы работы. В случае маркета автор, который практически ничем не рискует.
Ну и как подтверждение, сравните наполнение плеймаркета и репозитория по количеству малвари.
А это был автор оригинальной игры? Нет. Любой васян может загрузить туда и туда свои завирусованные поделия.
Знаю что железо не ахти, но всё же. Попал мне в руки такой динозаврик, с соответственным кубообразным монитором. До моих рук там стояла какая-то сборка ХРюши. Задача спартанская - сделать из него окно в интернет для пары простых сайтов. Офтоп не катит из-за безопасности. Так вот решил ставить пингвина. Выбор пал на Lubuntu. Поставил LTS. Вроде стартовала хорошо, без ошибок. После обновления пакетов я зашел в Midori. При посещении Google в логе выскакивает ошибка с вылетом программы «Illegal instruction (core dumped)». Htop говорит что при любом действии проц грузится 30-50%, а при открытии браузера целые 100%. Виновником стал Xorg. Драйвера на видео стоят свободные, без PPA. У других на аналогичном железе Lubuntu летает, а у меня вечно траблы. Что делать? xorg.conf почему-то не могу найти(
Неужели никто даже не скажет чтобы я его на свалку выкинул?
Выкинь его на свалку
Попробуй какой-нибудь Weston.
Если вам только в интернеты, то смотрите в сторону легковесных дистрибутивов. Они запросто удовлетворят вашим требованиям.
Новый лубунту достаточно лёгок, но слишком сложно жуется вашим железом.
Пальцем в небо, конечно, но все же. Похожая видюха, даже чуть слабее (R300), debian 9.
Его нет вовсе. Может мне его как-то сгенерировать?
вне иксов, естественно.
Я не очень в этом разбираюсь, но риску предположить, что используется xf86-video-modesetting драйвер, который ускоряет десктоп посредством GLAMOR(ускорение 2d через OGL), но видно карта слишком старая и используется программная реализация OGL исполняемая на cpu.
Ради прикола, попробуй поставить xserver-xorg-video-ati.
А точнее? Если JavaScript не нужен, попробуйте links2 или PaleMoon с NoScript (разрешайте только самые основные скрипты и только нужным сайтам).
Lubuntu слишком много демонов по умолчанию запускает. Пакетов установлено много. Любая *buntu в стандартном наборе — это совсем не спартанский вариант. Попробуйте Ubuntu Minimal с IceWM.
Htop говорит что при любом действии проц грузится 30-50%
Даже открытие каталога в файловом менеджере или набор текста в терминале способен дать такую нагрузку? Если речь о такой нагрузке при открытии сайта, то это очень хорошо.
У вас памяти мало. Я советую вам поставить Debian 8 Minimal i386 и вручную установить X11, драйверы и оконный менеджер IceWM. В качестве основного браузера — PaleMoon. В репозиториях его не найдете, но можете скачать в архиве версию, которая не требует установки — достаточно просто распаковать.
Illegal instruction обычно выдаётся системой, если бинарник попытался позвать какую-то инструкцию CPU, которой на железе нет. Возможно, этому Midori нужен какой-нибудь там SSE*, которого нет на Athlon XP?
Я на такую фигню нарывался, когда переносил Gentoo, собранную для Ivy Bridge, на комп с Sandy Bridge (т.е. целевой CPU был на одно поколение старее).
И немного ретроградское предложение — попробуй поставить предыдущий LTS (14.04), он вроде бы ещё поддерживается. Возможно, там получше ситуация с поддержкой инструкций будет.
spijet ★★★ ( 14.12.17 05:30:51 )
Последнее исправление: spijet 14.12.17 05:33:00 (всего исправлений: 1)
получше ситуация с поддержкой инструкций будет
Вряд ли. Скорее нет, чем да.
Так ему же надо бинарники, собранные под более старые наборы инструкций. Почему нет?
Поставь NixOS сможешь избавится от депенденси хелла и даже проприетарные драйверы от амуде поставить
не используй готовых решений в виде мусорных DE, собирири систему из репозитория на основе ее базовой части, используй легковесные wm - jwm или i3, у меня пол парка с таким железом и все летает.
Задача спартанская - сделать из него окно в интернет для пары простых сайтов.
Дело в том что интернет тоже не очень. Нет возможности скачивать пакеты гигами. Я ставил на Lubuntu icewm и чистый Openbox - ничего не изменилось, как Xorg буйствовал так и буйствует. Я конечно могу поставить минимальный дистрибутив, но какой для данной ситуации лучше. Ubuntu с Debian или какой нибудь Arch с Gentoo. Сразу скажу что я с напильником на ВЫ.
Может Lubuntu не лучший выбор, хотя позиционирует себя как дистрибутив for old pc. Какой дистрибутив посоветуете, какой дистр стоит на вашем «парке»?
Я пробовал много решений и не работал. Наконец, я пробовал это и работал отлично, без необходимости делать такие вещи, как sudo service lightdm stop и так далее. Просто выполните следующие действия:
Показывает список совместимых драйверов для ваших устройств: sudo ubuntu-drivers list
Затем запустите для установки совместимых:
sudo ubuntu-drivers autoinstall
Наконец, выполните (или просто перезагрузите компьютер):
sudo service lightdm restart
Для тех, кто следит за руководством, но проблема все же появляется, возможно, это имеет какое-то отношение к самому драйверу.
Некоторые из графических процессоров NVIDIA плохо работают с новейшим драйвером. Если вы подозреваете, что являетесь жертвой этой проблемы, вы можете следовать моему руководству ниже.
Ниже приведены только ответы на копирование в ответ на мой собственный вопрос здесь. [ ! d3]
Я сделал это !! Это была проблема с самим драйвером!
В принципе, после некоторого времени скрывая интернет, некоторые люди сказали, что, возможно, я смогу использовать стабильную Решение вместо новых драйверов.
Однако, посмотрев на apt-cache search nvidia-352, я обнаружил, что nvidia-352 является всего лишь драйвером перехода для графического драйвера nvidia-361.
Однако, основываясь на моем предыдущем тесте, nvidia-361 до самого нового (nvidia-370 на момент написания) apt-cache search nvidia-352
Поэтому мне нужно скачать точный nvidia-352 вместо перехода nvidia-352 .
Если у вас такая же проблема, как у меня, ниже приведены шаги по тому, как Я решил это.
nvidia-352
Voila! Если вы загрузились на свой рабочий стол без единого сбоя, то вы успешно решили эту графическую проблему!
Когда я впервые установил Ubuntu 16.04.1, у меня были проблемы с графикой, которые были решены с помощью nvidia-304 (уже упоминалось выше в качестве решения). Я только что обновил свою систему неделю назад, и с тех пор я обнаружил, что «не могу войти в цикл проблемы», как уже многие люди уже описали. Войдя через tty, я попытался установить nvidia-304, 324, 350 и 370. Ничего из них не работало. Наконец я пробовал что-то очень резкое. Я установил Xubuntu 16.04.1. Он работал немедленно без каких-либо конкретных усилий с моей стороны. Таким образом, кажется, что проблема тесно связана с менеджером рабочего стола (Gnome). Поэтому, если вы можете переключиться на Xfce из окна оболочки, вам может быть хорошо с вашей текущей версией Ubuntu (извините, но я не знаю, как это сделать). В противном случае установите Xubuntu.
Мои решения таковы:
OS ubuntu 16.04 nvidia драйвер до 350, установленный в обновлениях программного обеспечения от ubuntu
Загружаю из nvidia драйвер 370, и я выполняю sh./path -to-driver в терминале введите tty
и процесс обработки lightdm
sudo service lightdm stop
с этими командами имеют проблемы
Решение
Сначала перезагрузите компьютер и моя первая проблема: я не могу войти на рабочий стол в ubuntu и не могу войти в терминал tty, я вхожу в режим восстановления и перехожу к корневому терминалу и делаю это
и перезагрузитесь и посмотрите. вам нужно установить драйвер ubuntu с помощью
sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt update sudo apt-get install nvidia-current
или найти в программном обеспечении и обновлениях и установить драйвер
Это решение является моим решением той же проблемы раньше. Я не могу удалить драйвер при загрузке веб-страницы nvidia
У меня проблема с этим циклом входа в систему уже несколько месяцев. Теперь я наконец получил ответ и действительно хочу поделиться им со всеми вами, кто тянет ваши волосы за решение. Если есть более простой способ сделать это, пожалуйста, скажите.
Это мой первый пост, поэтому, пожалуйста, несите с ошибками, которые я могу сделать в качестве первого таймера:)
Я собираюсь рассказать весь процесс, который я сделал с самого начала, чтобы вы знали, какие все методы я пытался.
Что-то на 100% грузит CPU
В последние дни начал замечать, что утром (а всю ночь компьютер у меня качает файлы из Интернетеа) процессор загружен на 50% (или одно ядро на 100%). Когда захожу в монитор, то вижу что загрузка ядер процессора идёт попеременно и по-разному: то 20%+80%, то 65%+35%, а то и вовсе 0%+100%. В общем, соотношение разное, но сумма всегда равна 100%. При этом ни одного приложения не запущено. Сам монитор в списке запущенных приложений не показывает то, что так нагружает процессор. Запуск монитора через sudo хоть и выводит больше процессов, но именно тот, что загружает систему в списке отсутствует. Перегрузка компьютера помогает. Но это же не метод! Надо знать причину и устранять её.
Прежде чем решить проблему, необходимо понять, что так нагружает систему. Вот с этим вопросом и обращаюсь к сообществу! Помогите, пожалуйста, советом.
Yes, I am a criminal. My crime is that of curiosity. My crime is that of
judging people by what they say and think, not what they look like.
Спасибо. Команда top выдала следующее:
А вот результат работы команды ps -aux:
Однако это привело меня в ступор. Во-первых, на моём компьютере нет других пользователей кроме "root" и "stanislav", а здесь процесс запущен от имени какого-то "beaglein". А во-вторых, в Интернете не могу найти никакой информации об "beagle-build-in".
Гадость какая-то непонятная.
Главное, не волноваться!
Это просто программа beagle создает кэш, для того, чтобы потом можно было быстро найти какие-нибудь данные на диске. Как мне кажется, она должна начинать кэшировать после 12 ночи. Можешь убить задание: в командной строке набрать kill -9 32620.
Вот ссылка на их сайт: Main Page - Beagle.
И пользователей на компе обычно куча. Смотреть их так можно less /etc/passwd.
Сейчас не могу дать ссылку на более подробное обьяснение, что эти за пользователи.
beagle is the indexing thing (like google desktop)
I'm guessing this is the indexing process thats eating cpu like mad.
И даже смог убить процесс.
Но! Не нужно мне никакое индексирование! Я и так знаю где и что лежит у меня на компьютере. Вот бы суметь отключить навсегда этот самый beagle.
beagle is the indexing thing (like google desktop)
I'm guessing this is the indexing process thats eating cpu like mad.
И даже смог убить процесс.
Но! Не нужно мне никакое индексирование! Я и так знаю где и что лежит у меня на компьютере. Вот бы суметь отключить навсегда этот самый beagle.
бигль запускается по крону. и, вероятнее всего по system crontab (/etc/crontab), которая, грубо говоря, выполняет все, что находится в в /etc/cron.hourly, /etc/cron.daily, /cron/cron.weekly итд
в случае opensuse, это управляется yast. в случае ubuntu скорее всего тоже как-нить, "гуманоидно"
Читайте также: