----------------------------------------------------------------------------------
@MSGID: <HdSRr-8VaY-1@gated-at.bofh.it> e2d97426
@REPLY: <HdRsl-8Utl-1@gated-at.bofh.it> c1898f8d
@REPLYADDR Andrey Jr. Melnikov
<temnota.am@gmail.com>
@REPLYTO 2:5075/128 Andrey Jr. Melnikov
@CHRS: CP866 2
@RFC: 1 0
@RFC-Message-ID: <HdSRr-8VaY-1@gated-at.bofh.it>
@RFC-References: <HdQZj-8U4w-5@gated-at.bofh.it>
<HdRsl-8Utl-1@gated-at.bofh.it>
@TZUTC: 0200
@PID: tin/2.6.3-20230803 ("Pittyvaich")
(Linux/6.4.0-3-armmp (armv7l))
@TID: FIDOGATE-5.12-ge4e8b94
Eugene Berdnikov <
bd4@protva.ru> wrote:
> On Thu, Sep 14, 2023 at 12:21:03PM +0300, Andrey Jr. Melnikov wrote:
> > А у тебя случаем контейнеров на машинке не крутится? А то смотри,
> > start-stop-daemon у нас тупенький, он про отдельные неймспесы ничего не
> > знает. Поэтому, когда у тебя запущенно несколько экземпляров чего либо в
> > различных контейнерах - start-stop-daemon на host-машине ведет себя весма
> > оригинально - то сигнал не в тот процесс пришлёт, то узрит живущий демон в
> > контенйнере и откажется запускать его-же на хосте. Из-за этого, приходтся
> > весь пакадж с dpkg пересобирать. Хотя, надо наверное сделать отдельный и
> > через dpkg-divert подсовывать нужный start-stop-daemon.
> У меня везде, где есть контейнеры, стоит система инициализации systemd.
> Потому что lxc, например, под SysV-init не жилец (да, я знаю, что можно
> запускать контейнеры lxc под sysv, но это будет не работа, а бесконечный
> бег по граблям).
У меня везде стоит SysV-init где контейнеры. И ничего - граблей не наблюдаю.
И даже контейненры с systemd внутри - тоже работают, хотя раньше это изделие
не могло там стартануть нормально.
> Но я писал про сислоги в контексте физических машин и контейнеров
> без вложенности, где start-stop-daemon ошибиться не может.
Вопрос не во вложенности, а имеено в том, что на физическом хосте
start-stop-daemon путается в запущенном. Следи за руками:
~# ps ax | grep cron
1722 ? Ss 0:00 /usr/sbin/cron -f
23546 ? Ss 0:00 /usr/sbin/cron
23772 pts/0 S+ 0:00 grep cron
~# start-stop-daemon --status --exec /usr/sbin/cron ; echo $?
0
~# /etc/init.d/cron stop
Stopping cron (via systemctl): cron.service.
~# ps ax | grep cron
23546 ? Ss 0:00 /usr/sbin/cron
23798 pts/0 S+ 0:00 grep cron
~# start-stop-daemon --status --exec /usr/sbin/cron ; echo $?
0
Видишь, на хосте cron не работает, в контейнере - работет, но по мнению
start-stop-daemon - он работает на хосте.
Остановим контейнер:
~# lxc-stop test
~# ps ax | grep cron
24127 pts/0 S+ 0:00 grep cron
~# start-stop-daemon --status --exec /usr/sbin/cron ; echo $?
3
О. Теперь мы заметили, что "program is not running". Вот такая чудная
запускалка демонов.
--- tin/2.6.3-20230803 ("Pittyvaich") (Linux/6.4.0-3-armmp (armv7l))
* Origin: linux.* mail to news gateway (2:5075/128)
SEEN-BY: 221/6 301/1 467/888 5001/100 5005/49
5015/255 5019/40 5020/715 848
SEEN-BY: 5020/1042 4441 12000 5030/49 1081 5061/133
5075/37 128 6078/80
@PATH: 5075/128 5020/1042 4441