Решение проблем с загрузкой ОС

Вопросы рассмотренные здесь касаются разных способов создания загрузочных накопителей: из-под Linux, Windows и MacOS. В этой статье собраны 13 возможных проблем и пути их решения.

  1. ОС не грузится с моего устройства
  2. После выбора ОС из загрузочного меню все остановилось
  3. Моя ОС не поддерживается средствами создания загрузочных накопителей
  4. Как найти сообщества пользователей моего дистрибутива?
  5. Возможно ли создание персонального загрузочного образа ОС?
  6. Можно ли загрузить содержимое livecd/liveusb полностью в память?
  7. Livecd/liveusb ОС загружаются слишком медленно
  8. Моего аппаратного обеспечения достаточно для нормального выполнения программ, но общая производительность плохая
  9. Я хочу ускорить загрузку ОС любым возможным путем, чего бы мне это не стоило
  10. Какие файловые системы поддерживаются загрузчиками по умолчанию?
  11. Восстановление нормальной загрузки Windows систем
  12. Загрузка MacOS и других ОС на одном носителе
  13. GPT против MBR, какой стиль разбиения партиций выбрать?

ОС не грузится с моего устройства

Если вы не видите загрузочное меню, значит попробуйте поменять порядок загрузки устройств в BIOS. Удерживайте во время загрузки F2 (на некоторых ноутбуках Lenovo Fn + F2), или клавишу Delete, чтоб войти в меню BIOS и выберите вкладку Boot. Поставьте первым в очереди устройство из которого хотите загрузится.

На некоторых машинах можно выбрать порядок загрузки не заходя в BIOS. Для ноутбуков Toshiba удерживайте F12 во время загрузки. Для ноутбуков Lenovo удерживайте Fn + F12. После всего выберите нужное устройство.

Если после этого, устройства все ещё не видно, очень вероятно, что ваша машина не поддерживает загрузку с современных GPT-партиций. Бывает и обратное, когда на новых машинах отключено CSM (модуль поддержки совместимости) и загрузка с MBR-партиций невозможна. На новых UEFI, рекомендуется включить CSM, ну и конечно, выбрать UEFI и Legacy.

UEFI AND LEGACY OPTION
AMI BIOS CSM

Другой причиной могут быть «плохие сектора». Для их исправления воспользуйтесь утилитой fsck с опцией «-r» в Linux, или командой chkdisk в Windows.

disk checking
Работа fsck

После выбора ОС из загрузочного меню все остановилось

Бывает много случаев после которых загрузочный процесс останавливается. Это достаточно сложный вопрос на который нельзя дать ответ, если вы не покажете последнее системное сообщение. Наиболее вероятно, что причиной неисправности является неправильно заданный root параметр. Например, если bash оболочка не найдет действительный root раздел, вы увидите следующее сообщение:

/bin/sh: can’t access tty; job control turned off

Рассмотренное сообщение может означать, что командный интерпретатор не может получить доступ к символьному TTY устройству, из-за неправильно заданного root параметра. Вы можете, вручную отредактировать выделенную в загрузчике запись нажатием клавиши «e» для Grub, или «TAB» для Syslinux.

boot menu entry
Grub 2 меню

Задайте правильную root партицию и загрузитесь с принятыми опциями нажатием F10 для Grub, или Enter для Syslinux. Если все прошло успешно, тогда вам следует сделать эту запись постоянной изменив соответствующий конфигурационный файл вашего загрузчика.

Kernel panic not syncing
Паника ядра

Если вы видите сообщение о панике ядра (kernel panic), то скорее всего корень проблемы заключается в специфике вашей аппаратуры. Если вы оверклокер и «разгоняете» вашу ласточку, вернитесь в нормальный режим работы применив настройки по умолчанию. Если паника ядра продолжается, значит проблема в ядре или драйверах. Проверьте логи работы ядра, диагностические сообщения, особое внимание уделите предупреждениям (Warning). Обновите версию ядра и программ.

Моя ОС не поддерживается средствами создания загрузочных накопителей

Для примера возьмем UNetbootin, в списке поддерживаемых ОС вы не найдете все дистрибутивы Linux. Это не значит, что большинство из них не поддерживается. Просто их тысячи и всех их не перечислить.

UNetbootin main window
Выбор дистрибутивов в UNetbootin

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

Бывают случаи, когда некоторые дистрибутивы требуют экстра опций и специальных модификаций. В таком случае вам необходимо найти кого-нибудь из сообщества пользователей и спросить про дополнительные опции или модификации.

Как найти сообщество пользователей моего дистрибутива?

Большинство дистрибутивов Linux, кроме секретных военных или дистрибутива Цикады 3301, размещены на сайте Distrowatch. На этом сайте, под описанием выбранной ОС вы сможете найти ссылку на соответствующий пользовательский форум.

Сообщество пользователей дистрибутива Slax
Distrowatch — Короткая информация

Но не спешите задавать свой вопрос, очень возможно, что его уже кто-то задал. Сперва, воспользуйтесь поиском по форуму. Этого требует этика общения на большинстве форумов. Уважайте свое и чужое время.

Возможно ли создание персонального загрузочного образа ОС?

Да запросто! Ubuntu и его производные, такие как Mint, позволяют создать персональный пользовательский образ ОС. Они позволяют включить ваш набор программ, скриптов, настроек, пользовательские репозитории в iso образы.

Таким путем, вы можете развернуть ОС с вашими конфигурациями «из коробки» на огромном количестве машин. Это хорошо известная практика среди системных администраторов потому, что позволяет избежать большого числа однотипных ручных операций и также одновременно внедрить требуемые настройки на большинстве машин избежав случайных опечаток при правке неимоверного множества файлов конфигурации.

За все дистрибутивы не скажу, но в некоторых есть подобные вещи. В Arch Linux это называется iso ремастерингом и всё делается ручками. Для Open Suse создан KIWI Toolset, для Fedora приложение livemedia-creator… Список можно продолжать, но это выходит за рамки нашей темы.

Можно ли загрузить содержимое livecd/liveusb полностью в память?

Да, конечно! Все что вам надо, передать «toram» параметр через конфигурационные файлы вашего загрузчика. Операции ввода-вывода в память происходят значительно быстрее, чем на внешний накопитель. Это хороший выбор, но вам необходимо иметь достаточно пространства для размещения его содержимого в памяти. Если для нормальной работы требуется 4 Гб памяти, то для нормальной работы в режиме livecd/liveusb с опцией toram требуется 8 Гб.

Livecd/liveusb ОС загружаются слишком медленно

Live версии каждой ОС, по большей части, загружаются в память, а иногда и полностью в память ОЗУ с опцией «toram». Как было сказано в предыдущем вопросе, эти операции быстрее, но необходимо обладать достаточным количеством RAM памяти. Иначе, получится совсем наоборот.

Существуют специализированные карманные дистрибутивы, предназначенные преимущественно для загрузки из флеш накопителей такие как, Slax и Porteus. Вы можете их найти на Distrowatch. Они очень хорошо подходят для таких целей, поскольку обладают возможностью горячего подключения пакетов. Каждое приложение предоставляется в виде сжатого модуля, которого можно отключить при необходимости. Это позволяет эффективно управлять ресурсами памяти.

Моего аппаратного обеспечения достаточно для нормального выполнения программ, но общая производительность плохая

Если вы скачали и установили не тот драйвер и все вроде работает нормально, то не спешите радоваться. Ядро Линукс периодически делает опрос присутствующей аппаратуры. Если драйвер не тот, тогда генерируется диагностические сообщения и засоряются логи. Через неделю использования размер лог файла может быть около 1 Гб. При всем этом, как правило, система дико медлит, проверьте вывод команды top.

cpu usage on lenovo laptop
Менеджер процессов top

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

Я хочу ускорить загрузку ОС любым возможным путем, чего бы мне это не стоило

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

Есть специальные Bugs Bounty программы, участники которых могут получить денежное вознаграждение. Евросоюз и некоторые неправительственные организации также выдают гранты на совершенствование свободного программного обеспечения.

Ядро Linux монолитное, оворя человеческим языком, оно включает поддержку даже тех вещей, которые вам не нужны. Построить свое ядро можно и не меняя исходный код, достаточно просто не включить в рецепт сборки излишний функционал. Или вынести его за пределы ядра в виде модуля (.ko файла). Этот способ требует полного знания своего железа.

Последний способ, заключается в передаче специальных опций (смотреть Как улучшить производительность Linux отключив патчи для Meltdown и Spectre). Ничего компилировать не надо, но будьте осторожны, это повышает риски в безопасности.

Какие файловые системы поддерживаются загрузчиками по умолчанию?

Загрузчик Windows, разумеется, поддерживает только файловые системы корпорации Microsoft. Было время помню, ещё в семерке, баловался я с bcdedit добавил китайский загрузчик grub4dos и он грузил Slax (в простонародье «Кеды»), Knoppix и другие легковесные дистрибутивы из NTFS партиций. Собственно, хоть название его и старое, но с NTFS он работал исправно.

Универсальные загрузчики типа Grub 2 (старый Grub Legacy немного примитивней) имеют модульную структуру, как бутерброд. Поддержку других файловых систем в нем можно добавить расширением. По умолчанию поддерживаются ext2, ext3, ext4. Последние две надежные журналируемые ФС, которые хранят данные об операциях записи в журнале. Если утилита os-probe, входящая в состав пакета Grub 2, находит установленную Windows, то добавляет запись в grub.cfg. Grub 2 передает управление другому загрузчику при помощи инструкции «chainloader».

Восстановление нормальной загрузки Windows систем

Алгоритм прост:

  1. Возьмите флеш накопитель с которого поставили Windows, если нет создайте его и перезагрузите компьютер;
  2. Войдите в режим восстановления;
  3. Воспользуйтесь утилитой bootrec, система сделает все за вас.

Загрузка MacOS и других ОС на одном носителе

Используйте загрузчик Clover.

GPT против MBR, какой стиль разбиения партиций выбрать?

Сразу скажу, что на машинах без UEFI используют только MBR. Для современных машин MBR — это дикость. Да, вы можете работать с такой разбивкой, если не планируете использовать много ОС. Старый подход ограничивает возможности UEFI деля разделы на первичные (не более 4) и логические. Когда не было GPT, имел значения порядок установки ОС. GPT существенно упростил этот процесс. С точки зрения отказоустойчивости, это самый надежный способ.

Оставьте комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *