Что делать если компьютер "завис"?

Для новичков как вообще в Linux, так и в конкретной теме, к которой относится вопрос.

Модератор: Bizdelnick

Ответить
MiK13
Сообщения: 1180
ОС: Linux Debian

Что делать если компьютер "завис"?

Сообщение MiK13 »

Такая ситуация у меня была несколько раз. Подозреваю, что основная причина в нехватке памяти.
Вот и сегодня было, в firefox. Компьютер "завис". Окно браузера пропало, на экране был рабочий стол с иконами, мышка бегала, но на клавиатуру не было никакой реакции. Даже по NumLock индикатор не переключался.
Пошёл на другой компьютер, зашёл на свой по SSH. Попробовал остановить работу браузера. Но ни по kill. ни по kill -9 его процесс не пропадал.
Выдал su -; reboot. Соединение разорвалось. Но компьютер не перегрузился. Был на нём пустой экран. Но индикатор на NumLock реагировал. Перегрузил по Alt+SysRq+B
Но, может быть есть ещё какие-то средства восстановления работы?
Спасибо сказали:
Аватара пользователя
anonymous.ru
Сообщения: 614

Re: Что делать если компьютер "завис"?

Сообщение anonymous.ru »

статус процесса был D ?
Добавлено (18:31):
сколько у Вас swap?
Добавлено (18:34):
что в /proc/sys/vm/overcommit_memory ?
:drinks:
Спасибо сказали:
Аватара пользователя
Zer0
Сообщения: 479
ОС: Void, Slackware

Re: Что делать если компьютер "завис"?

Сообщение Zer0 »

MiK13 писал:
18.07.2022 16:16
Подозреваю, что основная причина в нехватке памяти.
Можно понаблюдать, чем-то вроде free --mega -s 30 -c 1000 > ./memusage
Memento mori ... сделай бэкап.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20794
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Что делать если компьютер "завис"?

Сообщение Bizdelnick »

MiK13 писал:
18.07.2022 16:16
Подозреваю, что основная причина в нехватке памяти.
А сколько её у Вас? Для нынешнего Firefox с нынешними сайтами надо не меньше 8 ГиБ. И что индикатор обращения к диску, горел?
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
MiK13
Сообщения: 1180
ОС: Linux Debian

Re: Что делать если компьютер "завис"?

Сообщение MiK13 »

Сейчас опять произошло подобное зависание.
Вошёл на свой с соседнего компьютера. С него в консоли работает нормально.
Bizdelnick писал:
18.07.2022 20:31
MiK13 писал:
18.07.2022 16:16
Подозреваю, что основная причина в нехватке памяти.
А сколько её у Вас? Для нынешнего Firefox с нынешними сайтами надо не меньше 8 ГиБ. И что индикатор обращения к диску, горел?
Я думал докупить ещё 4 ГБ. Но проблема, что компьютер уже староватый и там, вроде, DDR3, а её трудновато найти. Да и особо не хочется тратить свои деньги на рабочий компьютер.
Но подозреваю, что дело в чём-то другом.

Shell

~$ free
total used free shared buff/cache available
Mem: 4024708 1748056 754008 31008 1522644 1997192
Swap: 4195184 0 4195184
Индикатор сейчас не горел. Хотя раньше бывало, что при "зависании" (временном) он непрерывно горел.
Что касается Firefox. Закладок там много, но я замитил, что он, в отличии от Оперы загружает только активные. Зависание произошло после активации только двух закладок. Хотя, вчера я работа со многими. Причём, зависание произошло постепенно.
Сначала закладки перестали переключаться. Я смог переключился на другой экран (Desktop), Вернулся на тот, на котором был браузер -- там было только обрамление окна. Через несколько секунд клавиатура перестала реагировать. А потом и мышка зависла.
Мышка и клавиатура восстановились после того, как на экран выскочило сообщение от другого компьютера (на который вошёл по ssh -X)
Я попробовал мышкой закрыть окно браузера. Через какое-то время выскочило сообщение, что окно не отвечает. Я указал "закрыть".
После этого браузер вызвался нормально и сейчас (пока) работает.
Дома (при памяти в 32 ГБ) пока ничего подобного не было.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20794
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Что делать если компьютер "завис"?

