LINUX.ORG.RU
ФорумTalks

Мрачная судьба Поттеринга.

 , ,


3

2

Повенсить перед Поттерингом вот эту фотографию с экрана и бить до тех пор,
пока systemd не перегрузит мой компьютер.

Причина этого как я понимаю в том, что процесс login в tty2 стал зомби, и теперь,
после отдачи команды reboot, ни компьютер не перегружается, ни в консоли чего либо сделать.

Ссылка на пост в вк https://vk.com/wall102193199_843, архив с логами там.

★★★★★

Последнее исправление: torvn77 (всего исправлений: 9)

У меня нечто подобное в десяточке было. Тоже отправил её в ребут, а она обновления какие-то ставить стала и тупила минут 5. Может у тебя тоже что-то подобное - реестр обновляется или qr-коды перегенерируются. Погрепай hexdump-ом бинарные логи.

Lavos ★★★★★
()
Ответ на: комментарий от Lavos

Не погрепать, отдана команда reboot и консоли заблокированны.
А про зомби процесс login я знаю потому что пытался перезапустить повисшую tty2 htop'ом.

torvn77 ★★★★★
() автор топика
Последнее исправление: torvn77 (всего исправлений: 1)

torvn77, а чего отписался от треда-то, слабак?

Повесь и бей. А если будешь транслировать данное действо онлайн, половина хейтеров ЛОРа испытают оргазм, так что дело благое, флаг тебе в руки и барабан на шею.

А вообще, характер проблемы вполне технический, и без бугурта вполне мог бы найти решение.

r3lgar ★★★★★
()

Выдерни шнур, выдави стекло. Так и только так!

WARNING ★★★★
()

Можешь попробовать Alt-SysRq-REISUB классическое комбо.

А вообще systemd не нужен, используй sysvinit

Xenius ★★★★★
()
Ответ на: комментарий от r3lgar

Решение я нашёл, нажал на резет и всё.
Но ведь у меня локалхост, а вот что на сервере делать,
если из -за зомби процесса ребут не происходит?

П.С. предпочитаю темы букмарить, а подписка только уведомления захламляет.

torvn77 ★★★★★
() автор топика
Ответ на: комментарий от Lavos

Погрепай hexdump-ом бинарные логи.

Нет, логи надо считывать с пластин диска с помощью Magnetic Force Microscopy, всякие прослойки в виде hexdump для слабаков.

greenman ★★★★★
()
Последнее исправление: greenman (всего исправлений: 1)

REISUB и логи предыдущего запуска в студию. Зарепортить проблему самостоятельно даже не предлагаю (ясно, что бесполезно — мы только кричать на ЛОРе умеем).

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 2)
Ответ на: комментарий от torvn77

а вот что на сервере делать, если из -за зомби процесса ребут не происходит?

Ты путаешь причину со следствием — это раз. Watchdog — это два.

intelfx ★★★★★
()
Ответ на: комментарий от intelfx

Какая разница что там происходило в этой tty2 и в каком состоянии login в этой консоли, это просто не должно быть препятствием для перезагрузки компьютера.

torvn77 ★★★★★
() автор топика

А вообще - это занятно.

Если раньше всё глючило, то просто глючило. А щас есть виновный во всём :D

fornlr ★★★★★
()

оно лудше sysvinit говорили они

оно быстрее грузится говорили они

оно прекрасно по дизайну говорили они

Кушайте, не подавитесь xD

leg0las ★★★★★
()
Последнее исправление: leg0las (всего исправлений: 1)
Ответ на: комментарий от dk-

Нубам стало жить проще?)

Проблема в том, что сломали то, что работало без сбоев десятилетиями.

Black_Shadow ★★★★★
()

echo `yes` не надо было делать. Это всегда вешает все компы под Linux-ом.

peregrine ★★★★★
()

То, что процесс login стал зомби это следствие того, что systemd завис, и оно же следствие того, что компьютер не перезагружается. А то что он завис это конечно залет. Хотя может ты его сам умышленно известным твитом повеси

Khnazile ★★★★★
()
Последнее исправление: Khnazile (всего исправлений: 2)
Ответ на: комментарий от intelfx

Помнится что кто то на ЛОР писал о этой прблеме как зарепорченной.

torvn77 ★★★★★
() автор топика
Последнее исправление: torvn77 (всего исправлений: 1)
Ответ на: комментарий от torvn77

Решение я нашёл, нажал на резет и всё.

Ты нашёл костыль, а не решение. Естественно, уже словленную проблему (особенно на сервере) ты не решишь, но могут найтись решения, которые помогут на проблему не нарываться вновь.

Алсо, у меня такое часто бывало с OpenRC ещё на раче, так что тут не systemd виноват, и даже не подтеринг, а прокладка между креслом и клавиатурой.

предпочитаю темы букмарить, а подписка только уведомления захламляет.

Когда я зашёл в тред, что избранные, что отслеживающие были по нулям, я думал, ты вбросил и слился.

r3lgar ★★★★★
()
Ответ на: комментарий от torvn77

У тебя команда reboot не выполнилась, т.к. systemctl не смог достучаться до systemd (connection timed out).
К тому же, чтобы процесс стал зомби, нужно чтобы некому было подобрать его код возврата. У login это либо непосредственно systemd, либо logind, которому для работы нужен systemd.

Khnazile ★★★★★
()
Ответ на: комментарий от leg0las

Я понимаю зачем Red Hat стала разрабатывать GNOME, приложив титанические усилия и сделав его действительно удобным в использовании. Ведь в 2000-2003 это уже умел KDE! Была проблема с лицензией на Qt? Ладно.

Я понимаю зачем сделали ALSA и GIT - авторы того, что использовалось раньше, внезапно поменяли лицензию на проприетарную.

Я могу понять появление Dbus - гномерам понравился DCOP из KDE, но они нашли в нём фатальный недостаток. Только DCOP стартовал вместе с KDE, а Dbus стартует на этапе «init 3» и к нему прибивают гвоздями системные службы.

Но что началось потом мне ваще непонятно! Нафига пульса? Был же ESD, и вы же его сами закопали в пользу ALSA! Что мешало добавить недостающее в алсу? Выпустить libasound3.

Моя версия. В 2005 году создали проект 10x10, 10% десктопов (на GNOME) к 2010 году. Были все возможности «выстрелить»: работа над Гномом была проделана титаническая. Но 10% достались MAC OS X. Мне кажется, что когда 10x10 «не выстрелило», высвободилось много программистов, и их энергию надо было куда-то девать. «Насяльника, не увольняйте! На десктопных компонентах я „набил руку“ и теперь пригожусь в разработке серьёзного ПО!» Так и появился Systemd.

ZenitharChampion ★★★★★
()
Последнее исправление: ZenitharChampion (всего исправлений: 1)
Ответ на: комментарий от Shadow

Не знаю, на ttu2 в качестве шела вместо bash я использую htop.
Нажал какую то комбинацию и консоль повисла,
после чего я переключился на другую консоль и попытлся убить htop
через killall -s9 htop , что то не получилось, запустил ещё один htop и
таки убил этот htop, но консоль так и осталась повисшей.
После этого я попытался руками через 9 прибить одинокий логин,
тоже не удачно, после этого подготовил компьютер к перезагрузке и отдал команду reboot.
Cобственно по этому так легко на reset и нажал,
ну да в любом случае про Alt-Print Screen-h я не знал.

torvn77 ★★★★★
() автор топика
Последнее исправление: torvn77 (всего исправлений: 4)
Ответ на: комментарий от Shadow

Скажи какие файлы тебе надо или вывод каких команд/запросов тебе скопировать,
сам я в этом не разбираюсь.

torvn77 ★★★★★
() автор топика
Последнее исправление: torvn77 (всего исправлений: 1)
Ответ на: комментарий от torvn77

Не знаю, на ttu2 в качестве шела вместо bash я использую htop.

