Вопрос или проблема
Что я хочу достичь:
Я хочу настроить полную загрузку моей установки Ubuntu 16.04 LTS так, чтобы отображались те же обои, которые на моем рабочем столе.
Чего я добился до сих пор:
-
добавил обои в меню grub, добавив следующие строки в
/etc/default/grub
и выполнивupdate-grub
после этого.export GRUB_MENU_PICTURE="/boot/grub/wallpaper.png" export GRUB_COLOR_NORMAL="white/black" export GRUB_COLOR_HIGHLIGHT="black/white"
-
добавил обои на загрузочный экран и экран входа
Проблема:
Когда я загружаюсь, изображение отображается во время grub, но затем я редко вижу загрузочный экран, вместо этого я вижу почти пустой экран с проверкой файловой системы, например:
/dev/sda1: clean, 201776/60878736 files, 4991277/243040256 blocks
Это мешает мне достичь желаемого опыта загрузки, так как после этого загрузочный экран появляется только на короткое время.
Вопрос:
Как я могу убрать это сообщение, чтобы получить бесшовную загрузку с моими любимыми обоями, не полностью отключая проверку файловой системы (если это возможно)?
Отключение сообщений загрузки
Вы должны быть в состоянии достичь этого с помощью параметра ядра loglevel=
или quiet
loglevel= Все сообщения ядра с уровнем журналирования меньше, чем
логуровень консоли, будут выведены на консоль. Он также
может быть изменен с помощью klogd или других программ. Уровни
журналирования определены как:
0 (KERN_EMERG) система неработоспособна
1 (KERN_ALERT) необходимо немедленно принять меры
2 (KERN_CRIT) критические условия
3 (KERN_ERR) условия ошибки
4 (KERN_WARNING) условия предупреждения
5 (KERN_NOTICE) нормальные, но значительные условия
6 (KERN_INFO) информационные
7 (KERN_DEBUG) сообщения отладки
quiet [KNL] Отключение большинства сообщений журнала
Я не уверен, на каком именно уровне это будет скрыто (или насколько тихой вы хотите видеть свою загрузку).
Временно
перезагрузите компьютер и в меню grub нажмите e
для редактирования параметров загрузки.
прокрутите вниз до конца строки linux...
с помощью клавиш со стрелками
добавьте желаемый параметр loglevel
или quiet
в конец этой строки. пример:
linux /vmlinuz-4.4.0-21.generic.efi.signed root=/dev/mapper/encrypted ro loglevel=4
или
linux /vmlinuz-4.4.0-21.generic.efi.signed root=/dev/mapper/encrypted ro quiet
для завершения редактирования и загрузки нажмите F10
Постоянно
Для этого отредактируйте /etc/default/grub
отредактируйте строку:
GRUB_CMDLINE_LINUX_DEFAULT=
раскомментируйте ее, если необходимо, и добавьте желаемый уровень логирования или quiet, например GRUB_CMDLINE_LINUX_DEFAULT="loglevel=4"
или GRUB_CMDLINE_LINUX_DEFAULT="quiet"
и выполните sudo update-grub
Сообщения fsck
удаление fsck из initramfs
fsck запускается по умолчанию через initramfs. Удалив его и позволив systemd запускать fsck, мы сможем перенаправить вывод.
см. man initramfs
и wiki.ubuntu.com/Initramfs для получения дополнительной информации о удалении fsck из ramfs.
systemd fsck
Из архивного вики:
Теперь скопируйте файлы systemd-fsck-root.service и [email protected], расположенные в /usr/lib/systemd/system/, в /etc/systemd/system/ и отредактируйте их, настроив StandardOutput и StandardError следующим образом:
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/lib/systemd/systemd-fsck
StandardOutput=null
StandardError=journal+console
TimeoutSec=0
В Ubuntu эти файлы расположены в /lib/systemd/system
Если файловая система не была проверена через initramfs во время загрузки, systemd-fsck-root.service будет автоматически запущен.
см. http://manpages.ubuntu.com/manpages/wily/man8/[email protected]
Удаление проверки дисков из загрузки 20.04
Установленная система
Опция командной строки fsck.mode=skip
может использоваться для пропуска проверки дисков при загрузке Ubuntu 20.04.
Строка Проверка дисков: 0% завершено
все равно может появляться, но fsck не будет выполняться, и время загрузки не увеличится.
Добавьте fsck.mode=skip
в linux line
в grub.cfg прямо перед quiet splash
(добавление fsck.mode=skip после ключевого слова ‘quiet’ также работает. Просто для вашей информации!)
Рекомендуется добавить команду в grub.cfg, отредактировав /etc/default/grub следующим образом: GRUB_CMDLINE_LINUX_DEFAULT="fsck.mode=skip quiet splash"
и затем выполнить sudo update-grub
.
У меня возникла эта проблема с Live USB, но не с установленной системой.
Персистентные USB
Опция командной строки fsck.mode=skip
также может использоваться для пропуска проверки дисков на персистентных USB-накопителях.
Строка Проверка дисков: 0% завершено
все равно появляется, но fsck не будет выполняться, и время загрузки не увеличится.
mkusb После создания персистентного USB-накопителя, откройте /boot/grub/grub.cfg как root.
- Добавьте
fsck.mode=skip
в меню персистентного использования, как показано:
linux ($root)/casper/vmlinuz file=/cdrom/preseed/ubuntu.seed maybe-ubiquity fsck.mode=skip quiet splash persistent ---
- Более новые версии mkusb уже включают это исправление
UNetbootin После создания загрузочного носителя, откройте /boot/grub/grub.cfg как root.
-
Добавьте
fsck.mode=skip
для первого меню-элемента (режим загрузки UEFI). -
Откройте syslinux.cfg как root и добавьте
fsck.mode=skip
для режима загрузки BIOS по умолчанию.
Rufus После создания загрузочного носителя, откройте /boot/grub/grub.cfg как root.
-
Добавьте
fsck.mode=skip
для меню по умолчанию (режим загрузки UEFI). -
Откройте /isolinux/txt.cfg как root и добавьте
fsck.mode=skip
для “Try Ubuntu without installing” меню (для режима загрузки BIOS).
Экран Try Ubuntu / Install Ubuntu можно убрать из загрузки BIOS, перезаписав syslinux.cfg следующими данными:
default persistent
label persistent
say Загрузка сеанса Ubuntu в режиме persistence...
kernel /casper/vmlinuz
append file=/cdrom/preseed/ubuntu.seed boot=casper persistent initrd=/casper/initrd quiet splash noprompt --
Я тоже испытывал черный экран после grub с консольным логгингом и вспышкой экрана Plymouth даже на свежей установке 16.04 LTS. Отключение сообщений, вероятно, не лучший выход. Я искал информацию в поисковике и обнаружил эту тему. В комментарии #18 вы найдете команды, которые устранили мою проблему без отключения сообщений.
Моя процедура внедрения исправления была следующей:
- Откройте терминал (Вы должны быть залогинены как root)
- Введите:
sudo -i
(введите пароль администратора) - Введите:
echo FRAMEBUFFER=y > /etc/initramfs-tools/conf.d/splash
- Введите:
update-initramfs -u
- Введите:
exit
(чтобы выйти из-под root). - Закройте ваш терминал и перезагрузите компьютер.
Теперь, если Plymouth работает правильно, продолжайте настраивать процесс загрузки. Если вы пробовали многое для исправления загрузочного экрана Plymouth с помощью команд в терминале, я советую сделать свежую установку и начать заново, возможно, вы нанесли ущерб вашей файловой системе и не осознаете этого.
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash loglevel=3 console=tty3"
console=tty3
перемещает вывод fsck (и других процессов) на не основной консоль и сохраняет tty1 чистым.
Ответ или решение
Чтобы отключить сообщение о проверке файловой системы, которое отображается во время загрузки Ubuntu 16.04 LTS, не отключая саму проверку, нужно внести изменения в конфигурацию системы и загрузчика. В этом объяснении я представлю несколько способов достижения вашей цели и подробно расскажу о каждом из них.
Теория
Когда Linux загружается, ядро системы инициализирует различные компоненты и проводит проверку файловой системы с помощью fsck
для обеспечения целостности данных. Результаты этой проверки выводятся на консоль. Если вы хотите скрыть эти сообщения, не отключая саму проверку, можно настроить параметры загрузчика и службы systemd
.
Пример
Ключевыми элементами для управления отображением этих сообщений являются параметры:
- loglevel: Управляет уровнем детализации сообщений ядра, которое отображается на консоль. Низкие уровни (0-3) показывают только критические ошибки, тогда как более высокие (6-7) отображают более информативные и отладочные сообщения.
- quiet: Отключает большинство логов системных сообщений.
- console: Позволяет перенаправить вывод сообщений с основной консоли, удерживая экран чистым.
Применение
-
Настройка параметров GRUB:
-
Откройте конфигурационный файл GRUB:
sudo nano /etc/default/grub
-
Измените строку
GRUB_CMDLINE_LINUX_DEFAULT
, добавив параметрыquiet
и перенаправление консоли:GRUB_CMDLINE_LINUX_DEFAULT="quiet splash loglevel=3 console=tty3"
Здесь
quiet
уменьшает количество выводимой информации,loglevel=3
отображает только важные сообщения, аconsole=tty3
перенаправляет вывод на другую консоль, оставляя tty1, на которой отображается плисаш (splash screen), чистой. -
Сохраните изменения и обновите настройки GRUB:
sudo update-grub
-
-
Удаление fsck из initramfs:
- Если вы хотите, чтобы проверка файловой системы управлялась только системой
systemd
, удалите fsck изinitramfs
:echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash sudo update-initramfs -u
- Это изменение позволит системе
systemd
обрабатывать fsck, и ее вывод будет перенаправлен на указанный tty через настройкиsystemd
.
- Если вы хотите, чтобы проверка файловой системы управлялась только системой
-
Настройка сервиса systemd-fsck:
- Скопируйте файлы
/lib/systemd/system/systemd-fsck-root.service
и/lib/systemd/system/systemd-fsck@.service
в/etc/systemd/system/
:sudo cp /lib/systemd/system/systemd-fsck-root.service /etc/systemd/system/ sudo cp /lib/systemd/system/systemd-fsck@.service /etc/systemd/system/
- Отредактируйте эти файлы, добавив перенаправление вывода:
[Service] StandardOutput=null StandardError=journal+console
- Скопируйте файлы
-
Применение изменений:
- Перезагрузите систему, чтобы изменения вступили в силу.
Эти шаги позволят вам уменьшить количество сообщений, выводимых на консоль во время загрузки, и сохранить целостность системы. Вы все еще будете получать важные системные лог-сообщения через журнальную систему, но они не будут мешать плисаш экрану. Пошаговое следование этим инструкциям позволит вам достичь более эстетичного процесса загрузки, соответствующего вашему представлению.