Сообщение Bizdelnick »

MiK13 писал:
19.07.2022 12:56
DDR3, а её трудновато найти.
Не знаю, как в ваших краях, но у нас её кругом навалом, и стоит копейки. Сам недавно апгрейдил несколько компов.
MiK13 писал:
19.07.2022 12:56
не хочется тратить свои деньги на рабочий компьютер.
Эээ… Пойти к начальству и сказать, что машинка старенькая, не тянет уже, не вариант?
MiK13 писал:
19.07.2022 12:56
Индикатор сейчас не горел. Хотя раньше бывало, что при "зависании" (временном) он непрерывно горел.
Значит, в данном конкретном случае имело место что-то другое. Пожалуй, имеет смысл глянуть SMART диска и, может быть, погонять memtest, проверить, нет ли перегрева (в том числе под stress). Если комп преклонного возраста, визуально изучить материнку на предмет вздутых конденсаторов тоже не помешает.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
Zer0
Сообщения: 479
ОС: Void, Slackware

Re: Что делать если компьютер "завис"?

Сообщение Zer0 »

MiK13 писал:
19.07.2022 12:56
Индикатор сейчас не горел
Какой индикатор? Если жесткого диска - имеет смысл прогнать его викторией.
Для CPU и мат. платы рекомендую Prime95, под линукс он есть и работает.
Memento mori ... сделай бэкап.
Спасибо сказали:
MiK13
Сообщения: 1180
ОС: Linux Debian

Re: Что делать если компьютер "завис"?

Сообщение MiK13 »

Bizdelnick писал:
19.07.2022 13:08
MiK13 писал:
19.07.2022 12:56
Индикатор сейчас не горел. Хотя раньше бывало, что при "зависании" (временном) он непрерывно горел.
Значит, в данном конкретном случае имело место что-то другое.
Впечатление, что действительно что-то аппаратное. Уже несколько часов комп работает нормально.
Сейчас, правда, начались заметные тормоза, но это именно из-за свопинга.
Bizdelnick писал:
19.07.2022 13:08
Пожалуй, имеет смысл глянуть SMART диска
Поставил smartmontools. Буду проверять.
Bizdelnick писал:
19.07.2022 13:08
может быть, погонять memtest, проверить, нет ли перегрева (в том числе под stress).
Предположение про проблемы с памятью у меня возникли уже довольно давно. По-моему, ещё тогда был Debian 9.
Я запускал xonix и он иногда вытворял что-то непонятное.
Я "иду" по "чужому" полю, "замыкаю" некоторую область, а она не заполняется. Остаётся только след, по которому я прошёл. И "охотник" из этого поля эти следы "пробивает".
Запускал тест памяти из RIP-Linux, но он за несколько часов работы ни о каких ошибках не сообщал.
Попробую memtext86 из Debian.
Bizdelnick писал:
19.07.2022 13:08
Если комп преклонного возраста, визуально изучить материнку на предмет вздутых конденсаторов тоже не помешает.
Беглый обзор ничего подозрительного не выявил. Пыли, правда, не мало. Но sensors показал

Shell

$ sensors
coretemp-isa-0000
Adapter: ISA adapter
Core 0: +42.0°C (high = +78.0°C, crit = +100.0°C)
Core 1: +42.0°C (high = +78.0°C, crit = +100.0°C)

nouveau-pci-0100
Adapter: PCI adapter
fan1: 0 RPM
temp1: +49.0°C (high = +95.0°C, hyst = +3.0°C)
(crit = +125.0°C, hyst = +3.0°C)
(emerg = +135.0°C, hyst = +10.0°C)

