Почему ubuntu долго грузится

Обновлено: 06.07.2024

Вам знакомо то чувство, когда по прошествии какого-то времени Ubuntu начинает тормозить? В этой статье мы собрали десять небольших советов, которые помогут если не вернуть былую скорость, то хотя бы просто заставить систему работать быстрее. Описанные здесь советы вполне могут сработать и на других дистрибутивах Linux, основанных на Ubuntu, вроде Linux Mint, Elementary OS и т.д.

1. Уменьшите стандартное время загрузки GRUB

По умолчанию GRUB даёт 10 секунд на выбор одной из нескольких ОС, вход в режим восстановления и т.д., что достаточно долго. Кроме того, вам придётся сидеть перед компьютером и нажимать на enter, чтобы как можно быстрее загрузить Ubuntu. Немного затратно по времени, не так ли? Разумным решением будет сократить это время. Сначала откроем конфигурацию GRUB:

И поменяем GRUB_TIMEOUT=10 на GRUB_TIMEOUT=2 . Теперь время загрузки сократится до 2 секунд. Почему мы ставим 2, а не 0? В последнем случае мы потеряем возможность выбрать другую ОС или зайти в режим восстановления.

Чтобы применить изменения, используйте эту команду:

2. Настройте автозапуск приложений


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


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

Для этого в том же списке выберите нужное приложение, нажмите «Редактировать» и в поле «Команда» допишите в начале команду sleep <нужное время в секундах>; . Например, если вы напишете sleep 20; , то приложение запустится с 20-секундной задержкой.


3. Установите preload для ускорения запуска приложений

Preload — демон, анализирующий поведение пользователя и часто запускаемые приложения. Для его установки откройте терминал и введите следующую команду:

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

4. Выберите лучшее зеркало для обновлений

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

Белкасофт , Удалённо , По итогам собеседования


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

5. Используйте apt-fast вместо apt для быстрого обновления

apt-fast — это оболочка для apt, увеличивающая скорость загрузки пакетов с помощью множественных соединений. Если вы часто используете терминал и apt для обновлений, то вам стоит попробовать apt-fast. Установить его можно следующим образом:

6. Уберите языковые обновления из apt update:

Когда-нибудь обращали внимание на вывод sudo apt update ? В нём есть три типа строк: hit, ign и get, о значении которых можно почитать на форуме. Если вы посмотрите на строки ign, то увидите, что большинство из них связано с переводом языка. Если вы используете все приложения и пакеты на английском, то вам не нужен перевод с английского на английский.

Если отключить эти языковые обновления, то это немного ускорит apt update . Для этого откройте следующий файл:

И в его конце добавьте эту строку:


7. Уменьшите перегрев

Перегрев — распространённая проблема. Скорость работы перегретого компьютера оставляет желать лучшего. На запуск программы могут уйти годы, если кулер процессора крутится так же быстро, как бегает Усейн Болт. Для облегчения этой проблемы есть два инструмента: TLP и CPUFREQ.

Для установки и запуска TLP используйте следующие команды:

После установки TLP от вас больше ничего не требуется. Программа работает в фоне.

Для установки индикатора CPUFREQ используйте следующую команду:

Перезагрузите компьютер и включите энергосберегающий режим:


8. Настройте LibreOffice и сделайте его быстрее

Если вы часто используете LibreOffice, то вы можете сделать его немного быстрее. Запустите LibreOffice и перейдите в параметры. В открывшемся окне выберите «Память», затем поставьте галочку напротив пункта «Использовать быстрый запуск» и увеличьте объём доступной памяти.


9. Используйте легковесную среду рабочего стола (если можете)

Вместо стандартной среды GNOME вы можете попробовать более лёгкие Xfce или LXDE.

Эти среды используют меньше памяти и не так сильно нагружают процессор. Также к ним прилагается набор легковесных приложений, которые помогают ускорить Ubuntu.

Конечно, рабочий стол может выглядеть не так современно, как в Unity или GNOME, но это компромисс, на который можно пойти.

10. Используйте менее тяжёлые альтернативы приложений

