Убунту не загружается – решение проблемы
Любая операционная система может перестать работать вследствие определённых причин. В процессе работы пользователя с системой устанавливаются новые утилиты, обновления, различные файлы, которые в итоге могут привести к конфликту внутри ОС. В этой статье детально разберём, что делать, если не запускается Ubuntu. Итак, приступим.
Ошибка запуска Ubuntu может быть легко исправлена.
Есть способ, позволяющий решить подобную проблему в Линукс Убунту. Подробнее об этом далее в статье.
Первым делом необходимо найти диск с Ubuntu, с которого выполнялась установка. Вставьте диск и перезагрузитесь так, чтобы открылся экран начальной загрузки. В открывшемся меню нажмите «Recover a broken system». После этого Ubuntu начнётся процесс восстановления, сначала можно подумать, что началась обычная установка системы, поскольку, как и при установке, вам понадобится выбрать язык и задать сетевые настройки. Обратите внимание на появившуюся в левом верхнем углу экрана надпись «Rescue mode».
Двигайтесь дальше, пока не дойдёте до этапа, где нужно будет выбрать корневое устройство root.
Чтобы выбрать правильный, необходимо хорошо знать размещение разделов на жёстких дисках ПК. Если это не ваш случай, может понадобиться несколько попыток, однако, есть несколько советов, которые помогут вам сделать верный выбор:
После выбора корневой файловой системы, начнётся процесс её монтирования, в случае успешного окончания, вы перейдёте к следующему окну. Если этого не случилось, значит, раздел был выбран неправильно.
Общий сценарий восстановления
Перейдя к следующему окну, вам нужно будет указать вариант восстановления. Выбор зависит от симптомов, проявляющихся во время загрузки ОС.
Обычная проблема системы, которую не получается загрузить. Возможно, причина в том, что при использовании двойной загрузки вы случайно переустановили Виндовс или другую ОС. Для решения этой неполадки необходимо переустановить GRUB. Чтобы сделать это, перейдите к меню выбора операций восстановления и выберите пункт «Reinstall GRUB boot loader». На следующем этапе необходимо выбрать, куда установить GRUB, если вы забыли, где именно находится загрузчик GRUB, наиболее вероятно, что вы установили его на жёсткий диск, стоящий первым. То есть наиболее вероятно, что это «hd0». После переустановки GRUB вы вернётесь к меню выбора операций. Нажмите «Reboot the system», чтобы перейти к меню загрузки.
Такой симптом, пожалуй, самый неочевидный, так как он может быть вызван множеством различных неисправностей. Сперва попробуйте перезагрузиться и выбрать загрузку с другим ядром. Если выбранное ядро загрузится, значит, проблема кроется в поддержке оборудования в последнем ядре. После загрузки рабочего ядра проверьте наличие обновлений для нового ядра. Если аналогичные проблемы появились на этапе выбора различных ядер в меню загрузки, перейдите к следующим этапам.
При возникновении проблем подобного рода, устранять неисправности следует прямо с диска. Для этого выберите пункт «Execute a shell in the installer environment». Далее вы попадёте в оболочку BusyBox, где можно производить определённые диагностические, а также восстановительные операции.
Проверка корневой ФС
Прежде всего, удостоверьтесь, что вы можете читать из корневой ФС. Во время загрузки восстановительный режим диска смонтирует эту файловую систему на /target. Пропишите команду:
Если вы устанавливали Ubuntu, используя параметры по умолчанию, ваша корневая файловая система должна находиться на /dev/discs/disc0/part1.
Восстановление файловой системы
Далее воспользуйтесь командой fsck для восстановления вашей файловой системы. Сперва необходимо размонтировать раздел /target, если он ещё не был смонтирован. Делается это командой:
В режиме восстановления имеются утилиты fsck исключительно для файловых систем ext2, ext3 и jfs, так что, если во время установки вы выбрали другую ФС, вам придётся воспользоваться другим установочным диском. По умолчанию в Убунту применяется ФС ext3, поэтому если вы выполняли установку по умолчанию, для проверки и восстановления диска нужно будет ввести:
fsck.ext3 замените на fsck.ext2, либо fsck.jfs, если у вас разделы с ext2 или jfs, соответственно, а также поменяйте раздел на свой конкретный корневой. По завершении работы fsck ещё раз смонтируйте раздел на /target и попробуйте получить к нему доступ, прописав команду ls:
# mount /dev/discs/disc0/part1 /target
Если на экране отобразится несколько файлов и директорий, значит, ваше устройство восстановлено! Воспользуйтесь командой exit, чтобы покинуть оболочку BusyBox. выполните перезагрузку компьютера и проверьте получится ли загрузиться теперь.
В случае, если система загружается, но виснет на каком-либо сервисе, перейдите к оболочке в среде вашей корневой файловой системы, и выберите пункт «Execute a shell in /dev/discs/disc0/part1» в меню восстановительных операций. Это название может незначительно отличаться, если у вас выбран другой раздел в качестве корневой ФС.
Далее вы попадёте в оболочку собственной корневой ФС. Там вы сможете перемещаться по ФС, а также выполнять команды, будто вы действительно загрузили вашу файловую систему. Далее необходимо найти сервис init, который и является причиной проблемы. Деактивируйте его. В разделе «Управление запуском сервисов» находятся инструкции, как находить и отключать сервисы, которые запускаются при загрузке. Если Убунту инсталлировалась по умолчанию, вы, скорее всего, найдёте свой сервис или в /etc/rc2.d, или в /etc/rcS.d. Найдя проблемный сервис, поменяйте его название, заменив букву «S» на «D».
После того как скрипт init будет деактивирован, пропишите команду exit и покиньте оболочку, а после выполните перезагрузку компьютера. Попробуйте загрузиться снова в вашу систему Убунту. Деактивированный скрипт init больше не будет вызывать проблемы, так что ничто не должно помешать успешно загрузиться на этот раз.
Теперь вы знаете, что нужно делать, если Ubuntu не загружается. Пишите в комментариях справились ли вы с этой задачей, делитесь с другими пользователями своим опытом в решении подобных проблем, и задавайте вопросы по теме статьи, если они у вас остались.
Ubuntu не загружается дальше initramfs
Пользователи, которые любят экспериментировать со своей операционной системой время от времени сталкиваются с ошибкой загрузки, когда система выводит приглашение ввода BusyBox с initramfs. Эта ошибка означает, что ядро не может загрузить корневой раздел, та файловая система, к которой у вас есть доступ из этого режима не имеет ничего общего с вашей системой. Это содержимое образа initramfs, которое содержит только самые необходимые компоненты, используемые ядром для загрузки системы.
В этом режиме будет сложно что-то исправить, но можно попытаться понять где находится причина проблемы. В этой статье мы рассмотрим что делать если Linux не загружается с initramfs. Такой проблеме подвержены все дистрибутивы, но мы рассмотрим решения на примере Ubuntu.
Почему Linux не загружается дальше initramfs
Если вы столкнулись с данной ошибкой, то после нескольких десятков секунд загрузки увидите такое сообщение:
1. Неверный корневой раздел в загрузчике
В данном случае она сообщает, что не может найти раздел /dev/sda10:
Alert: /dev/sda10 does not exist. Dropping to a shell
Очень часто такая ошибка возникает после манипуляций с разделами дисков, особенно изменения их размера. UUID диска меняется и ядро больше не может его найти. Вы можете посмотреть доступные в системе разделы с помощью команды:
В этом окружении есть BusyBox, а значит есть большинство утилит Unix. Вы можете примонтировать каждый из этих разделов с помощью команды mount и узнать где находится ваш новый корневой раздел, например:
mkdir /mnt
mount /dev/sda5 /mnt
ls
Вы также можете узнать здесь же UUID данного раздела диска, для этого выполните:
В данном случае, корневой раздел имеет имя /dev/sda5. Именно это имя можно передать ядру в конфигурации загрузчика Grub, а можно UUID, но если в этом нет крайней необходимости, то короткое имя использовать гораздо проще. Надо перезагрузить компьютер, в меню Grub выбрать нужную загрузочную запись и нажать клавишу E:
Далее найти пункт, начинающейся со слова linux и в нём параметр root. Его значение вместе со словом UUID надо стереть, а вместо него прописать имя корневого раздела:
После этого система загрузится, а вам останется только создать новый конфигурационный файл grub с помощью команды:
2. Повреждённая файловая система
Подобная ошибка может появляться также при серьезных ошибках в файловой системе, которые мешают примонтировать корневой раздел. Обычно, fsck восстанавливает файловую систему автоматически, но если проблема серьезная и грозит потерей данных, утилите надо подтверждение пользователя для работы. Тогда система показывает такую ошибку:
The root filesystem on /dev/sda5 requires a manual fsck
Вы можете прямо здесь же попытаться восстановить файловую систему. Для этого выполните:
Выводы
В этой статье мы разобрались что делать если в Linux не загружается initramfs, как посмотреть сообщение об ошибке, а также как устранить самые распространённые причины.
Почему Ubuntu не входит в систему
Многие пользователи Linux сталкивались с проблемой, когда после ввода пароля вместо загрузки графического окружения и рабочего стола появляется чёрный экран, а потом снова запрос ввода пароля. Такая ситуация называется Login loop или ещё её можно описать как ошибка входа в систему. Часто она вызвана неверно выполненным обновлением или экспериментами с системой, хотя у неё могут быть и другие причины.
В этой статье мы рассмотрим основные причины возникновения такой проблемы, а также несколько способов её исправить. Но сначала давайте разберемся где искать сообщения об ошибках.
Почему не входит в систему Ubuntu
Если ошибка возникла во время работы компьютера, возможно решить её поможет перезагрузка. Если же нет, при возникновении любой серьезной ошибки сначала следует понять почему она произошла. Конечно, вариант, когда вы применяете различные варианты решения и если один из них помог, значит там и была ошибка тоже имеет право на существование, но куда быстрее выяснить где же ошибка и исправить её. Ошибки, связанные с работой X сервера записываются в файл /var/log/Xorg.0.log.
Но сначала надо попасть в терминал. Для этого на экране входа нажмите сочетание клавиш Ctrl+Alt+F2, затем введите логин и пароль:
Перед вами откроется командная строка в которую уже можно вводить команды терминала. Теперь вы можете просмотреть лог с ошибками:
Если здесь этого файла нет, что можно попытаться найти его по такому пути:
Все строки с ошибками помечены буквами EE. Опираясь на сообщения, которые есть в файле, вы сможете подобрать верный способ решения проблемы и быстро всё исправить.
1. Нет места на диске
Если в домашнем каталоге недостаточно места для создания временных файлов, необходимых для запуска окружения, с авторизацией могут возникнуть проблемы. Для исправления этой ошибки просто освободите место на диске. Это ваш случай если в логах вы видите сообщение об ошибке No space left on device. и при выполнении такой команды на домашнем или корневом разделе нет больше места:
2. Проблемы с обновлением
Если вы раньше выполняли обновление и оно прошло неудачно, попробуйте его завершить. Для этого выполните такие команды:
Затем очистите систему от лишних пакетов:
3. Неверные права на
Убедитесь, что права на файл
/.Xauthority верные. Владельцем этого файла должен быть пользователь, от имени которого вы пытаетесь войти в систему и у этого владельца должны быть все права на файл. В старых дистрибутивах этот файл находился в домашней папке:
В современной Ubuntu он находится по пути /run/user/id_пользователя/gdm/Xauthority и создается он уже после успешного входа в систему:
Во втором случае проблема с правами вряд-ли возникнет, но в первом она вполне может быть. Для её исправления выполните:
sudo chown имя_пользователя:имя_пользователя
4. Неверные права на /tmp
Папка /tmp предназначена для записи временных файлов и поэтому она должна быть доступна всем пользователям в системе как для чтения, так и для записи. Проверьте какие сейчас установлены права на эту папку:
Затем установите правильные права если надо:
sudo chmod 1777 /tmp
5. Проблема с проприетарными драйверами
Ещё одной причиной проблем может стать проприетарный драйвер видеокарты. Возможно он сломался после обновления или каких-либо действий с ядром. Его можно обновить до новой версии, переустановить или удалить вовсе. Для удаления драйвера Nvidia используйте команду:
sudo apt remove nvidia-*
Затем очистить конфигурацию Xorg:
нужно переустановить свободный драйвер Nouveau:
6. Перезапуск менеджера входа
После того, как вы проверили все методы надо вернуться в графический режим и попробовать войти в систему снова. Для этого используйте сочетание клавиш Ctrl+Alt+F1 или Ctrl+Alt+F7 в старых системах. Также вы можете полностью перезагрузить компьютер или только менеджер входа:
sudo systemctl restart display-manager
Выводы
В этой небольшой статье мы разобрались что делать если у вас не получается войти в систему Ubuntu после ввода пароля и менеджер входа постоянно просит пароль. Ситуация довольно сложная, но я надеюсь, что предложенные варианты решения помогут вам всё исправить. Знаете другие варианты исправления проблемы? Пишите в комментариях!
Не загружается Linux, чиним загрузчик GRUB
Любите экспериментировать? Наверняка вы когда-либо пытались произвести какие-то действия со своей Linux-системой, причем не так важно какие были цели: изучение и познание новых возможностей или же какая-то более конкретная цель, в виде исправления той или иной ошибки. В любом случае, при работе с дистрибутивами Linux, для загрузки которых, в большинстве случаев, и используется Grub, с последним могут возникать неприятные проблемы, ввиду которых дальнейшая эксплуатация системы просто-напросто невозможна. В этой статье вы узнаете, что делать, если не загружается Linux. Как вести себя в подобной ситуации и какие действия производить, чтобы починить загрузчик Grub. Пожалуй, начнем.
Что такое Grub
От чего могут возникнуть проблемы
Если, например, сделать наоборот, то как раз-таки Grub будет поврежден; система будет грузиться напрямую в Windows, а дистрибутив Linux останется недоступным.
Grub может сломаться и по другим причинам. Например, из-за попыток ручного изменения параметров запуска (при недостатке опыта), в таком случае нужно будет либо вручную убирать лишнее, либо полностью переустанавливать Grub.
Восстановление Grub с помощью LiveCD/USB
Для этого способа нам понадобится флешка с дистрибутивом Linux на борту. Подойдет любой: от Ubuntu, Arch или даже Linux Mint. Здесь нужен только терминал, поэтому подойдет даже версия без графической оболочки.
Как создать LiveCD/USB
Само собой, нам понадобится носитель, на который мы временно (а может и нет) запишем систему. Сохраните все важные файлы, которые были на этом носителе, после чего (имеется ввиду на другом ПК, желательно под управлением Windows) запишите загруженный образ дистрибутива на носитель. В качестве примера мы будем использовать дистрибутив Ubuntu.
Идем на официальную страницу загрузки. Загружаем любую понравившуюся версию (лучше взять новейшую для десктопа), после чего записываем ее на USB/CD.
С помощью Rufus:
Последняя версия приложения доступна на официальном сайте. Сразу после загрузки и запуска/установки мы увидим такое окно:
Вставляем носитель, выбираем его в соответствующем меню. Далее выбираем нужную схему раздела и тип системного интерфейса, и после уже открываем файловый менеджер с помощью этой кнопки:
Находим загруженный образ через менеджер, после чего жмем «Старт».
С помощью Etcher:
Опять же, идем на официальный сайт, где скачиваем последнюю версию утилиты. Далее делаем все так, как показано на этой гифке:
Ну а теперь, собственно, можно переходить к восстановлению Grub. Вставляем флешку в наш ПК (где сломан загрузчик), после чего перезагружаем его с этой самой флешки. Как только мы войдем в лайв-систему, сразу открываем терминал, после чего проделываем следующие действия:
Открываем таблицу разделов с помощью команды:
Примерно такая таблица будет выведена на экран:
По этой таблице мы видим, что Linux, в нашем случае, расположен на разделе /dev/sda1.
С помощью следующей команды мы смонтируем этот раздел в /mnt:
Теперь, для записи grub в MBR, нужно ввести следующую команду:
Если нужно только восстановить MBR диска (после переустановки Windows, к примеру), то этих действий будет вполне достаточно.
Если же необходимо обновить и меню grub (после установки Windows), то нужно выполнить еще и эту команду:
Вот и все, восстановление закончено!
Восстановление с помощью chroot
Помимо вышеописанного способа, при восстановлении Grub с помощью LiveCD можно использовать и этот. Тут мы будем использовать утилиту chroot.
Здесь нам, опять же, понадобится таблица разделов. Вводим уже известную команду:
В выводе снова будет эта таблица. Теперь нам надо присмотреться к ней еще внимательнее.
В этом способе нам необходимо примонтировать системный, а также нескольких других важных разделов. Для этого вводим эти команды:
Обратите внимание, что если если разделы /boot или /var находятся отдельно, то Вам нужно будет примонтировать их в /mnt/boot и /mnt/var.
Далее мы переходим в окружающую среду chroot с помощью команды:
И теперь, наконец-таки переустанавливаем Grub с помощью следующей команды:
Если вы на этом этапе получаете какие-то сообщения об ошибках, то попробуйте использовать эти команды:
Если все прошло успешно, выходим из chroot, используя команду:
Далее нужно отмонтировать все разделы. Для этого вводим в терминал:
В случае, если вы монтировали раздел /boot введите команду:
Теперь перезагружаем систему с помощью:
Можно также обновить меню Grub, используя команду:
Восстановление Grub в rescue mode
Если по каким-то причинам у вас нет доступа к LiveCD/USB-носителю, а также к компьютеру, с помощью которого этот самый носитель можно было бы сделать, то этот способ для вас.
Само восстановление проходит таким образом: сначала мы подгружаем все модули, чтобы открыть доступ ко всей функциональной части Grub, после чего запуститься с нужного раздела. Надо понимать, что Grub состоит из двух частей:
Одна из этих частей (первая) записана в MBR диска. В ней присутствует базовый функционал и ничего больше (консоль в rescue mode).
Стало быть, нам нужно определить, в каком разделе находится вторая часть Grub (находится в каталоге /boot/grub), и после чего подгрузить все недостающие модули. А вот уже после этого мы сможем запустить загрузчик с нужного раздела. В rescue mode есть всего четыре команды:
Для начала вводим следующую команду:
В выводе будет что-то подобное:
В некоторых случаях Grub неправильно опеределяет файловые системы находящиеся на разделах дисков. В данном примере загрузчик показывает их как msdos. Мы должны попытаться угадать диски, которые видим. В примере доступно два диска. Диск с индексом 0 содержащий три раздела, и диск с индексом 1 содержащий два раздела. Если вы знаете структуру своих дисков, определить нужный труда не составит.
С помощью этих команд мы приказываем системе использовать какой-то конкретный диск, для выполнения всех остальных операций (в нашем случае, это диск (hd0,1)). Чтобы проверить есть ли на данном диске загрузчик, введем эту команду:
Если в выводе будет список файлов и папок, значит мы все сделали правильно. Теперь можно загрузить все необходимые модули. Для этого выполним команды:
После выполнения команд Grub загрузится в полнофункциональном режиме. Будут найдены все операционные системы, которые установлены на компьютере, после чего будет показано стандартное меню загрузки.
Чтобы закрепить результат (и не проделывать все то же самое после перезапуска ПК), нужно зайти в терминал своего дистрибутива Linux, где с root правами выполнить следующую команду:
Если операционная система расположена на разделе с файловой системой btrfs, то нам необходимо выполнить следующие команды:
И подгрузить модули:
Ну и теперь запустить GRUB:
Восстановление Grub с помощью утилиты Boot repair
С помощью этой замечательной утилиты вы сможете восстановить загрузчик всего в пару кликов. Как видно из скриншота, утилита имеет собственный GUI, ее использование не вызовет трудностей.
Чтобы установить boot repair, вы можете воспользоваться одним из приведенных способов:
Если с первым способом все понятно: нужно просто скачать и записать образ с помощью соответствующих инструментов. То во втором уже нужно знать конкретные команды, которые выглядят следующим образом:
В утилите будет доступно два варианта на выбор:
Recommended repair исправляет большую часть известных ошибок, которые могли бы возникнуть при запуске. С его помощью вы сможете пофиксить и загрузчик Grub.
Create a BootInfo summary создает Boot-Info-Script – скрипт, который позволяет диагностировать большинство проблем при загрузке.
Здесь же есть и Advanced options. Он включает в себя варианты для восстановления и настройки загрузчика Grub2 (загрузка по-умолчанию, опции загрузки ядра, отображение или скрытие GRUB при загрузке, удаление GRUB). С помощью этих же инструментов, вы можете восстановить MBR и т.д.
Вам обязательно стоит заглянуть на официальный сайт Boot Repair. Там вы сможете найти более подробную информацию обо всех возможностях и особенностях программы. Там же будет доступна информация о выходе новых версий: фиксах и улучшениях самой утилиты, а также многом и многом другом.
Выводы
Возможно вас заинтересуют и другие похожие материалы про починку загрузчика Grub2. Например, в этом материале вы узнаете, как починить GRUB2 если Ubuntu не хочет загружаться. Там более подробно рассказывается, как фиксить груб с помощью утилиты Boot Repair, возможно вам стоит заглянуть туда, если вы не поняли что-то из этого материала. Что же, ну а на сегодня это все. Надеюсь, что данный материал помог вам разобраться в ошибках. Что, в свою очередь, поможет вам их решить.