Debian GNU/Linux 10 (buster) регулярно застывает с артефактами на экране монитора, клавиатура на нажатия не реагирует, срабатывает только кнопка RESET или полное физическое отключение питания.
До недавнего времени машина под управлением Debian GNU/Linux 10 (buster) успешно работала на установленных ядрах:
- linux-image-4.19.0-25-686
- linux-image-4.19.0-24-686
- linux-image-4.19.0-6-686
После очередного обновления система начала зависать с застывшими артефактами на экране монитора, при этом интервал появления артефактных глюков имел различный интервал от 2 минут после загрузки рабочего стола до нескольких часов или максимум одного дня работы.
Примечательно, что перед сбоем никаких подозрительных событий и/или сообщений об ошибках в системных журналах не наблюдалось! Проявлялись артефакты в виде нескольких полосок до полного заполнения экрана квадратной мозаикой.
Рекомендации, которыми загажен Интернет под заголовками типа Что делать если появляются артефакты на экране ноутбука?
:
- Проверьте драйверы видеокарты
- Проверьте температуру видеокарты
- Проверьте температуру себе
- Проверьте кабель и разъемы экрана
- Проверьте матрицу экрана
- Проверьте видеокарту на повреждения
- Проверьте ПК на барановирусы
- Проверьсь сами на барановирусы
- Сделайте прививку от барановируса
- Уколитесь ещё раз, да ещё раз, да ещё много.., много.., много раз...
- Установите/обновите мозговые чипы и/или анальные зонды
- Отрегулируйте настройки восприятия объективной реальности
- Протрите монитор
- Выдерните шнур питания, выдавите стекло
- ...и так далее...
Нихера не работают.
Что делать если появляются артефакты на экране ноутбука?
...
Если все вышеуказанные шаги не помогли устранить артефакты на экране ноутбука, возможно, проблема кроется в самой видеокарте. В некоторых случаях, видеокарта может быть повреждена из-за перегрева, произошедшего короткого замыкания или других причин. В таком случае потребуется замена видеокарты или ремонт ноутбука в сервисном центре.Заключение
Артефакты на экране ноутбука могут возникать из-за разных причин и свидетельствовать о различных проблемах. Важно правильно определить их причину и принять соответствующие меры. Если вы не уверены в своих навыках или столкнулись с сложными проблемами, обратитесь в Уральский Сервисный Центр. Наши специалисты помогут вам быстро и качественно устранить проблему с артефактами на экране вашего ноутбука.
...обратитесь в Уральский Сервисный Центр. Наши специалисты...
- с экспертами, помогут опустошить кошельки и карманы, доламают старый ПК и впарят новый + Нубук, блюпуп, ви-фи, фрэшка, макрософак, дохляк...
- это кино мы уже видели.
Там где-то ещё есть Антон Уральский ни единого разрыва:
А вдруг Антон Уральский уже в Уральском Сервисном Центре работает?!
... Неее.., мы пойдём другим путём...
Кто виноват в артефактах экрана? Вероятные подозреваемые:
- драйвера оборудования;
- конфигурация оборудования;
- само оборудование (закисшие шлейфы, припухшие конденсаторы и т.п.);
- модули ядра;
- само ядро.
Изменения в системе
Что обновилось/изменилось можно узнать в журналах:
- /var/log/dpkg.log
- /var/log/apt/history.log
Поскольку проблема графическая, поищем изменения в этом направлении с подсветкой найденных ключевых слов:
zless /var/log/apt/history.log|grep --color=always -B2 -E '(xorg|mesa|linux|driver)'|more Start-Date: 2024-01-01 16:16:43 Commandline: apt-get dist-upgrade ...xserver-xorg-core:i386 (2:1.20.4-1+deb10u10, 2:1.20.4-1+deb10u12)...xserver-xorg-legacy:i386 (2:1.20.4-1+deb10u10, 2:1.20.4-1+deb10u12) zless /var/log/apt/history.log.1.gz|grep --color=always -B2 -E '(xorg|mesa|linux|driver)'|more zless /var/log/apt/history.log.2.gz|grep --color=always -B2 -E '(xorg|mesa|linux|driver)'|more zless /var/log/apt/history.log.3.gz|grep --color=always -B2 -E '(xorg|mesa|linux|driver)'|more Start-Date: 2023-10-30 20:12:51 Commandline: apt-get dist-upgrade ...xserver-xorg-core:i386 (2:1.20.4-1+deb10u9, 2:1.20.4-1+deb10u10)...xserver-xorg-legacy:i386 (2:1.20.4-1+deb10u9, 2:1.20.4-1+deb10u10)...firmware-linux-nonfree:i386 (20190114+really20220913-0+deb10u1, 20190114+really20220913-0+deb10u2) zless /var/log/apt/history.log.4.gz|grep --color=always -B2 -E '(xorg|mesa|linux|driver)'|more ... Start-Date: 2023-08-10 17:15:21 Commandline: apt-get dist-upgrade Install: linux-image-4.19.0-25-686:i386 (4.19.289-2, automatic), linux-headers-4.19.0-25-common:i386 (4.19.289-2, automatic), linux-headers-4.19.0-25-686:i386 (4.19.289-2, automatic), ..., linux-libc-dev:i386 (4.19.282-1, 4.19.289-2), ..., linux-headers-686:i386 (4.19+105+deb10u19, 4.19+105+deb10u20), linux-compiler-gcc-8-x86:i386 (4.19.282-1, 4.19.289-2), ..., linux-source:i386 (4.19+105+deb10u19, 4.19+105+deb10u20), ..., linux-image-686:i386 (4.19+105+deb10u19, 4.19+105+deb10u20), ..., linux-kbuild-4.19:i386 (4.19.282-1, 4.19.289-2), ..., linux-config-4.19:i386 (4.19.282-1, 4.19.289-2), ..., linux-source-4.19:i386 (4.19.282-1, 4.19.289-2), ...
Видим, что из последних (2023-10-30 и 2024-01-01) обновлялись пакеты xserver-xorg-*
сервера обеспечивающие работу оконной системы X Window System, и (2023-10-30) firmware-linux-nonfree
.
Последнее обновление ядра было ещё в августе прошлого 2023-го года (2023-08-10).
Ок, но куда копать?
Драйвера оборудования
firmware-linux-nonfree
в расчёт не берём потому, что сыпать артефактами и наглухо виснуть оно начало с нового 2024-го года.
Конфигурация оборудования
После установки самой операционной системы конфигурация оборудования на протяжении лет не менялась.
Конфигурация Xorg и вовсе осталась по-умолчанию после установки.
Были эксперименты с настройками драйвера i915, версиями OpenGL, вертикальной и горизонтальной синхронизациями:
<driconf> <device screen="0" driver="i915"> <application name="Default"> <!-- $ glxinfo | grep OpenGL $ eglinfo false = OpenGL version string: 1.4 Mesa 18.3.6 true = OpenGL version string: 2.1 Mesa 18.3.6 --> <!-- option name="stub_occlusion_query" value="false" / --> <!-- option name="fragment_shader" value="false" / --> </application> <application name="All"> <!-- 3 - Always synchronize with vertical refresh to avoid tearing --> <!-- option name="vblank_mode" value="0"/ --> </application> <application name="glxgears" executable="glxgears" --> <!-- 0 - glxgears should not synchronize with vertical refresh, show full fps --> <!-- option name="vblank_mode" value="0"/ --> </application> <application name="tuxracer" executable="tuxracer"> <!-- Tuxrace has some artifacts with hardware TCL --> <!-- option name="tcl_mode" value="0"/ --> </application> </device> <device screen="0" driver="dri2"> <application name="Default"> <!-- option name="vblank_mode" value="0"/ --> </application> </device> </driconf>
Но они проблему не решили...
Не решилась проблема и после экспериментов с настройками BIOS: отключение Hyper-Threading Technology; понижение частоты CPU; cpu/pci async; etc...
Припухшее железо
В области модулей оперативной памяти обнаружен припухший конденсатор (1000 uF 6.3v), а чтобы выяснить в нём ли дело (влияет ли на RAM) - с загрузочного флоппи-диска запущен Memtest86+, которым оперативка нагружалась в течении 2-3 часов без обнаружения ошибок и зависаний.
Элемент питания BIOS CMOS CR2032 3v также выпадает из числа подозреваемых потому, что:
- CR2032 на CMOS менялась не прошло и пол года;
- проверка CR2032 цифровым мультиметром показала +3.6 В;
- в результате артефактных зависаний настройки BIOS слетели лишь один раз за 10-15 глюков.
Короткие замыкания
Не помешает осмотреть внутренности на предмет наличия:
- посторонних стальных предметов (стружка, проволока, и т.д.);
- признаков потёков термопасты, особенно если она алюминиевая;
- пережатых переломанных проводов;
- ослабшие и/или окисленные шлейфы.
Модули ядра Intel graphics
Из модулей ядра, которые можно было придумать туда-сюда покрутить - i915.
Если файл /etc/modprobe.d/i915-kms.conf
отсутствует, то его нужно создать
vi /etc/modprobe.d/i915-kms.conf options i915 enable_dc=0 enable_fbc=0 enable_ips=0 enable_psr=0 fastboot=1
После чего, чтобы система узнала о новом /etc/modprobe.d/i915-kms.conf, выполнить: sudo update-initramfs -u -k all
Перезапустить ПК.
Ещё можно пробовать:
acpi=off
pci=
bios
nobios
biosrq
noacpi
В некоторых случаях может помогать, но не в нашем...
Это не все фокусы и причуды с Intel graphics по которым могут происходить: Зависания Xorg; Проблемы с DRI3; X зависает/падает с драйверами intel; Искажение/Зависание в Chromium и Firefox, - подробнее по ссылке:
Дополнительная информация по графическим драйверам и модулям ядра:
- The kernel’s command-line parameters — The Linux Kernel documentation
- GPU Driver Documentation — The Linux Kernel documentation
- drm/i915 Intel GFX Driver — The Linux Kernel documentation
- Kernel Mode Setting (KMS) — The Linux Kernel documentation
- KernelModesetting - Debian Wiki
- Kernel Mode Setting | Русскоязычная документация по Ubuntu
- Kernel module - ArchWiki
Ядро Linux
Были опробованы ядра:
- linux-image-4.19.0-25-686
- linux-image-4.19.0-24-686
- linux-image-4.19.0-6-686
Пробуем PAE версию (CPU поддерживает lscpu|grep pae): apt-get install linux-image-4.19.0-25-686-pae
Спустя 2-5 мин после загрузки рабочего стола с ядром linux-image-4.19.0-25-686-pae всё отвалилось в чёрный экран и перезагрузилось.
Что делать
После ознакомления со всеми подозреваемыми напрашиваются такие варианты решения проблемы с артефактами экрана и зависанием системы:
- Откат xserver на старые версии
- Переход на новую ветку ядра
- Замена припухших деталей
Очевиден тот факт, что проблема с артефактами началась после обновления пакетов xorg и поэтому откат xserver на старые версии поставлено на 1-е место.
Неоспоримо также то, что в конечном итоге всё обрабатывается Linux ядром, а значит и обновление ядра может решить проблему даже без отката xorg на старые версии.
И самое последнее решение - это замена припухшего конденсатора (10 центов его розничная стоимость), который несомненно нужно будет заменить.
Откат xserver на старые версии
Версии 2:1.20.4-1+deb10u9 пакетов xserver-xorg-core
и xserver-xorg-legacy
уже не доступна для установки.
Откат пакетов на старые версии выполняется командой apt-get install PKG_NAME=PKG_VER.
Версию нужно указывать полностью так, как она отображается в журналах apt
, dpkg
, apt-show-versions
, иначе Версия ... не найдена:
apt-get install xserver-xorg-core=1.20.4-1+deb10u12 Чтение списков пакетов… Готово Построение дерева зависимостей Чтение информации о состоянии… Готово E: Версия «1.20.4-1+deb10u12» для «xserver-xorg-core» не найдена
Проверить какие версии пакетов доступны:
apt-cache policy xserver-xorg-core xserver-xorg-legacy xserver-xorg-core: Установлен: 2:1.20.4-1+deb10u12 Кандидат: 2:1.20.4-1+deb10u12 Таблица версий: *** 2:1.20.4-1+deb10u12 500 500 http://security.debian.org buster/updates/main i386 Packages 100 /var/lib/dpkg/status 2:1.20.4-1+deb10u4 500 500 http://ftp.debian.org/debian buster/main i386 Packages xserver-xorg-legacy: Установлен: 2:1.20.4-1+deb10u12 Кандидат: 2:1.20.4-1+deb10u12 Таблица версий: *** 2:1.20.4-1+deb10u12 500 500 http://security.debian.org buster/updates/main i386 Packages 100 /var/lib/dpkg/status 2:1.20.4-1+deb10u4 500 500 http://ftp.debian.org/debian buster/main i386 Packages
Откат xserver-xorg-core
и xserver-xorg-legacy
на версию 2:1.20.4-1+deb10u4:
apt-get install xserver-xorg-core=2:1.20.4-1+deb10u4 xserver-xorg-legacy=2:1.20.4-1+deb10u4 Чтение списков пакетов… Готово Построение дерева зависимостей Чтение информации о состоянии… Готово Следующие пакеты будут заменены на СТАРЫЕ версии: xserver-xorg-core xserver-xorg-legacy Обновлено 0 пакетов, установлено 0 новых пакетов, 2 пакетов заменено на старые версии, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено. Необходимо скачать 5 853 kB архивов. После данной операции объём занятого дискового пространства уменьшится на 2 048 B. Хотите продолжить? [Д/н]
Стабилизируем пакет запрещая его обновлять: sudo apt-mark hold package_name
Или отменяем: sudo apt-mark unhold package_name
Откат xserver на старые версии как вариант, но его мы оставим на потом в качестве плана Б...
Переход на новую ветку ядра
Ядро Linux - это хребет всей системы, с перехода на его новую векту и попробуем решить проблему с артефактами экрана.
В репозитории buster обнаружена доступная для установки 5-я ветка ядра, котурую мы и поставим - обычную и после PAE версии:
apt-get install linux-image-5.10-686 apt-get install linux-image-5.10-686-pae sudo reboot uname -a Linux falinux 5.10.0-0.deb10.26-686-pae #1 SMP Debian 5.10.197-1~deb10u1 (2023-08-08) i686 GNU/Linux
Теперь система работает стабильно и без артефактов.
Обновление глюка в linux-image-5.x
Дождались пакращення
... Пару дней назад вышло обновление глюка в 5-й ветке ядра, после установки и загрузки с которым (2024-01-24) артефакты на экране с полным зависанием системы снова дали о себе знать:
- linux-image-5.10.0-0.deb10.26-686-pae:i386 - NOT FREEZE 2 weeks
- linux-image-5.10.0-0.deb10.27-686-pae:i386 - SCREEN FREEZE after 5-10 min after boot
Также вышло новое ядро для 4-й ветки - linux-image-4.19.0-26-686:i386
. 4.19.0-25 глючное, 4.19.0-26 пока не проверялось...
С полным списком изменений в ядре можно ознакомиться выполнив apt-get changelog PKG_NAME
apt-get changelog linux-image-4.19.0-26-686 apt-get changelog linux-image-5.10.0-0.deb10.27-686
Удаляем 5.10.0-0.deb10.27 и фиксируем 5.10.0-0.deb10.26
sudo apt-get purge linux-image-5.10.0-0.deb10.27-686-pae:i386 linux-image-5.10.0-0.deb10.27-686:i386 sudo apt-mark hold linux-image-5.10.0-0.deb10.26-686 linux-image-5.10.0-0.deb10.26-686 помечен как зафиксированный. sudo apt-mark hold linux-image-5.10.0-0.deb10.26-686-pae linux-image-5.10.0-0.deb10.26-686-pae помечен как зафиксированный.
Замена припухших деталей
Похожий случай глюкодрома в системе наблюдался с курсором мыши, когда он сам собой хаотично гулял по экрану монитора.
Тогда в области скопления портов подключения внешнего оборудования было обнаружено около 3-4 припухших конденсаторов на 3300 uF (вольтаж не помню), после замены которых курсор мыши успокоился :)
Несмотря на то, что глюк с артефактами экрана и зависанием ПК устранился переходом на 5-ю ветку ядра - припухшие детали всё же нужно заменить потому, что их влияние на возникшую проблему, как и появление новых проблем в будущем, полностью исключить нельзя!
BIOS Configuration
Если из вышеперечисленного нифига не помогло, тогда можно попробовать сбросить настройки BIOS к параметрам по-умолчанию, а также...
ACPI HPET Table
В BIOS отключить HPET, ACPI Configuration -> ACPI HPET Table = Disable, который в qemu-system-i386
может вызывать длительные таймауты при загрузке гостевой машины с множественныеми сообщениями:
clocksource: timekeeping watchdog on CPU0: hpet wd-wd read-back delay of 54830ns clocksource: wd-tsc-wd read-back delay of 350830ns, clock-skew test skipped! ...
В kernel boot parameters гостевой машины рекомендуется добавить clocksource=tsc tsc=nowatchdog
Хоть и не совсем по теме артефактов, но настройка так или иначе влияет на работу CPU.
CPU Configuration
Попробовать такую конфигурацию:
CPU Configuration -> Overlock Mode: Auto (Default) CPU, PCIE Sync. CPU, PCIE Async. Optimized CPU Thermal Throttling: Enabled (Default) Hyper Threading Technology: Enabled (Default) On-Demand Clock Modulation: Disabled (Default) Auto 12.5% On 25.0% On 37.5% On 50.0% On 62.5% On 75.0% On 87.5% On
On-Demand Clock Modulation по некоторым сообщениям может вызывать проблемы (тормоза и зависания):
Отключение лишнего оборудования
Можно попробовать отключить флоппи-привод, CD-привод, и другое неиспользуемое оборудование - вдруг проблемы с нехваткой мощности от блока питания.
РЕШЕНО
Без артефактов и зависаний система стабильно работала на 5-й версии PAE ядра (есть поддержка PAE в CPU) без малого неделю, после чего была перезагружена.
Обычная 5-я версия ядра на артефакты не проверялась.
Откат пакетов xserver-xorg-core
и xserver-xorg-legacy
на старые версии не выполнялся.
После последнего перезапуска система на 5-й версии PAE ядра без артефактов и зависаний проработала целый месяц!
И уже казалось, что проблема действительно программная и кроется в самом ядре, но.., - сталося не так як гадалося
и на втором месяце работы система снова залипла в артефактах.
Когда же артефактами залепило экран в самом начале загрузки initrd, тут мы сразу вспомнили про припухший конденсатор (1000 uF 6.3v) в области модулей оперативной памяти, и - заменили его новым.
Только после замены припухшего конденсатора, на 5-й версии PAE Linux ядра, артефакты прекратились полностью.
Получается, что проблема программно-аппаратная, очевидно связана с управлением питанием где ядро Linux играет далеко не последнюю роль.
Мораль сей басни такова, что:
- ПО оказывает прямое влияние на усталость железа и срок его службы! Желательно избегать использования ПО с закрытым исходным кодом, особенно разработанного большими корпорациями и правительственными структурами - в таком ПО множество бэкдоров и запланированных неисправностей;
- Нужно избегать автоматического обновления. Обновления для одних и тех же пакетов могут выходить пачками день за днём без перерыва в течении недели и более - это разработчиков значит капитально колбасит (добавили/удалили глюк/запятую/описание/комментарий/etc) и лучше переждать пока оно стабилизируется;
- Обновлять систему не чаще 1-2 раза в месяц, - это даст время на тестирование и скоратит время на откат. За редким исключением по мере выхода новых версий можно обновлять только прикладное ПО: веб-сервера и т.п.
- Не нужно поспешно переходить на новые ветки релизов вскоре после их появления ИМХО..! Как правило в начале разработки всегда неимоверное множество глюков и багов, пустая трата Интернет трафика на туеву хучу обновлений + повышенное потребление ресурсов и износ железа, а из профита лишь головная боль да геморрой.
P.S. Чтоб Вы все были здоровы и жили без разрывов, зависаний и артефактов на своих голубых экранах мониторов!