У тебя htop был от рута запущен? Может этой комбинацией ты systemd и прибил? Если systemd послать SIGKILL, то он запустит вместо себя shell. Если и его прибить, то будет паника ядра.

Khnazile ★★★★★
()

Что общего между поттерингом и чубайсом? Оба всегда и во всем виноваты.

morse ★★★★★
()
Ответ на: комментарий от Khnazile

Нет, systemd-login я точно не убивал, слишком уж длинно пишется да и в другом месте столбца от login находится.

torvn77 ★★★★★
() автор топика
Последнее исправление: torvn77 (всего исправлений: 1)
Ответ на: комментарий от torvn77

Полностью писать вовсе не обязательно, достаточно чего-то вроде 1-k-enter, чтобы пришибить инит, если htop запущен от рута.

Khnazile ★★★★★
()
Ответ на: комментарий от intelfx

Зарепортить проблему самостоятельно

Без багрепорта разработчики о проблеме могут даже не узнать. Но просто наличие багрепорта ничего не даёт. Нужно, чтобы проблему мог воспроизвести один из разработчиков. Либо нужно детальное описание того, что пошло не так. Репортер зачастую просто не может предоставить всех необходимых деталей. Его можно научить, но это требует огромной заинтересованности с обеих сторон, кучу времени и терпения. И нужно, чтобы баг часто воспроизводился.

В общем, фразы про «зарепортить баг» в смысле «решить проблему» — пустой трёп. Это необходимое условие, но не достаточное.

i-rinat ★★★★★
()
Ответ на: комментарий от Khnazile

Такую комбинацию клавиш я не знаю.
И я сейчас специально прибил systemd-logind, последствия внешне никак не проявились.

torvn77 ★★★★★
() автор топика
Ответ на: комментарий от i-rinat

Но просто наличие багрепорта ничего не даёт. <...> Репортер зачастую просто не может предоставить всех необходимых деталей.

И в этом, конечно же, виноват лично Поттеринг, да?

intelfx ★★★★★
()
Ответ на: комментарий от torvn77

Последствия будут, если один раз послать SIGTERM systemd (pid 1). systemd-logind без него не будет нормально работать, как и многое другое. Он останется в процессах, но запустит вместо себя shell. А если два раза послать, то будет паника ядра.
Скорее всего у тебя ничего не перезагружалось именно потому что вместо инита был шелл. Другой вопрос, умер ли системд из-за своих собственных багов, или из-за того, что его кто-то ненароком уронил.

Khnazile ★★★★★
()
Ответ на: комментарий от torvn77

Я тоже не в курсе, просто интересно, где что отвалилось.

Shadow ★★★★★
()
Ответ на: комментарий от intelfx

Тебе нравится быть между молотом и наковальней?

i-rinat ★★★★★
()
Ответ на: комментарий от Shadow

Слишком сложный сост на ответственно месте. Раньше там шел был.

Мне тоже не понравится, когда система приходит в нерабочее состояние. Но если посмотреть на всякие разные фичи в systemd, ради которых он и создавался, становится понятно, что управлялки должны быть в корневом процессе. Иначе никак. Если прикручивать их сбоку, получится хуже, если вообще получится.

Я видел зависания в Debian, когда там всё на скриптах было. Так что все эти выкрики о том, что раньше лучше было, а как на systemd перешли, так всё плохо стало, они пустые.

На какой-то из конференций выступал сопровождающий из Debian, который в докладе рассказал, что они будут использовать unit'ы из systemd даже при использовании sysvinit-like (да, не sysvinit, а именно sysvinit-like, потому что нет какой-то определённой стандартной реализации, все делали что-то своё). Из unit'ов можно автоматически генерировать init-скрипты. Меньше рукописного шел-кода — меньше багов.

i-rinat ★★★★★
()
Последнее исправление: i-rinat (всего исправлений: 1)

Поттеринг живёт и не тужит, пока ты тут размазываешь сопли и трясёшь кулаками в ярости.

Deleted
()

эм, а ты можешь выложить логи в какое-нибудь нормальное место, отличное от вконтактика?

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.