Это уже кому как нравится. Некоторые из стандартных или популярных приложений довольно тяжёлые и могут перегрузить слабый компьютер. В такой ситуации вы можете использовать альтернативы этих приложений. Например, вместо Ubuntu Software Center можно использовать AppGrid, вместо LibreOffice Writer — AbiWord и т.д.

Прим.перев. Ещё больше материалов по продвинутой оптимизации Linux-систем вы можете найти в Arch wiki.

Скорость загрузки вашей операционной системы - это очень важный момент в работе компьютера. Никому не хочется смотреть на заставку загрузки по несколько минут. Чем быстрее загрузится система и будет готова к работе, тем лучше.

Но порой система инициализации выполняет много лишних задач во время загрузки, иногда некоторые сервисы ожидают загрузки других и завершаются только по таймауту через некоторое время. В таких случаях система может загружаться до нескольких минут. В этой статье мы рассмотрим как ускорить загрузку Linux, что нужно для этого настроить, что удалить. А также немного поговорим о процессе загрузки. Мы сосредоточимся на системе инициализации systemd.

Как проходит загрузка Linux

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

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

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

После того как ядро передало управление системе инициализации, начинается монтирование дисков. Это тоже отнимает время, лучше не использовать виртуальные разделы дисков, например, raid или lvm, да и вообще, чем меньше разделов - тем лучше. Идеальный вариант - только корневой раздел, тогда скорость загрузки linux будет максимальной. Но это очень невыгодный в плане удобства вариант, поэтому найдите золотую серединку. Перед тем как примонтировать каждый диск, система инициализации пытается проверить файловую систему на ошибки, это тоже замедляет загрузку.

Загрузка сервисов отнимает больше всего времени и больше всего работы придется проделать здесь, определить какие сервисы не нужны и отключить их также скрыть те сервисы, которые отключить нельзя. Чтобы понять что именно отключать нам нужно знать сколько времени занимает загрузка каждого сервиса. Давайте рассмотрим анализ скорости загрузки systemd.

Анализ загрузки Systemd

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

Давайте посмотрим насколько быстро грузится наша система сейчас:

systemd

Да, здесь 17 секунд, не так уж плохо, но будет еще лучше после завершения ускорения загрузки. На загрузку ядра уходит 5.405, а на все остальные сервисы 11.611. Чтобы понять какие именно сервисы замедляют систему нам нужна более подробная информация, мы можем ее получить с помощью параметра blame:

systemd1

У нас есть список сервисов, которые загружаются дольше всего, но этот список ни о чем нам не говорит, потому что в Systemd параллельная загрузка сервисов. Если бы во время загрузки была какая-нибудь проблема, мы бы ее увидели, но проблем здесь нет. Нам нужен более детализованный график с указанием не только времени загрузки сервиса, но и с отображением параллельных загрузок и мы можем его получить командой:

systemd-analyze plot > graph.svf

Утилита сгенерирует svf файл с графиком, откройте его в браузере:

systemd2

Вот теперь у нас есть вся информация, чтобы оптимизировать систему. Здесь отображается не только время загрузки каждого сервиса, но также время когда он начал загружаться и когда завершил. Дальше начнем ускорение загрузки Linux.

Ускорение загрузки Linux

Начнем мы с оптимизации ядра 5 секунд, это не так много, но можно же еще улучшить. Мы не будем пересобирать ядро, хотя и это дало бы больший эффект, мы просто настроим его работу с помощью параметров загрузки.

Настраивать Grub будем правильно. Параметры загрузки ядра находятся в файле /etc/default/grub, а именно в строчке GRUB_CMDLINE_LINUX_DEFAULT. Откройте этот файл:

Теперь приводим интересующую нас строчку к такому состоянию:

GRUB_CMDLINE_LINUX_DEFAULT="quiet rootfstype=ext4 libahci.ignore_sss=1 raid=noautodetect selinux=0 plymouth.enable=0 lpj=12053560"