atk0110-acpi-0
Adapter: ACPI interface
Vcore Voltage: 1.10 V (min = +0.80 V, max = +1.60 V)
+3.3 Voltage: 3.30 V (min = +2.97 V, max = +3.63 V)
+5 Voltage: 5.11 V (min = +4.50 V, max = +5.50 V)
+12 Voltage: 12.10 V (min = +10.20 V, max = +13.80 V)
CPU FAN Speed: 2636 RPM (min = 600 RPM, max = 7200 RPM)
CHASSIS1 FAN Speed: 1687 RPM (min = 600 RPM, max = 7200 RPM)
CHASSIS2 FAN Speed: 0 RPM (min = 600 RPM, max = 7200 RPM)
POWER FAN Speed: 0 RPM (min = 600 RPM, max = 7200 RPM)
CPU Temperature: +24.5°C (high = +60.0°C, crit = +95.0°C)
MB Temperature: +39.0°C (high = +45.0°C, crit = +95.0°C)
Спасибо сказали:
Аватара пользователя
yoricI
Сообщения: 2385
ОС: gentoo fluxbox

Re: Что делать если компьютер "завис"?

Сообщение yoricI »

Bizdelnick писал:
18.07.2022 20:31
Для нынешнего Firefox с нынешними сайтами надо не меньше 8 ГиБ
Что дома 91.11 на 6Гб, что на работе 91.11 же на аж 2Гб, не жалуюсь, диск не свопит. Как так?
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20794
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Что делать если компьютер "завис"?

Сообщение Bizdelnick »

yoricI писал:
19.07.2022 19:36
Что дома 91.11 на 6Гб, что на работе 91.11 же на аж 2Гб, не жалуюсь, диск не свопит. Как так?
Ну, видимо, больше пары-тройки вкладок не открываете или тяжёлые сайты не посещаете. Я намучился с 4 ГиБ, и жена тоже. Конечно, сколько-то uBO и прочие дополнения откушивают, но не думаю, что дело только в них.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
algri14
Сообщения: 1369
ОС: Mageia 5.1 & 8 x86_64, KDE

Re: Что делать если компьютер "завис"?

Сообщение algri14 »

У меня ОЗУ = 6Гб и Fox работает довольно бегло, зависаний не наблюдаю.
MiK13, я не спец по ремонту, но за 8 лет уже знаю, что любую аппаратную проблему надо начинать с разъёмов подключения, они элементарно окисляются — либо чистить (резинка, раствор), либо менять шлейф.
У памяти можно почистить ножки и потыкать туда-сюда в разъём. Чистка системника от пыли тоже приветствуется.
Мой ж/д накрылся не то от отключения энергии в доме, не то от паршивого шлейфа.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20794
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Что делать если компьютер "завис"?

Сообщение Bizdelnick »

algri14 писал:
19.07.2022 21:52
Мой ж/д накрылся не то от отключения энергии в доме, не то от паршивого шлейфа.
Первое довольно маловероятно, второго в принципе не может быть (если только пробоя изоляции не было, что совсем из области фантастики). Да им этого и не требуется, они сами справляются с тем, чтобы помереть. Но могут и от чистки, если статикой долбанёт неудачно, — для всего прямые руки требуются.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
MiK13
Сообщения: 1180
ОС: Linux Debian

Re: Что делать если компьютер "завис"?

Сообщение MiK13 »

Несколько дней всё было нормально и тут опять.
Есть некоторое подозрение, что какие-то проблемы я Java-Scripts на некоторых страницах.
И вряд ли дело в памяти. Сейчас, например,

Shell

# free
total used free shared buff/cache available
Mem: 4024708 1998924 375968 1126520 1649816 669336
Swap: 4195184 607932 3587252
Удивляет, что kill -9 на процесс firefox-esr yнет никакой реакции

.....

Пока пытался разобраться, зайдя с другого компьютера, firefox всё-таки пропал. И память освободилась:

Shell

# free
total used free shared buff/cache available
Mem: 4024708 742580 2012748 718816 1269380 2333772
Swap: 4195184 567284 3627900
Спасибо сказали:
Аватара пользователя
anonymous.ru
Сообщения: 614

Re: Что делать если компьютер "завис"?

Сообщение anonymous.ru »

