[+] Systemd, System-V oraz korzystanie z katalogu /etc/init.d/

Ogólne pytania dotyczące systemu
Awatar użytkownika
marcin1982
Moderator
Posty: 1730
Rejestracja: 05 maja 2011, 12:59
Lokalizacja: Zagłębie Dąbrowskie

Re: [+] Systemd, System-V oraz korzystanie z katalogu /etc/init.d/

Post autor: marcin1982 »

kitek

No dobrze ... ale czy próbowałeś uruchamiać jakąś konkretną usługę? Może skrypt jest niepoprawnie napisany. W czym jest problem?

Sprawdź np. zawartość pakietu gpm. Nie ma tam usługi gpm.service, a usługa działa. Dba o to program systemd-sysv-generator.
Awatar użytkownika
kitek
Posty: 42
Rejestracja: 24 sierpnia 2015, 19:09

Re: [+] Systemd, System-V oraz korzystanie z katalogu /etc/init.d/

Post autor: kitek »

Cześć marcin1982. Tak, próbowałem uruchamiać przykładową usługę. Robiłem to w ten sposób, że po utworzeniu pliku /etc/systemd/system/usługa.service, dodaniu odpowiednich opcji, korzystałem z poleceń; systemctl start/enable/status usługa.service. Według ostatniej opcji - status - wszystko było w porządku.

Szczerze mówiąc, nie wiedziałem o systemd-sysv-generator(8). Wygląda na to, że ten generator wykorzystuje katalog /etc/init.d/. Interpretowane są także tzw. LSB headers. Muszę się bliżej temu przyjrzeć. Dziękuję Ci za zwrócenie uwagi.

Pozdrawiam i przepraszam za długi okres bez odpowiedzi.
Awatar użytkownika
Yampress
Administrator
Posty: 6365
Rejestracja: 09 sierpnia 2007, 21:41
Lokalizacja: PL

Re: [+] Systemd, System-V oraz korzystanie z katalogu /etc/init.d/

Post autor: Yampress »

systemd to system pałen tajemnic.
I z tego powodu , że trzeba się mnóstwo rzyczy nauczyć, rozwiązanie jest skmplikowane
oraz z powodu kontroli nad coraz to większą ilością usług
jest mechanizmam do którego wielu opdchodzi z niechęcią.
Awatar użytkownika
Morfik
Beginner
Posty: 149
Rejestracja: 21 lutego 2009, 21:00

Re: [+] Systemd, System-V oraz korzystanie z katalogu /etc/init.d/

Post autor: Morfik »

Systemd ma kilka generatorów (do wglądu w /lib/systemd/system-generators/ ), z których jeden obrabia skrypty w /etc/init.d/ . Wszystko po to by użytkowników starych rozwiązań przepiąć bez męczenia ich na nowy standard. :D W skrócie, ktoś w dalszym ciągu może sobie korzystać ze skryptów init i jednocześnie może wykorzystywać systemd, a on przy pomocy generatorów wygeneruje stosowną usługę w locie i upchnie ją pod /run/systemd/generator* . Niemniej jednak, tak generowane usługi działają w 99% przypadków i prędzej czy później trafi się usługa, która źle zostanie przetłumaczona z automatu. Tak było w przypadku moich zaszyfrowanych kontenerów LUKS i trzeba było dla nich napisać natywne usługi pod systemd, by wszystko trybiło. Tak czy inaczej, wszystkie skrypty, które nie mają odpowiadających usług w systemd i są włączone, będą wykonywane przez systemd z automatu podczas startu systemu w oparciu o nagłówki LSB umieszczone w samych skryptach. Lepiej jednak nie polegać na takim rozwiązaniu ze względu na niedokładność generatora (ew. samego nagłówka), przez co czasem system podczas startu może się zapętlić i nie odpalić albo będzie miał jakieś poważne defekty (część usług nie wystartuje przez zależności) -- "rzadko, bo rzadko ale zawsze" :D. W zasadzie to jak już ktoś się upiera przy skryptach init, to taki skrypt lepiej już wrzucić w plik usługi systemd w /etc/systemd/system/ , czyli to co robi generator ale za to ma się większą możliwość konfiguracji co do tego kiedy ten skrypt init się uruchomi (można sobie skopiować usługę wygenerowaną przez generator i dostosować).
Zablokowany