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
next prev parent 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