D — [uninterruptible sleep] непрерываемый сон (в основном IO)
Добавлено (18:25):
до свидания диск (если толко это не сетевые хранилища)
:drinks:
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20794
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Что делать если компьютер "завис"?

Сообщение Bizdelnick »

MiK13 писал:
26.07.2022 17:51
Удивляет, что kill -9 на процесс firefox-esr yнет никакой реакции
Как именно Вы судите об отсутствии реакции? И который из процессов firefox-esr пытаетесь убить?
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
UnixNoob
Сообщения: 1380
ОС: Slackware

Re: Что делать если компьютер "завис"?

Сообщение UnixNoob »

Что с другими браузерами? Если зависает только при работе Firefox можете поискать в англоязычных ресурсах что-нибудь вроде "firefox freeze system" или "firefox crashing", или логи его почитать при запуске с консоли. У меня было такое же, но я решить не сумел, сменил дистрибутив - проблема ушла, это конечно радикальное решение, но мне не помогли, на тот момент, найденные решения связанные именно с Ff. Сбросы настроек/ переустановки версий и т.д
"Однажды один очень мудрый человек… ничего не сказал. Времена были опасные, да и собеседники ненадёжные"
Спасибо сказали:
MiK13
Сообщения: 1180
ОС: Linux Debian

Re: Что делать если компьютер "завис"?

Сообщение MiK13 »

Bizdelnick писал:
26.07.2022 19:46
MiK13 писал:
26.07.2022 17:51
Удивляет, что kill -9 на процесс firefox-esr yнет никакой реакции
Как именно Вы судите об отсутствии реакции?
Я даю эту выкоманду несколько раз и в ответ нет никакой реакции.
Обычно, если процесс по команде kill завершает работу, то в ответ выдаётся сообщение, что нет такого процесса.
Кстати, иногда бывает, что процесс завершается.
Bizdelnick писал:
26.07.2022 19:46
И который из процессов firefox-esr пытаетесь убить?
Первый, который появляется в списке, полученном по команде ps -elf | grep firefox

Правда, потом я заметил, что процесс свою работу всё-таки завершает, но остаётся на зомби. То есть в конце есть <defunc>
Но после него есть ещё куча других процессов, с "firefox-esr"
Правда, меня ещё удивляет, что по команде ps -elf в колонке PPID в строке с первым появлением firefox-esr стоит 1.
То есть "родителем" firefox является init.
Спасибо сказали:
Аватара пользователя
anonymous.ru
Сообщения: 614

Re: Что делать если компьютер "завис"?

Сообщение anonymous.ru »

если настоящий родительский процесс завершился или стал зомби, то PPID меняется на 1. хочешь избавиться от зомби - убей его отца.
эти все firefox имеют один pgid? тогда посылай -9 всей группе.
Добавлено (11:36):
менее жесткий вариант избавления от зомби - послать sigchld его отцу, и только если это не сработает, тогда уже посылать отцу sigkill
:drinks:
Спасибо сказали:
MiK13
Сообщения: 1180
ОС: Linux Debian

Re: Что делать если компьютер "завис"?

Сообщение MiK13 »

anonymous.ru писал:
02.08.2022 11:31
если настоящий родительский процесс завершился или стал зомби, то PPID меняется на 1.
Меня удивляет другое:

Shell

mik13@MiK13:~$ ps -elf | head -1 ; ps -elf | grep firefox | head -1
F S UID PID PPID C PRI NI ADDR SZ WCHAN STIME TTY TIME CMD
4 S mik13 3894 1 11 80 0 - 1023651 - 14:56 pts/7 00:23:47 /usr/lib/firefox-esr/firefox-esr
То есть когда я работаю с этим браузером, то у него уже PPID 1.
При том, что дома у него PPID вполне "нормальный" (номер PPID немного меньше, чем PID)
Может быть это как-то связано с вызовом? Хотя и дома и на работе он у меня одинаковый.
Чтобы проще вызывать, в ~/bin создал простейший скрипт с именем FF, который его вызывает
Потом я его немного модернизировал до такого

Код: Выделить всё

#! /bin/bash

