Make-initrd development discussion
 help / color / mirror / Atom feed
From: Alexey Gladkov <gladkov.alexey@gmail.com>
To: make-initrd@lists.altlinux.org
Subject: Re: [make-initrd] Не запускать сервис, если запущен другой сервис
Date: Tue, 2 May 2023 18:35:35 +0200
Message-ID: <ZFE718Aw2E06TuTm@example.org> (raw)
In-Reply-To: <b3b54abc-ad26-bc47-515e-cf0d993a5145@basealt.ru>

On Tue, May 02, 2023 at 10:12:46PM +0700, Антон Мидюков wrote:
> 02.05.2023 20:46, Alexey Gladkov пишет:
> > On Tue, May 02, 2023 at 08:07:30PM +0700, Антон Мидюков wrote:
> >> 02.05.2023 19:57, Alexey Gladkov пишет:
> >>> On Tue, May 02, 2023 at 07:46:34PM +0700, Антон Мидюков wrote:
> >>>> 02.05.2023 19:03, Alexey Gladkov пишет:
> >>>>> On Tue, May 02, 2023 at 06:39:47PM +0700, Антон Мидюков wrote:
> >>>>>> 02.05.2023 18:36, Alexey Gladkov пишет:
> >>>>>>> On Tue, May 02, 2023 at 06:20:27PM +0700, Антон Мидюков wrote:
> >>>>>>>> 02.05.2023 18:17, Alexey Gladkov пишет:
> >>>>>>>>> On Tue, May 02, 2023 at 06:08:56PM +0700, Антон Мидюков wrote:
> >>>>>>>>>> Здравствуйте
> >>>>>>>>>>
> >>>>>>>>>> А есть ли какая-то возможность указать в заголовке init-скрипта initrd, чтобы если он запускается, то другой init-скрипт не стартует?
> >>>>>>>>>
> >>>>>>>>> Таких зависимостей среди сервисов нет.
> >>>>>>>>>
> >>>>>>>>>> Или как-то иначе решить такую задачу?
> >>>>>>>>>> Конкретика:
> >>>>>>>>>> Нужно, чтобы plymouth не запускался, если будет запускаться bootchain. А уже сам bootchain бы запускал plymouth.
> >>>>>>>>>> Другой вариант: не запускать plymouth, пока bootchain не завершит работу.
> >>>>>>>>>> Причина в том, что plymouth занимает консоль и не даёт bootchain ничего в ней нарисовать.
> >>>>>>>>>> Сейчас bootchain запускается на tty2, и проблемы поэтому нет. Но, если запускать с параметром cmdline console=tty1, при запущенном plymouth bootchain вечно ждёт доступ к tty1.
> >>>>>>>>>
> >>>>>>>>> bootchain может перед началом работы выполнить: plymouth --hide-splash .
> >>>>>>>>>
> >>>>>>>>> Почему такой вариант не подходит ?
> >>>>>>>>>
> >>>>>>>>
> >>>>>>>> plymouth при скрытии splash выводит тему details, т.е. сообщения идут через него. И вот через details bootchain почему-то не работает.
> >>>>>>>> Помогает только nosplash, т.е. отключение запуска plymouth.
> >>>>>>>
> >>>>>>> Я очень плохо знаю опции этой утилиты. Я имел в виду опцию, которая его
> >>>>>>> останавливает. Наверное это quit.
> >>>>>>>
> >>>>>>
> >>>>>> Да. Если полностью остановить, то работать будет. Просто это же моргание будет дополнительное. Было бы лучше не запускать. 
> >>>>>
> >>>>> Если plymouth не должен запускаться совсем, то правильнее прописать его
> >>>>> отключения ещё при сборке. В config.mk прописать:
> >>>>>
> >>>>> $(call feature-disables,plymouth)
> >>>>>
> >>>>> В самом initramfs отключение можно сделать только через костыли.
> >>>>>
> >>>>
> >>>> Да, это то, что нужно. Спасибо!
> >>>> А запускать plymouth нужно на другом tty, например на tty5, как делает это propagator  с опцией --tty=/dev/tty5
> >>>>
> >>>> Но тогда может можно просто настроить запуск на tty5 при make-initrd? Или нельзя?
> >>>
> >>> Я не очень понял идею. Вы хотите из фичи bootchain настраивать на каком
> >>> tty будет запущен plymouth ?
> >>>
> >>
> >> Да.
> > 
> > Такое технически возможно. Можно сделать так чтобы tty был настраиваемым
> > на стадии сборки образа.
> > 
> >> Но можно пойти более простым путём, не менять tty для bootchain с tty2 на другой, если указана не serial console.
> >> Там ошибка сейчас, получается.
> > 
> > Этого я не понял. Объясните пожалуйста.
> > 
> 
> У bootchain в конфиге выставляется tty, на котором он будет запускаться
> (tty2). Но его можно переопределить, задав console=<такой-то> при
> загрузке (переменная CONSOLE в initrd).  Для решения проблемы
> достаточно, чтобы переопределение срабатывало только тогда, когда
> console=ttyS<такой-то>, т.е. serial console (и netconsole ещё).

То есть это исправление на стороне bootchain. Правильно я понял ?

> Задачку решаю такую:
> Есть компьютер с u-boot или edk2, у которого при загрузке ядра вывод
> уходит на UART. А пользователь под рукой usb-UART не имеет, да и
> пользоваться им уметь не обязан.  Чтобы вывод шёл на HDMI нужно
> прописать console=tty1. Но в этом случае bootchain не может поделить
> tty1 с plymouth, придётся отключать plymouth.  Если bootchain останется
> на tty2, несмотря на console=tty1, то проблема будет решена.

-- 
Rgrds, legion



  reply	other threads:[~2023-05-02 16:35 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-02 11:08 Антон Мидюков
2023-05-02 11:17 ` Alexey Gladkov
2023-05-02 11:20   ` Антон Мидюков
2023-05-02 11:36     ` Alexey Gladkov
2023-05-02 11:39       ` Антон Мидюков
2023-05-02 12:03         ` Alexey Gladkov
2023-05-02 12:46           ` Антон Мидюков
2023-05-02 12:57             ` Alexey Gladkov
2023-05-02 13:07               ` Антон Мидюков
2023-05-02 13:46                 ` Alexey Gladkov
2023-05-02 15:12                   ` Антон Мидюков
2023-05-02 16:35                     ` Alexey Gladkov [this message]
2023-05-02 16:36                       ` Антон Мидюков
2023-05-02 15:50           ` Leonid Krivoshein
2023-05-02 16:09             ` Антон Мидюков
2023-05-02 17:32               ` Leonid Krivoshein
2023-05-02 18:14                 ` Alexey Gladkov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZFE718Aw2E06TuTm@example.org \
    --to=gladkov.alexey@gmail.com \
    --cc=make-initrd@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Make-initrd development discussion

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/make-initrd/0 make-initrd/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 make-initrd make-initrd/ http://lore.altlinux.org/make-initrd \
		make-initrd@lists.altlinux.org make-initrd@lists.altlinux.ru make-initrd@lists.altlinux.com
	public-inbox-index make-initrd

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.make-initrd


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git