Разберем подробнее за что отвечает каждый параметр:

  • quiet - вывод, это долго, поэтому говорим ядру что на экран нужно выводить минимум информации
  • rootfstype=ext4 - указываем в какую файловую систему отформатирован корень. У меня ext4.
  • libahci.ignore_sss=1 - Ignore staggered spinup flag, ускоряет загрузку жестких дисков
  • raid=noautodetect - raid я не использую, думаю вы тоже поэтому отключаем.
  • selinux=0 - система полномочий selinux на домашней машине тоже ни к чему, без нее будет быстрее.
  • plymouth.enable=0 - заставка plymouth тоже занимает много времени, поэтому убираем заставку
  • lpj=12053560 - позволяет задать константу loops_per_jiffy, что позволит ядру не вычислять ее каждый раз и сэкономит до 250 миллисекунд. Это значение индивидуально для каждого компьютера.

Чтобы узнать значение последнего параметра выполните:

dmesg | grep 'lpj='

systemd3

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

Также для указания корневого раздела желательно не использовать всякие там UUID, быстрее будет если написать прямо. Для того чтобы конфигуратор grub не использовал grub добавьте в тот же файл строчку:

Сохраните файл и обновим конфигурацию grub:

Проверяем, действительно ли установлены нужные опции:

systemd5

Да, все правильно, перезагружаем компьютер, и смотрим что вышло:

systemd4

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

Настройка системы

Во-первых SELinux отключен не полностью. Для полного отключения добавляем строку в файл /etc/selinux/config:

sudo vi /etc/selinux/config

Во-вторых, проверка файловых систем тоже может занять некоторое время. Оставляем проверку на ошибки только для корня. Для этого откройте файл /etc/fstab и приведите строчку для корня к такому виду:

/dev/sda3 / ext4 defaults 1 1

Последний параметр отвечает за проверку, 1 - проверять, 0 - не проверять. Установите для всех других разделов 0. К тому же boot раздел лучше монтировать по требованию. Для этого изменяем его запись:

/dev/sda1 /boot ext4 noauto,comment=systemd.automount 1 0

Затем давайте перенесем папку /tmp в оперативную память, чтобы уменьшить количество операций на жестком диске:

tmpfs /tmp tmpfs defaults 0 0

Ускорение загрузки Linux отключением сервисов

Вот мы и добрались к сервисам. Оптимизация сервисов заключается в том, чтобы отключить лишнее, а также использовать только возможности, встроенные в systemd, так будет быстрее. Сначала перенесем всю функциональность на systemd.

Первым отключим rsyslog. В systemd используется свой механизм записи логов journald, поэтому вести еще один не нужно. Для отключения выполните:

sudo systemctl disable rsyslog
$ sudo systemctl mask rsyslog

Опция mask позволяет спрятать юнит, система будет думать что его не существует и не сможет загрузить. Восстановить такой юнит можно командой systemctl unmask.

В systemd реализована своя служба настройки сети - networkd, поэтому необязательно использовать NetworkManager. Работа со встроенной службой будет намного быстрее. Здесь нужно заметить, что если вы используете wifi и не хотите настраивать его вручную, через консоль, то отключать NetworkManager не стоит.

Отключаем NetworkManager и включаем networkd:

sudo systemctl disable NetworkManager
sudo systemctl enable systemd-networkd

Службу networking тоже можно отключить, если не используете:

sudo systemctl disable networking

Включаем resolved, который отвечает за настройку DNS серверов:

sudo systemctl enable systemd-resolved
sudo systemctl start systemd-resolved

Даем символическую ссылку на файл /etc/resolv.conf

sudo rm /etc/resolv.conf
sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf

Осталось настроить динамическое получение ip адреса при загрузке:

[Match]
Name=enp*
[Network]
DHCP=yes

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

В systemd есть свое решение для выполнения задач по расписанию, поэтому cron можно не использовать:

sudo systemctl disable cron

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

sudo systemctl disable ufw
$ sudo systemctl mask ufw

Отключаем apport (служба отчетов об ошибках):

sudo systemctl disable apport

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

sudo systemctl disable pppd-dns
sudo systemctl mask pppd-dns

sudo systemctl disable ModemManager
sudo systemctl mask ModemManager

Если вы не используете Avahi, его тоже можно отключить:

sudo systemctl disable avahi-daemon

Систему AppArmor тоже можно отключить:

sudo systemctl disable apparmor

Также если у вас загружаются такие программы, как postfix (почтовый сервер), apache (веб-сервер), mysql (сервер баз данных) лучше их тоже убрать из автозагрузки и запускать потом вручную.

Перезагружаемся и проверяем скорость загрузки:

systemd7

У меня скорость загрузки linux выросла на пять секунд. Но это нормально, учитывая, что используется VirtualBox, на реальной машине можно получить и больше. А самая лучшая оптимизация - купить SSD, там можно достичь даже скорости загрузки до двух-трех секунд.

Выводы

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

10 советов как ускорить Ubuntu Linux

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

Прежде чем мы рассмотрим, как улучшить общую производительность системы в Ubuntu, давайте сначала подумаем, почему система становится медленнее с течением времени. Для этого может быть несколько причин. У вас может быть скромный компьютер с базовой конфигурацией. Возможно, вы установили несколько приложений, которые потребляют ресурсы во время загрузки. Фактически, может быть бесконечно много факторов, влияющих на скорость работы.

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

Я использовал эти настройки со старой версией Ubuntu, но я считаю, что то же самое можно использовать и в других версиях Ubuntu, а также в других дистрибутивах Linux, которые основаны на Ubuntu, таких как Linux Mint, Elementary OS Luna и т.д.

1. Уменьшите стандартное время загрузкки grub:

Утилита grub даст вам 10 секунд на переключение между операционными системами с двойной загрузкой или на восстановление и т.д. Для меня это слишком много. Это также означает, что вам придется сидеть рядом с компьютером и нажать клавишу enter для загрузки в Ubuntu как можно скорее. Немного времени, не так ли? Первый фокус в том, чтобы изменить время загрузки. Если вам удобнее пользоваться графическим интерфейсом пользователя, прочитайте эту статью, чтобы изменить время перезагрузки и порядок загрузки с помощью Grub Customizer.

Для остальных, вы можете просто воспользоваться следующей командой, чтобы открыть конфигурацию grub:

И измените значение GRUB_TIMEOUT=10 на GRUB_TIMEOUT=2. При этом время загрузки изменится на 2 секунды. Не ставьте здесь 0, так как вы потеряете право на изменение между ОС и опциями восстановления. После изменения конфигурации grub воспользуйтесь следующей командой для применения изменений:

2. Настройте приложения автозагрузки:

Некоторые из приложений запускаются при каждом запуске и, конечно же, ресурсы будут заняты запуском этих приложений. Как результат: медленная загрузка системы при каждом включении компьютера. Зайдите в Unity Dash и найдите Startup Applications:


Посмотрите, какие приложения загружаются при запуске. Теперь подумайте, есть ли приложения, которые вам не нужно запускать каждый раз при загрузке в Ubuntu. Не стесняйтесь, удаляйте их:


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

Что вы можете сделать здесь, так это отложить некоторые запуски некоторых программ. Таким образом, вы освободите ресурс во время загрузки и через некоторое время ваши приложения будут запущены автоматически. На предыдущем рисунке нажмите кнопку Изменить и измените команду запуска с опцией перехода в спящий режим.

Например, если вы хотите отложить запуск индикатора Dropbox, скажем, на 20 секунд, вам просто нужно добавить команду, например:

Таким образом, команда 'dropbox start -i' меняется на 'sleep 20; dropbox start -i'. Что означает, что теперь Dropbox будет запускаться с задержкой в 20 секунд. Аналогичным образом можно изменить время запуска других запускаемых приложений.


3. Установите preload для ускорения загрузки приложений:

preload - это агент, который работает в фоновом режиме и анализирует поведение пользователя и с определенной частотой запускает приложения. Откройте терминал и воспользуйтесь следующей командой для установки preload:

После установки перезагрузите компьютер и забудьте об этом. Он будет работать в фоновом режиме.

4. Выберите лучшее зеркало для обновлений приложений:

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

На вкладке Software & Updates->Ubuntu Software->Download From выберите Other и затем нажмите Select Best Server:


Утилита проведет тест и скажет вам, какое зеркало является лучшим для вас. Обычно лучшее зеркало уже настроено, но, как я уже сказал, нет ничего плохого в его проверке. Также это может привести к некоторой задержке в получении обновлений, если не часто обновляется ближайшее зеркало, на котором хранится кэш репозитория. Это полезно для людей с относительно медленным подключением к Интернету. Вы также можете воспользоваться этими советами, чтобы ускорить скорость Wi-Fi в Ubuntu.

