Іноді при їх встановленні нові ядра в нашому обладнанні з відповідними оновленнями нашого дистрибутиву деякий апаратний пристрій може перестати працювати або працювати неправильно. Чому трапляється? Ну, це просто, тому що драйвери обладнання були змінені з оновленням ядра. Загальні ядра, які зазвичай встановлюють дистрибутиви, налаштовані на роботу з більшістю комп’ютерів, але не оптимізовані.
Іноді, якщо у вас є конкретний контролер для деяких пристроїв це може змінитися з новою версією ядра, і ви зможете побачити, як ваша веб-камера, мережева карта, звукова карта чи будь-який інший пристрій раптово перестали працювати, коли раніше працювали належним чином, ну, найпевніше, що модуль, що відповідає драйверу цього пристрою, було відкинуто, оскільки він вважався застарілим або з якоїсь іншої причини, можливо, це просто рідкісний пристрій, і загальне ядро не налаштоване для його завантаження.
Не хвилюйтеся, якщо з старіша версія ядра Ваш пристрій працював, його легко виправити. Наприклад, уявіть, що ваша мережева карта, звукова карта, веб-камера чи будь-який інший пристрій раптово перестали працювати і звикли працювати. Якщо це сталося після оновлення ядра, ви можете виявити, що модуль більше не присутній у новій версії. Ви можете перевірити це (наприклад, припустивши, що не працює мережева карта, драйвером якої є ath5k):
sudo modprobe ath5k && dmseg | grep ath
Якщо нам це здається модуль не існує, це означає, що він відсутній у нашому ядрі. Потім переконайтеся, що ядро виявляє ваш пристрій, оскільки він може не працювати, і це причина. Наприклад:
lsmod
Y пошук у списку Конкретний пристрій, який ви шукаєте, наприклад, якщо це мережева карта, шукає щось на зразок Ethernet, WiFi, Wireless або в нашому випадку Atheros ... Якщо воно є в списку, його було виявлено, тому ми зробимо наступне, що полягає у видаленні або усуненні останньої версії ядра та його заголовків.
dpkg --get-selections | grep linux-image
При цьому перелічені ядра, які ми встановили. Давайте уявимо, що наша проблемна версія - 4.10.0-28, яка є в цьому списку, але що з попередньою версією 4.10.0-2-generic драйвер працював належним чином, оскільки давайте його видалимо:
sudo apt-get remove --purge linux-image-4.10.0-28-generic linux-image-extra-4.10.0-28-generic
Тоді ми робимо те саме для заголовки ядра, ми шукаємо і зі списку ми вилучаємо ті, що відповідають надокучливому ядру, для цього:
dpkg --get-selections | grep linux-headers sudo apt-get remove --purge linux-headers-4.10.0-28 linux-headers-4.10.0-28-generic sudo update-grub2
В кінці кінців доручити GRUB завантажити систему за допомогою версії попередній перегляд ядра, який не створював проблем:
sudo nano /etc/default/grup
Усередині цього файлу змініть рядок GRUB_DEFAULT = 0 на GRUB_DEFAULT = збережено. Потім перейдіть до кінця файлу та додайте ще один новий рядок, який містить GRUB_SAVEDEFAULT = істина. Збережіть зміни та вийдіть. Тепер ми знову оновлюємо, щоб зміни набрали чинності:
sudo update-grub2
Перезавантажтесь і йдіть... Тепер все повинно працювати. Очевидно, що це справедливо лише для дистрибутивів, у яких доступно кілька ядер, якщо у вас є лише одне, то цього зробити не можна, це логічно ... Ось чому завжди добре не відкидати старі ядра після оновлення, вони можуть служити як резервне копіювання в будь-який час.
Це позбавить вас від завантаження, налаштування та компіляції нового ядра вручну для встановлення на вашому дистрибутиві. Не забудьте залишити свої коментарі з сумнівами або конкретними випадками, коли у вас виникли проблеми після оновлення до нового ядра ...
Хороша стаття і дуже своєчасна для мене, оскільки це трапилось зі мною і просто з драйвером wi-fi з Atheros 5k ... Я припустив, що моя проблема була пов’язана з причиною, на яку ви вказуєте у дописі, оскільки вона це не перший раз, коли ця невдача трапляється зі мною. Врешті-решт, оскільки я хотів спробувати останню версію Ubuntu, я вирішив зробити нову інсталяцію через майже 3 роки з використанням lts.
Ми вже з тими ж, як завжди, ви пояснюєте це в статті, це лише для debian, ubuntu та похідних, але не для інших дистрибутивів, ніби там були лише ті дистрибутиви, і тоді ми хвалимось, що в GNU / Linux багато різноманітності, але лише Ми говорили про декілька дистрибутивів, я використовую Manjaro, і він чудово працює, і згідно з Distrowatch він є третім за завантаженням, вище Ubuntu, і, крім усього іншого, виявляє обладнання, яке я встановив, без необхідності робити що-небудь і що сказати про ядро, встановіть у графічному режимі, ви отримаєте список і одним клацанням миші ви виберете той, який хочете, і все, але якщо ви робите це з терміналу, це лише суперкороткий рядок, а не три-чотири, як Ubuntu. Єдине, про що я прошу, це те, що якщо ви збираєтеся говорити лише про певний дистрибутив, це зазначено в назві.
Це трапилося зі мною з моїм єдиним жорстким sata, тобто у мене закінчилось завантаження в KDE Neon, хоча я не впевнений, кого звинувачувати, тому що мені здається, що біос цього не визнав.
Я підключив його до іншого порту матеріалу, і він завантажився
Деякі з нас не можуть зрозуміти, що інструкції однакові для всіх дистрибутивів, і починають грати зі складнішими дистрибутивами.
Гей! Я хотів повідомити про помилку в першому [коді]:
sudo modprobe ath5k && dmseg | grep ath
dmesg замість dmseg
Ласкаво просимо!
Чудове пояснення, яке дозволило мені відновити кабельне з'єднання з Інтернетом. Веб-картка зникла після оновлення ядра до зображень та заголовків Linux 4.4.0-127, які я виконав у четвер, 24 травня 2018 року.
Зверніть увагу на коментар перед моїм, який виправляє інструкцію.
Якщо контролер, припустимо, плата WiFi, яка є найбільш частим випадком, була скомпільована та встановлена, активував модуль за допомогою modprobe, чи відбудеться те саме? Чи можливо в цьому випадку зкомпілювати та завантажити модуль знову?
Ви бачите, як працює цей сайт, вони виправляють рядок з помилкою і жодного випадку через два роки.