From: Alexey Shabalin <a.shabalin@gmail.com> To: ALT Linux Sisyphus discussions <sisyphus@lists.altlinux.org> Subject: Re: [sisyphus] СУПЕРБАГ ?:: LVM + systemd-230-alt1 ; ещё и slapd не стартует Date: Thu, 7 Jul 2016 15:19:38 +0300 Message-ID: <CAEdvWkQcBL0pqNLW_B2=43hMWT5L1EpX3vJfimFhpAkpVjdWFw@mail.gmail.com> (raw) In-Reply-To: <7080599.ZzfDSllV8m@gleb.lls.net.iao.ru> 23 июня 2016 г., 8:50 пользователь Gleb Kulikov <glebus@asd.iao.ru> написал: > Коллеги, добрый день > > Вот даже и не знаю, заводить баг, или это я один такой везучий? > > После обновления на systemd-230-alt1 и 4.4.13-std-def-alt1, система напрочь > потеряла способность подключать при загрузке разделы LVM. > где > /usr, /var, /var/log, /mnt/CONTAINERS и т.п. --- разделы LVM поверх md0: > Загрузиться система не может. > После логина рутом в режиме обслуживания и выдачи руками команды > vgchange -a y > тома нормально активируются, > после exit --- возобновляется нормальный процесс загрузки и система входит в > графику без каких-либо замечаний. Попытаюсь рассказать, что произошло. Забегая вперед, скажу что это были проблемы апстрима lvm2 и сборки (т.е. мои). 1) под systemd на раннем этапе загрузки запускаются генераторы из /lib/systemd/system-generators, для lvm - lvm2-activation-generator. Раньше в этом генераторе был такой код: if (!(lvm = lvm_init(NULL))) { т.е. по сути lvm инициировался из этого генератора. Это маскировало все последующие проблемы. Теперь этот код убрали, и генератор занимается только тем, чем должен - генерацией unit-файлов. 2) генератор создаёт unit-файлы только в случае use_lvmetad = 0, иначе просто завершает работу. (раньше он успевал еще инициировать lvm, но как я описал в п.1, теперь он этого не делает) У нас по-умолчанию use_lvmetad = 1, т.е. должен запуститься сервис lvmetad. 3) в нашем rpm определены _runtimedir как %{_var}/run, соответственно в lvm2-lvmetad.socket попало значение ListenStream=/var/run/lvmetad.socket Дальше получился замкнутый круг - для инициализации lvm нужен lvmetad, для старта lvmetad нужен сокет в /var/run/, а /var находится на lvm, который еще не инициирован. systemd построил зависимости, и понял что сам не может решить эту проблему. Кстати, если выставить use_lvmetad = 0, то должно было бы заработать. В принципе, основное решение, это определение в спеке lvm2 %define _runtimedir /run %define _lockdir /run/lock Теперь lvmetad ничего не мешает запуститься и все работает как ожидается. Выводов можно придумать множество. Один из - скорейшее мигрирование /var/run -> /run -- Alexey Shabalin
prev parent reply other threads:[~2016-07-07 12:19 UTC|newest] Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top 2016-06-23 5:50 Gleb Kulikov 2016-06-24 9:50 ` [sisyphus] " Anton V. Boyarshinov 2016-06-24 11:21 ` Anton V. Boyarshinov 2016-06-24 10:49 ` [sisyphus] СУПЕРБАГ ?:: LVM + systemd-230-alt1 ; " Michael Shigorin 2016-06-30 4:47 ` В.А. Илларионов 2016-07-07 12:19 ` Alexey Shabalin [this message]
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='CAEdvWkQcBL0pqNLW_B2=43hMWT5L1EpX3vJfimFhpAkpVjdWFw@mail.gmail.com' \ --to=a.shabalin@gmail.com \ --cc=shaba@altlinux.ru \ --cc=sisyphus@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
ALT Linux Sisyphus discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/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 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \ sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru public-inbox-index sisyphus Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.sisyphus AGPL code for this site: git clone https://public-inbox.org/public-inbox.git