Kategorie szkoleń | Egzaminy | Kontakt
  • 1
  • 3
  • 71

Debian jessie, używający systemd.

Spotkałem się ostatnio z kilkoma dziwnymi problemami wynikającymi z użycia wrappera sysv w systemd.

Niektóre skrypty startowe umieszczone w /etc/init.d/ (np openvpn) - pozwalają na użycie dodatkowych parametrów za "akcją". Np /etc/init.d/openvpn restart home.

Jednak użycie takiej komendy powoduje "zwrapowanie" tego na systemctl - co więcej bez dodatkowych parametrów. Powyższe polecenie restart nie, więc całego openvpna. Prawidłowe byłoby zwrapowanie tego na systemctl restart openvpn@home

 

Inny przykład - jessie z zainstalowanym ganeti. Po restarcie crona przez /etc/init.d/cron restart - ganeti się "wyłączyło" - wyłączyły się wszystkie maszyny wirtualne na serwerze. Restart crona przez systemctl - działa prawidłowo.

 

Pytanie brzmi - w jaki sposób można tego typu problemów uniknąć? I jak je diagnozować? Czy istnieje jakiś mechanizm który pozwoli uruchamiać mechanizmy systemd z "potwierdzaniem" operacji? Ew krok po kroku śledzić wykonywane operacje?

 

Andrzej_Dopierała
  • Zapytał
  • @ Andrzej_Dopierała | 15.09.2015
    • lider
    • laureat
    • ekspert
    • 83
    • 65
    • 169
Komentarze (1)
W sumie to częściowo znalazłem źródło drugiego problemu - winny był nie wrapper systemd a sam cron - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=783683. Tym niemniej pytanie aktualne - jak takie rzeczy debuggować by znaleźć przyczynę dziwnego/nieoczekiwanego zachowania się skryptów. Przy SysV było prościej - wystarczyło dodać set -x w skrypcie init i już były znane konkretne wykonywane instrukcje. A przy systemd?
Skomentował : @ Andrzej_Dopierała ,16.09.2015
  • 83
  • 65
  • 169
Zaloguj się aby zadać pytanie
Pokrewne

Odpowiedź (1)

  • 0
  • Odpowiedział
  • @ | 09.11.2015
  • TRENER MODERATOR ALTKOM AKADEMII