/usr/lib/firefox-esr/firefox-esr 1>/var/log/FF/FF1.log 2>/var/log/FF/FF2.log &
И в /var/log/FF/FF2.log увидел строки

Код: Выделить всё

###!!! [Parent][RunMessage] Error: Channel closing: too late to send/recv, messages will be lost
###!!! [Child][RunMessage] Error: Channel closing: too late to send/recv, messages will be lost
###!!! [Child][RunMessage] Error: Channel closing: too late to send/recv, messages will be lost
###!!! [Child][RunMessage] Error: Channel closing: too late to send/recv, messages will be lost
###!!! [Child][RunMessage] Error: Channel closing: too late to send/recv, messages will be lost
###!!! [Parent][RunMessage] Error: Channel closing: too late to send/recv, messages will be lost
Может быть это что-то объясняет?

Ещё удивило

Shell

mik13@MiK13:~$ pgrep -la firefox
3894 /usr/lib/firefox-esr/firefox-esr
mik13@MiK13:~$ ps -elf | grep -c firefox
14
То есть pgrep показывает только один процесс, а grep в ps -elf находит их 13.
Возможно потому что остальные 12 его "дети"?
anonymous.ru писал:
02.08.2022 11:31
хочешь избавиться от зомби - убей его отца.
Как-то не хочется убивать init :)
anonymous.ru писал:
02.08.2022 11:31
эти все firefox имеют один pgid? тогда посылай -9 всей группе.
А как посмотреть PGID?
anonymous.ru писал:
02.08.2022 11:31
менее жесткий вариант избавления от зомби - послать sigchld его отцу, и только если это не сработает, тогда уже посылать отцу sigkill
Спасибо. Постараюсь проверить sigchld.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20794
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Что делать если компьютер "завис"?

Сообщение Bizdelnick »

MiK13 писал:
04.08.2022 19:12
Как-то не хочется убивать init
У зомби не может быть PPID 1, в противном случае это крайне маловероятный баг init (хотя от systemd, в принципе, можно и такого ожидать).
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
anonymous.ru
Сообщения: 614

Re: Что делать если компьютер "завис"?

Сообщение anonymous.ru »

Bizdelnick а еще firefox может использовать pid_namespaces
:drinks:
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20794
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Что делать если компьютер "завис"?

Сообщение Bizdelnick »

anonymous.ru писал:
04.08.2022 21:22
Bizdelnick а еще firefox может использовать pid_namespaces
Зачем бы ему это делать? Не вижу ни одной разумной причины.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
anonymous.ru
Сообщения: 614

Re: Что делать если компьютер "завис"?

Сообщение anonymous.ru »

"Б"- безопасность песочницу организовать.
:drinks:
Спасибо сказали:
MiK13
Сообщения: 1180
ОС: Linux Debian

Re: Что делать если компьютер "завис"?

Сообщение MiK13 »

Bizdelnick писал:
04.08.2022 19:49
У зомби не может быть PPID 1, в противном случае это крайне маловероятный баг init (хотя от systemd, в принципе, можно и такого ожидать).
Но почему у firefox-esr становится PPID 1 ?

В последние дни происходило зависаний. Я старался не загружать компьютер.
Если ещё раз такая ситуация возникнет, просмотрю, что будет когда смогу "превратить" firefox в зомби.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20794
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Что делать если компьютер "завис"?

Сообщение Bizdelnick »

MiK13 писал:
05.08.2022 21:27
Но почему у firefox-esr становится PPID 1 ?
Например, потому что Вы убили его родителя. Или он сам завершился. Или OOM-killer его убил.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
MiK13
Сообщения: 1180
ОС: Linux Debian

Re: Что делать если компьютер "завис"?

Сообщение MiK13 »

Bizdelnick писал:
05.08.2022 21:46
MiK13 писал:
05.08.2022 21:27
Но почему у firefox-esr становится PPID 1 ?
Например, потому что Вы убили его родителя. Или он сам завершился. Или OOM-killer его убил.
Кажется понял. Именно второй вариант.
Наиболее вероятно. Хотя и третий не исключаю.
Спасибо сказали:
Ответить