5. Используйте apt-fast вместе с apt-get для более быстрых обновлений:

apt-fast - это обертка командного сценария для "apt-get", которая улучшает скорость обновления и загрузки пакетов, загружая пакеты из нескольких соединений одновременно. Если вы часто используете терминал и apt-get для установки и обновления пакетов, вы можете попробовать apt-fast. Установите apt-fast через официальный PPA с помощью следующих команд:

6. Удалите языковые зависимости ign из apt-get update:

Вы когда-нибудь обращали внимание на вывод sudo apt-get update? В нем есть три блока: hit, ign и get. Вы можете прочитать их значение здесь. Если вы посмотрите на строки IGN, вы увидите, что большинство из них связаны с языковым переводом. Если вы используете все приложения на английском языке, то нет абсолютно никакой необходимости в переводе базы данных пакетов с английского языка на английский.

Если вы подавите связанные с этим языком обновления из apt-get, это немного увеличит скорость обновления apt-get. Для этого откройте следующий файл:

И добавьте следующую строку в конец файла:


7. Уменьшите перегрев:

Перегрев является распространенной проблемой в компьютерах в наши дни. Перегретый компьютер работает довольно медленно. Потребуются годы, чтобы открыть программу, когда ваш кулер процессора работает как Usain Bolt. Есть два инструмента, которые можно использовать для снижения перегрева и, таким образом, повышения производительности системы в Ubuntu, TLP и CPUFREQ.

Для установки и использования TLP используйте следующие команды в терминале:

Вам не нужно ничего делать после установки TLP - работает в фоновом режиме.

Для установки индикатора CPUFREQ используйте следующую команду:

Перезагрузите компьютер и используйте режим энергосбережения Powersave:


8. Настройте LibreOffice, чтобы сделать его быстрее:

Если вы частый пользователь офисного пакета, то вам может понадобиться немного изменить стандартную настройку LibreOffice, чтобы сделать его быстрее. Здесь вы будете настраивать память. Откройте LibreOffice и перейдите в меню Tools->Options. В левой боковой панели выберите Память и включите функцию Systray Quickstarter, а также увеличьте выделение памяти.


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

Если вы решили установить окружение рабочего стола GNOME по умолчанию, вы можете выбрать облегченную среду рабочего стола, такую как Xfce или LXDE.

Эти окружения потребляют меньше оперативной памяти и процессорного времени. Они также поставляются с собственным набором легких приложений, которые помогают быстрее запускать Ubuntu.

Конечно, рабочий стол может выглядеть не так современно, как Unity или GNOME. Это компромисс, на который вы должны пойти.

10. Используйте более легкие альтернативы для некоторых приложений

Некоторые из стандартных или популярных приложений являются ресурсоемкими и могут не подходить для компьютеров низкого класса. Что вы можете сделать, так это использовать несколько альтернатив этим приложениям. Например, используйте AppGrid вместо Ubuntu Software Center. Используйте Gdebi для установки пакетов. Используйте AbiWord вместо LibreOffice Writer и т.д.

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

У тебя есть какие-то трюки в рукавах, чтобы ускорить Убунту? Эти советы тебе тоже помогли? Делитесь своими взглядами. Вопросы, предложения всегда приветствуются. Не стесняйтесь заглянуть в раздел комментариев.


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

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

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

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

Поэтому, когда я решил приобрести новое специализированное устройство для тестирования дистрибутивов 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 стала причиной проблемы, поэтому мы можем отключить эти драйверы.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Вы можете попробовать установить дополнительные драйверы в 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 во время загрузки ”

Спасибо большое, ты просто нереально мне помог. Большооее тебе спасибо

Всегда пожалуйста! Приятно слышать

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

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

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

Вот пролистал вниз и пишу:
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

nomodeset пробовали добавить?

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

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

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

Добрый день! что показывает top и df -h ?

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

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:+

$ 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:

Тут все ок. Сложно сказать причину

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

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

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

/var/log/syslog или messages

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

Читайте также: