Помогите разобраться с plymouth-quit-wait. 20 секунд хватит всем?
Видно, что фейлится по таймауту. Смотрим .service файл:
20 секунд. Отлично. Меняем на 120, перезагружаемся, и в итоге:
В связи с чем есть пару вопросов:
1. Для чего используется этот таймаут? Таким образом какой-то баг пофиксили или что?
2. Почему именно 20 секунд?
Пальцем вы небо, возможно, таймаут нужен для systemd, он же «умный» запускается сервисы (юниты) параллельно, может какой-то не успевает отработать, вот и поставили таймаут, что бы это как-то работало.

Я бы ещё понял, если бы это была задержка перед запуском службы (ну мало ли). Но нет, 20 секунд — это максимальное время, которое отводится на её запуск (и работу по сути).

А вот и коммит на freedesktop.org. Только я всё равно ничего не понимаю. 🙁

plymouth-quit-wait — сервис, который ждёт завершения Plymouth. Он нужен исключительно для того, чтобы программы, работающие с графикой (в частности, иксы) запускались после plymouth и не конфликтовали за фреймбуфер.
Таймаут здесь служит для того, чтобы система смогла запуститься, если Plymouth сломается/зависнет или по иным причинам не сможет отправить процессу plymouth-quit-wait сигнал о своём завершении (там D-Bus и всё такое).

Похоже так и есть. Но тогда есть другой вопрос.
Что происходит в этом случае? plymouth-quit-wait фейлится, а что дальше? Получается, кто-то должен убить зависший plymouthd?

Ну да, по идее, дальше требуется человеческое вмешательство (свитчнуться в консоль, посмотреть логи и починить/снести plymouth).
Кстати, в systemd у всех юнитов есть неявный таймаут в 90 секунд. Здесь просто сделали меньше — видимо, оно часто падает 🙂

дальше требуется человеческое вмешательство
В моём случае оно требуется постоянно. Но всё же меня смущает старт GDM’а даже в случае фейла службы plymouth-quit-wait. Причём всё происходит без ошибок.
у всех, кроме имеющих тип «oneshot», юнитов есть неявный таймаут в 90 секунд
Справедливости ради фикс.
Defaults to 90s, except when Type=oneshot is used in which case the timeout is disabled by default.

у всех, кроме имеющих тип «oneshot», юнитов есть неявный таймаут в 90 секунд
Справедливости ради фикс.
Хм, и действительно. Надо читать маны, а не цитировать на память 🙂
Кстати, насколько понимаю, у Fedora GDM должен быть пропатчен на взаимодействие с Plymouth.. Попробуй включить gdm-plymouth.service вместо gdm.service (если ты ещё не).

у Fedora GDM должен быть пропатчен на взаимодействие с Plymouth
Ну да, он собран с флагом "—with-plymouth". gdm.spec:
Собственно в таком случае сам GDM следит за завершением работы Plymouth. Например, там есть такие строки:
В Fedora gdm.service не сильно отличается от gdm-plymouth.service из AUR:
Не думаю, что здесь что-то имеет решающее значение. Кроме того, пользователи Arch’а тоже жаловались на эту проблему.
Slow boot issue due to plymouth-quit-wait.service + ubuntu 18.04
This is freshly installed machine running as dual boot over Win 10. For every reboot machine hangs for 15 secs as the plymouth service unable to start, due to some reasons.
Below is the systemd-analyse output snippet
Here is the few snippet of boot logs
Here is the delay
Graphics driver installed latest version — 415 from ppa repository
Can you let me know why there is a delay happening due to plymount-quit service? Please let me know is there any other info you would require for troubleshoot?
Is it related to hardware / software /grahics driver issue?
![]()
4 Answers 4
Plymouth is not slowing your boot-up process! Plymouth is responsible for the boot-up splash screen. Please read Plymouth.
It loads the boot-up logo at the beginning of the boot-up process and then waits until the boot-up process has finished so it unloads the splash screen. That is all it does and that is why it has to run in parallel and co-exist throughout the whole boot-up process. It does not delay anything, it just waits.
That is exactly what is happening. No more and no less. Please take a look at the output you added to your question and carefully read the following:
● plymouth-quit-wait.service — Hold until boot process finishes up
How to Verify?
You can verify that plymouth-quit-wait.service is not holding anything back but the graphical login screen, by running the command:
which will output all the services that depend on plymouth-quit-wait.service (i.e services that are delayed by plymouth-quit-wait.service ). On a freshly installed Ubuntu system, the output will be like this:
Which means only the graphical login screen is configured to wait for the plymouth-quit-wait.service and nothing else.
On the other hand if you list the services that plymouth-quit-wait.service is configured to wait for by running the command:
the output would be almost every service that should run on boot and the output will look like this:
This confirms that plymouth-quit-wait.service is not slowing down anything but just running in parallel waiting for the system to fully boot and then it will hide the boot-up splash screen to bring up the graphical login screen.
To understand more.
Please run the following command in the terminal:
Then, look for SystemdAnalyzePlot.svg in your home directory and run it in the image viewer or the Internet browser. You might need to enlarge the image so that you can read the processes names. It is worth checking and will give you a better understanding on how the boot-up process works.
You can, however, reduce your boot-up time by disabling NetworkManager-wait-online.service so plymouth has one less process to wait for. This can indeed reduce your boot-up time. To do this please follow the steps in this answer.
Oh. and please leave plymouth alone, it’s not the one that makes you wait. it’s the one that waits for you.
Медленная проблема начальной загрузки из-за plymouth-quit-wait.service + человечность 18.04
Это — недавно установленная машина, работающая как двойная загрузка по Win 10. Для каждой перезагрузки машина зависает для 15 secs как плимутский сервис, не могущий запускаться, из-за некоторых причин.
Ниже systemd-проанализировать выходной отрывок
Вот являются некоторые отрывком журналов начальной загрузки
Графический драйвер установил последнюю версию — 415 из ppa репозитория
Можно ли сообщить мне, почему существует задержка, происходящая должный plymount-выйти из сервиса? Сообщенный мне там какая-либо другая информация, которой Вы потребовали бы для поиска и устранения неисправностей?
Это связано с аппаратными средствами / программное обеспечение проблема драйвера/grahics?
4 ответа
Я не могу сказать, что еще необходимо, но я могу, возможно, дать обходное решение для Вас, так, чтобы машина запустилась быстрее.
Для меня самое рабочее решение состояло в том, чтобы отключить Плимут в личинке с
и измените строку GRUB_CMDLINE_LINUX_DEFAULT в
После сохранения изменения необходимо обновить личинку с
и затем перезапустите машину.
Можно отключить этот сервис путем выполнения команды:
Из сервисного описания:
Держите, пока процесс начальной загрузки не заканчивается
Плимут не замедляет Ваш процесс начальной загрузки! Плимут ответственен за экран-заставку начальной загрузки. Читайте здесь.
Это загружает логотип начальной загрузки в начале процесса начальной загрузки и затем ожидает, пока процесс начальной загрузки не закончился так, это разгружает экран-заставку. Это — все, что это делает и именно поэтому это должно работать параллельно и сосуществовать в течение целого процесса начальной загрузки. Это ничего не задерживает, это просто ожидает.
Это точно, что происходит. Не больше и не меньше. Смотрите на вывод, который Вы добавили к своему вопросу, и тщательно считайте следующее:
● plymouth-quit-wait.service — Содержат, пока процесс начальной загрузки не заканчивается
Понять больше.
Выполните следующую команду в терминале:
Затем ищите SystemdAnalyzePlot.svg в Вашем корневом каталоге и выполненный это в программе просмотра изображений или интернет-браузере. Вы, возможно, должны были бы увеличить изображение так, чтобы можно было считать имена процессов. Это стоит проверить и даст Вам лучшее понимание того, как процесс начальной загрузки работает.
Можно, однако, уменьшить время начальной загрузки путем отключения NetworkManager-wait-online.service таким образом, Плимут имеет тот меньше процесса для ожидания. Это может действительно уменьшить Ваше время начальной загрузки. Чтобы сделать это, выполните шаги в этом ответе.
О. и оставьте Плимут в покое, это не то, которое заставляет Вас ожидать. это — то, которое ожидает Вас
Arch Linux
So I just updated my system and on reboot I can see following output from systemd:
Here is "systemctl status plymouth-quit-wait.service" output:
GDM can't start. gdm-plymouth.service is enabled. gdm.service is disabled.
#2 2012-12-18 16:10:51
Re: plymouth-quit-wait.service issue after update
Ah hah! I'm glad I'm not the only one who was having problems. I just did a
in a different TTY to fix it, but of course that means I have no splash. I'm still looking into it.
The boatcake is coming for you…
#3 2012-12-18 16:44:57
Re: plymouth-quit-wait.service issue after update
Ah hah! I'm glad I'm not the only one who was having problems. I just did a
in a different TTY to fix it, but of course that means I have no splash. I'm still looking into it.
Thanks It works, now I can at least access my xmonad ![]()
Looking for proper solution.
#4 2012-12-19 15:49:58
Re: plymouth-quit-wait.service issue after update
Just wanted to add a "me too" to this thread. I'm also still looking for a solution, will check back here regularly, but of course, no splash in the meantime (minor annoyance). I ALSO have an issue with what appears to be plymouthd using up plenty of cycles even though it's "failed" 0_o (I'm using kdm/kde4 btw):
#5 2012-12-19 16:14:22
Re: plymouth-quit-wait.service issue after update
Guys, do you have issue with plymouth on reboot? I do.
#6 2012-12-23 20:56:42
Re: plymouth-quit-wait.service issue after update
I had the same problem. In my case it was an issue with Nouveau. I ended up removing Plymouth and switching from Nouveau back to the Nvidia driver (since Plymouth/KMS was my main reason to use Nouveau in the first place). I really appreciate both projects, but they're just a little bit too bleeding-edge for me right now.
#7 2012-12-24 01:29:37
Re: plymouth-quit-wait.service issue after update
Well, that can't be my problem, since I'm on an Intel graphics, and even my optimus card is using the NVIDIA drivers.
The boatcake is coming for you…
#8 2012-12-24 02:25:02
Re: plymouth-quit-wait.service issue after update
Worst since I installed mkinitcpio 0.12.0-2
#9 2012-12-24 07:35:56
Re: plymouth-quit-wait.service issue after update
I'm on bumblebee-nvidia drivers. Maybe mkinitcpio downgrade should help.
#10 2012-12-26 16:24:38
Re: plymouth-quit-wait.service issue after update
I'm using Intel drivers, btw. I'll probably just end up removing plymouth at this point, since it hasn't worked itself out. Not sure if it's related, but I'm ALSO booting from an encrypted root, and so have the part added to allow typing encryption password at boot. In any case, plymouth is doing nothing on my system at the moment other than having a proc running after bootup that is eating CPU cycles for no apparent reason.