В этом пошаговом руководстве показано, как справиться с зависанием Ubuntu при загрузке, установив проприетарные драйверы NVIDIA.

Учебное пособие было выполнено на недавно установленной системе Ubuntu, но оно должно быть применимо и в других случаях.

На днях я купил ноутбук Acer Predator (партнерская ссылка) для тестирования различных дистрибутивов Linux. Это громоздкий, тяжело сложенный ноутбук, который отличается от того, что мне нравятся небольшие легкие ноутбуки, такие как потрясающий Dell XPS.

Причиной, по которой я выбрал этот игровой ноутбук, хотя я не играю на ПК, является NVIDIA Graphics.

Acer Predator Helios 300 поставляется с NVIDIA Geforce GTX 1050Ti.

NVIDIA известна своей плохой совместимостью с Linux. Некоторые читатели It FOSS попросили меня помочь с их ноутбуками NVIDIA, и я ничего не мог сделать, потому что у меня не было системы с графической картой NVIDIA.

Поэтому, когда я решил приобрести новое специализированное устройство для тестирования дистрибутивов Linux, я выбрал ноутбук с графикой NVIDA.

Этот ноутбук поставляется с Windows 10, установленной на 120 ГБ SSD и 1 ТБ жесткого диска для хранения данных.

У меня дуалбут Windows 10 с Ubuntu 18.04.

Установка была быстрой, легкой и безболезненной.

Я загрузился в Ubuntu.

Она показывала знакомый фиолетовый экран, а потом я заметил, что он замерз.

Мышь не двигалась, я ничего не мог набрать, и ничего не мог сделать, кроме как выключить устройство, удерживая кнопку питания.

И это была та же история при следующей попытке входа в систему. Ubuntu просто застревает на фиолетовом экране, даже не дойдя до экрана входа в систему.

Звучит знакомо? Позвольте мне показать вам, как вы можете решить эту проблему с зависанием Ubuntu при входе в систему.

Не пользуетесь Ubuntu?
Обратите внимание, что хотя это руководство было выполнено с Ubuntu 18.04, оно также будет работать на других дистрибутивах на основе Ubuntu, таких как Linux Mint,elementary OS и т. д.

 

Исправление зависания Ubuntu во время загрузки из-за драйверов NVIDIA

Решение, которое я здесь опишу, работает для систем с графической картой NVIDIA.

Это потому, что ваша система зависает благодаря открытым драйверам NVIDIA Nouveau.

Без дальнейших задержек, давайте посмотрим, как решить эту проблему.

Шаг 1: Редактирование Grub

Когда вы загружаете свою систему, просто остановитесь на экране Grub, как показано ниже.

Если вы не видите этот экран, продолжайте удерживать клавишу Shift во время загрузки.

На этом экране нажмите клавишу «E», чтобы перейти в режим редактирования.

Вы должны увидеть код, подобный приведенному ниже.

Вы должны сосредоточиться на строке, которая начинается с Linux.

Шаг 2: Временное изменение параметров ядра Linux в Grub

Помните, что наша проблема с драйверами NVIDIA Graphics.

Эта несовместимость с открытой версией драйверов NVIDIA стала причиной проблемы, поэтому мы можем отключить эти драйверы.

Теперь есть несколько способов отключить эти драйверы.

Мой любимый способ — отключить все видео / видеокарты с помощью nomodeset.

Просто добавьте следующий текст в конце строки, начиная с Linux.

Вы должны быть в состоянии вводить данные.

Просто убедитесь, что вы добавляете этот текст в конце строки.

nomodeset

Теперь ваш экран должен выглядеть так:

Нажмите Ctrl + X или F10, чтобы сохранить изменения и выйти.

Теперь вы загрузитесь с недавно измененными параметрами ядра.

Если вы добавляете параметр nomodeset в ядро, он указывает ядру загружать видео / графические драйверы после запуска сервера дисплея.

Другими словами, вы отключили загрузку графического драйвера в это время, и конфликт, который он вызывал, исчез.

Шаг 3: Обновите вашу систему и установите проприетарные драйверы NVIDIA

Не будьте слишком счастливы только потому, что теперь вы можете войти в свою систему.

То, что вы сделали, было временным, и в следующий раз, когда вы загрузитесь в свою систему, ваша система все равно будет зависать, потому что она все равно будет пытаться загрузить драйверы Nouveau.

Значит ли это, что вам всегда придется редактировать ядро с экрана grub?

К счастью, ответ — нет.

Здесь вы можете установить дополнительные драйверы в Ubuntu для NVIDIA.

Ubuntu не зависает во время загрузки при использовании этих проприетарных драйверов.

Я предполагаю, что это ваш первый вход в недавно установленную систему.

Это означает, что вы должны обновить Ubuntu, прежде чем делать что-либо еще.

Откройте терминал с помощью сочетания клавиш Ctrl + Alt + T в Ubuntu и используйте следующую команду:

sudo apt update && sudo apt upgrade -y

Вы можете попробовать установить дополнительные драйверы в Ubuntu сразу после выполнения вышеупомянутой команды, но, по моему опыту, вам придется перезагрузить систему, прежде чем вы сможете успешно установить новые драйверы.

А при перезапуске вам придется снова изменить параметр ядра так же, как мы делали это раньше.

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

Теперь перейдите на вкладку «Дополнительные драйверы» и подождите несколько секунд.

Здесь вы увидите проприетарные драйверы, доступные для вашей системы.

Вы должны увидеть драйвера NVIDIA в этом спискеь.

Выберите проприетарный драйвер и нажмите «Применить изменения».

Это займет некоторое время при установке новых драйверов.

Если в вашей системе включена безопасная загрузка UEFI, вас также попросят установить пароль.

Вы можете установить тот пароль, что легко запомнить.

Я покажу вам его последствия позже в шаге 4.

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

Шаг 4: Работа с MOK (только для устройств с поддержкой UEFI Secure Boot)

Если вас попросят установить пароль безопасной загрузки, вы увидите синий экран, который говорит о «управлении MOK».

Это сложная тема, и я попытаюсь объяснить ее в более простых терминах.

MOK (Machine Owner Key)  необходим из-за функции безопасной загрузки, которая требует подписи всех модулей ядра.

Ubuntu делает это для всех модулей ядра, которые поставляются в ISO.

Поскольку вы установили новый модуль (дополнительный драйвер) или внесли изменения в модули ядра, ваша защищенная система может воспринимать это как нежелательное / постороннее изменение в вашей системе и может отказаться от загрузки.

Следовательно, вы можете либо подписать модуль ядра самостоятельно (указав системе UEFI не паниковать, потому что вы внесли эти изменения), либо просто отключить безопасную загрузку.

Теперь, когда вы немного знаете о безопасной загрузке и MOK, давайте посмотрим, что делать при следующей загрузке, когда вы увидите синий экран при следующей загрузке.

Если вы выберете «Continue boot», скорее всего, ваша система загрузится как обычно, и вам вообще ничего не нужно будет делать.

Но возможно, что не все функции нового драйвера работают правильно.

Вот почему вы должны выбрать Enroll MOK.

Он попросит вас продолжить на следующем экране, а затем попросит пароль.

Используйте пароль, который вы установили при установке дополнительных драйверов на предыдущем шаге.

Вам будет предложено перезагрузить систему.

Шаг 5: Наслаждайтесь Ubuntu Linux с проприетарными драйверами NVIDIA

Как только новый драйвер будет установлен, вам придется перезапустить вашу систему снова.

Не волнуйся!

Теперь все должно быть лучше, и вам больше не нужно редактировать параметры ядра.

Вы сразу загрузитесь в Ubuntu.

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

Если у вас есть какие-либо вопросы или предложения, пожалуйста, дайте мне знать в разделе комментариев ниже.

 

 

Поделитесь статьей:

31 thoughts on “🕓 Исправление зависания Ubuntu во время загрузки

  1. Добрый день!

    Прочитал на Вашей странице про зависание экрана:
    http://itisgood.ru/2019/04/09/ispravlenie-zavisanija-ubuntu-vo-vremja-zagruzki/
    и стал делать так, как у Вас написано: нажимал на клавишу SHIFT при
    старте, но у менясовсем другое(картинки прикладываю). Подскажите
    пожалуста, как избавиться от зависания экрана в моём случае.

    С наилучшими пожеланиями,

    Владимир

    p.s. Картинки на сайте не могу приложить

    1. Добрый день! Вы можете выложить листинг, когда провалились в настройки grub?
      Предполагаю, что вам надо прокрутить вниз, чтобы добраться до нужной строки, которую нужно изменить.
      В этом отличие.

      1. Вот пролистал вниз и пишу:
        linux bootvmlinuz-5.3/0-generic root=UUID=2970b0d2-3fdc\-40ed-9886-7146ef656861 ro quit rootfst vpe=ext4 libahci.ignore sss=1 raid=\noautodetect selinux=0 plvmouth.enable=0 lpi=11232000

        И вот чуть ниже строка:
        initrd /boot/initrd.img-5.3.0.-46-generic

          1. Напишите пожалуйста в этом варианте в какое место это вставлять.

          2. linux bootvmlinuz-5.3/0-generic root=UUID=2970b0d2-3fdc\-40ed-9886-7146ef656861 ro quit nomodeset

  2. Добрый день! Я вчера всё выполнил, как ВЫ рекомендовали, при старте системы все иконки и шрифты были огромного размера, но после рестарта всё встало на свои места. Вечером при просмотре видео онлайн всё было нормально. Утром пришли обновления и в том числе и обновление ядра. После надо было перезагрузить систему. И потом уже при просмотре видео ролика на ютубе произошло зависание экрана, но звук продолжал работать. Комбинации разных вариантов клавишь просто не работали. Пришлось тупо выключить ноутбук. Вот как то так.

      1. Вот то, что Вы просили про top и df -h
        vladimir1956@vladimir1956-Satellite-A665:~$ top

        top — 12:42:51 up 4:43, 1 user, load average: 1,72, 1,54, 1,53
        Tasks: 250 total, 3 running, 174 sleeping, 0 stopped, 0 zombie
        %Cpu(s): 4,7 us, 7,6 sy, 0,0 ni, 86,8 id, 0,0 wa, 0,0 hi, 1,0 si, 0,0 st
        КиБ Mem : 8081484 total, 2434240 free, 2786848 used, 2860396 buff/cache
        КиБ Swap: 2097148 total, 2097148 free, 0 used. 4937280 avail Mem

        PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
        19216 vladimi+ 20 0 1896008 348380 35960 R 67,3 4,3 119:21.82 terminal.e+
        16298 vladimi+ 20 0 29484 12404 1972 R 51,8 0,2 88:51.73 wineserver
        2410 vladimi+ 20 0 3919828 140956 76048 S 8,3 1,7 9:49.00 cinnamon
        2011 root 20 0 609144 77116 55452 S 3,3 1,0 12:51.40 Xorg
        3687 root 20 0 0 0 0 I 1,7 0,0 0:03.40 kworker/u1+
        3995 vladimi+ 20 0 3928476 1,046g 128964 S 1,3 13,6 12:19.37 chromium-b+
        4661 root 20 0 0 0 0 I 1,3 0,0 0:02.20 kworker/u1+
        6320 vladimi+ 20 0 590828 35828 26184 S 1,3 0,4 0:00.97 gnome-term+
        902 systemd+ 20 0 146112 3440 2876 S 0,7 0,0 0:00.09 systemd-ti+
        6335 vladimi+ 20 0 46716 4200 3520 R 0,7 0,1 0:00.34 top
        16320 vladimi+ 20 0 2022288 15488 13176 S 0,7 0,2 0:27.80 winedevice+
        779 root -51 0 0 0 0 S 0,3 0,0 1:01.00 irq/39-iwl+
        949 root 20 0 503224 11628 8756 S 0,3 0,1 0:21.63 udisksd
        950 message+ 20 0 51348 5592 3956 S 0,3 0,1 0:06.20 dbus-daemon
        2445 vladimi+ 20 0 661672 37520 29588 S 0,3 0,5 0:04.62 nm-applet
        16307 vladimi+ 20 0 1946428 12080 10460 S 0,3 0,1 0:01.59 winedevice+
        27453 root 20 0 0 0 0 I 0,3 0,0 0:03.24 kworker/7:+

        vladimir1956@vladimir1956-Satellite-A665:~$ df -h
        Файл.система Размер Использовано Дост Использовано% Cмонтировано в
        udev 3,9G 0 3,9G 0% /dev
        tmpfs 790M 1,5M 788M 1% /run
        /dev/sda1 440G 55G 362G 14% /
        tmpfs 3,9G 50M 3,9G 2% /dev/shm
        tmpfs 5,0M 4,0K 5,0M 1% /run/lock
        tmpfs 3,9G 0 3,9G 0% /sys/fs/cgroup
        tmpfs 790M 76K 790M 1% /run/user/1000
        vladimir1956@vladimir1956-Satellite-A665:~$

          1. Может проблема в видео карте? У меня стоит NVIDIA. Может проблема в настройках именно видеокарты?

          2. Посмотрите логи по времени появления проблем, так можно гадать бесконечно 🙂

          3. Как посмотреть логи? Объсните подробнее, если не трудно!

          4. Не совсем понятно с /var/log/syslog или messages? Эти команды набирать через командную строку или как? Если не трудно, объясните пожалуйста подробнее.

          5. Вот на странице: https://losst.ru/kak-posmotret-logi-v-linux нашёл вариант просмотра, выкладываю после набора команды: ls -l /var/log/ следущее: vladimir1956@vladimir1956-Satellite-A665:~$ ls -l /var/log/
            итого 32448
            -rw-r—r— 1 root root 1284 апр 24 13:01 alternatives.log
            -rw-r—r— 1 root root 51789 мар 30 23:33 alternatives.log.1
            drwxr-xr-x 2 root root 4096 апр 29 23:56 apt
            -rw-r—— 1 syslog adm 134125 апр 30 11:00 auth.log
            -rw-r—— 1 syslog adm 163753 апр 26 07:08 auth.log.1
            -rw-r—— 1 syslog adm 10710 апр 20 07:39 auth.log.2.gz
            -rw-r—— 1 syslog adm 10196 апр 12 07:38 auth.log.3.gz
            -rw-r—— 1 syslog adm 11263 апр 6 07:47 auth.log.4.gz
            -rw——- 1 root root 268 мар 15 18:16 boot.log
            -rw-r—r— 1 root root 62399 дек 13 18:16 bootstrap.log
            -rw-rw—- 1 root utmp 0 апр 1 06:52 btmp
            -rw-rw—- 1 root utmp 0 дек 13 18:12 btmp.1
            drwxr-xr-x 2 root root 4096 апр 30 07:15 cups
            drwxr-xr-x 2 root root 4096 янв 24 13:47 dist-upgrade
            -rw-r—r— 1 root root 209776 апр 29 19:16 dpkg.log
            -rw-r—r— 1 root root 2041478 мар 31 19:29 dpkg.log.1
            -rw-r—r— 1 root root 32032 апр 24 13:01 faillog
            -rw-r—r— 1 root root 5963 мар 31 15:32 fontconfig.log
            drwxr-xr-x 2 root root 4096 фев 19 2019 gdm3
            -rw-r—r— 1 root root 1253 апр 30 07:10 gpu-manager.log
            -rw-r—r— 1 root root 56 мар 15 15:23 gufw.log
            drwxr-xr-x 3 root root 4096 дек 13 18:29 hp
            drwxr-xr-x 2 root root 4096 мар 15 14:56 installer
            drwxr-sr-x+ 3 root systemd-journal 4096 мар 15 15:02 journal
            -rw-r—— 1 syslog adm 12865774 апр 30 10:59 kern.log
            -rw-r—— 1 syslog adm 5194891 апр 26 07:10 kern.log.1
            -rw-r—— 1 syslog adm 818901 апр 20 07:43 kern.log.2.gz
            -rw-r—— 1 syslog adm 720356 апр 12 07:43 kern.log.3.gz
            -rw-r—— 1 syslog adm 755067 апр 6 07:50 kern.log.4.gz
            -rw-rw-r— 1 root utmp 292292 апр 24 13:01 lastlog
            drwxr-xr-x 2 root root 4096 апр 30 07:15 lightdm
            drwxr-xr-x 2 liquidsoap liquidsoap 4096 июл 11 2017 liquidsoap
            -rw-r—r— 1 root root 2253 апр 30 07:10 mintsystem.log
            -rw-r—r— 1 root root 472 мар 15 14:56 mintsystem.timestamps
            -rw-r—r— 1 root root 33432 апр 30 07:11 mintupdate.log
            -rw-r—r— 1 root root 1063 апр 1 06:48 mintupdate.log.1.gz
            drwxr-xr-x 2 root root 4096 мая 14 2019 openvpn
            -rw——- 1 root root 2198 апр 30 10:10 preload.log
            -rw——- 1 root root 4737 апр 29 07:36 preload.log.1.gz
            drwxr-x— 2 root adm 4096 мая 23 2019 samba
            drwx—— 2 speech-dispatcher root 4096 апр 23 2018 speech-dispatcher
            -rw-r—— 1 syslog adm 200076 апр 30 11:00 syslog
            -rw-r—— 1 syslog adm 1877876 апр 30 07:15 syslog.1
            -rw-r—— 1 syslog adm 429951 апр 29 07:41 syslog.2.gz
            -rw-r—— 1 syslog adm 557552 апр 28 07:46 syslog.3.gz
            -rw-r—— 1 syslog adm 101180 апр 27 06:54 syslog.4.gz
            -rw-r—— 1 syslog adm 118895 апр 26 07:11 syslog.5.gz
            -rw-r—— 1 syslog adm 125882 апр 25 06:16 syslog.6.gz
            -rw-r—— 1 syslog adm 180216 апр 24 07:39 syslog.7.gz
            -rw——- 1 root root 64064 апр 24 13:01 tallylog
            drwxr-xr-x 2 root root 32768 апр 30 11:00 timeshift
            -rw-r—r— 1 root root 113 апр 30 07:10 ubuntu-system-adjustments-adjust-grub-title.log
            -rw-r—r— 1 root root 26 апр 30 07:10 ubuntu-system-adjustments-start.log
            -rw-r—r— 1 root root 26 апр 29 23:58 ubuntu-system-adjustments-stop.log
            -rw-r—— 1 syslog adm 1803382 апр 30 10:59 ufw.log
            -rw-r—— 1 syslog adm 3132897 апр 26 07:10 ufw.log.1
            -rw-r—— 1 syslog adm 286755 апр 20 07:43 ufw.log.2.gz
            -rw-r—— 1 syslog adm 202012 апр 12 07:43 ufw.log.3.gz
            -rw-r—— 1 syslog adm 282281 апр 6 07:50 ufw.log.4.gz
            -rw-rw-r— 1 root utmp 287232 апр 30 07:11 wtmp
            -rw-rw-r— 1 root utmp 158976 апр 1 06:48 wtmp.1
            -rw-r—r— 1 root root 35604 апр 30 10:44 Xorg.0.log
            -rw-r—r— 1 root root 37319 апр 29 23:58 Xorg.0.log.old
            vladimir1956@vladimir1956-Satellite-A665:~$

  3. Огромное спасибо!!! Моя 2020 года висла если открыть приложение сложнее чем калькулятор! Нереальная помощь!!!

  4. Добрый день! Пишу о старой проблеме зависания экрана. Вот какой совет подсказали. Зависание экрана происходит от недостатка оперативной памями. Хотя на моём ноутбуке стоит максимум 8гб. Другой вариант(я его попробовал) уменьшение разрешение экрана. После этой оперции пока проблем не возникало.

      1. Скажите пожалуйста, может это вопрос будет не по теме, но всё же:не подскажете как уменьшить работу вентилятора? Постоянно работает. Я много искал информации на эту тему, но ничего конкретного.

        1. А зачем уменьшать работу вентилятора? 🙂 Он и должен постоянно работать. Он шумит или что не так?

  5. Да нет, просто практически постоянно работает. Може потому, что процессор i7 ? Где то пол года назад менял термопасту, всё вроде нормально.

  6. Спасибо автору. Благодаря этой инструкции смог настроить нормальную загрузку убунту

  7. Спасибо за статью! У меня ноутбук hp с видеокартой от Nvidia. Решил проблему при зависании интерфейса при установке Ubuntu 20.04.

Добавить комментарий