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

Ogólne pytania dotyczące systemu
Awatar użytkownika
kitek
Posty: 42
Rejestracja: 24 sierpnia 2015, 19:09

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

Post autor: kitek »

Cześć. Mam krótkie pytanie odnośnie zarządzania procesami itp. w przypadku, kiedy wykorzystywany jest Systemd. Chciałbym zapytać się, czy w takim wypadku w dalszym ciągu mogę korzystać np. z folderu

Kod: Zaznacz cały

/etc/init.d/
żeby poprzez zwykłe utworzenie skryptu oraz wykorzystanie

Kod: Zaznacz cały

update-rc.d(8)
startować usługi, skrypty?

Czy jest to kompletnie niemożliwe, niezalecane i muszę używać poleceń typu:

Kod: Zaznacz cały

systemctl start [nazwa.service]
? Jeżeli drugi wariant jest poprawny, to czy aby utworzyć jakikolwiek skrypt, który będzie wykonywał to, co jest mi potrzebne podczas startu systemu wystarczy utworzyć plik

Kod: Zaznacz cały

*.service
w katalogu

Kod: Zaznacz cały

/etc/systemd/system/
(uzupełnić sekcje [Unit], [Service] itd.), oczywiście nadać prawa uruchamiania oraz wystartować za pomocą:

Kod: Zaznacz cały

[color=green]systemctl enable nazwa.service[/color]
?

Czy jest to odpowiedni sposób, aby startować własne skrypty w dystrybucji, która "przeszła na" Systemd? Przeczytałem już sporo opracowań, poradników odnoszących się do tego nowego menadżera systemu i usług. Szczerze mówiąc jest tego naprawdę sporo. Na tę chwilę, wydaje mi się, że cały ten mechanizm jest skomplikowany, ale jest kilka ciekawych funkcji, które warte są uwagi i pomagają w
hardeningu
systemu. Np.:
ProtectHome=
,
ProtectSystem=
czy
RestrictNamespaces=
.

To dzięki tej funkcji Systemd oraz m.in.
RestrictAddressFamilies=
(umieszczając ją w sekcji [Service] wraz z wartością
~AF_PACKET
) można było uniknąć błędu związanego z bezpieczeństwem (CVE-2016-8655). Ale to nie jest tematem mojego pytania.

A więc, jaka jest odpowiedź na pytanie, które postawiłem na początku? I czy podany sposób tworzenia skryptu w celu uruchamiania go wraz ze startem systemu jest poprawny?

Dziękuję, pozdrawiam.
Moderowano: znaczniki codu, cytowania, kolory czcionek.
Ostatnio zmieniony 10 czerwca 2017, 17:05 przez kitek, łącznie zmieniany 2 razy.
Awatar użytkownika
Yampress
Administrator
Posty: 6365
Rejestracja: 09 sierpnia 2007, 21:41
Lokalizacja: PL

Re: Systemd, System-V oraz korzystanie z mechanizmu /etc/init.d/

Post autor: Yampress »

No jak to byś chciał korzystać z 2 systemow startu równocześnie. Każdy ma swoje narzędzia do zarządzania startującymi demonami

http://without-systemd.org/wiki/index.p ... stallation
Awatar użytkownika
kitek
Posty: 42
Rejestracja: 24 sierpnia 2015, 19:09

Re: Systemd, System-V oraz korzystanie z mechanizmu /etc/init.d/

Post autor: kitek »

Cześć Yampress, czyli nie ma opcji korzystania np. z mechanizmu /etc/init.d/ przy jednoczesnym zastosowaniu, przez dystrybucję, Systemd. Rozumiem. Swoją drogą myślę, że powinien być wybór, powiedzmy, dwóch obrazów .iso - jeden zawierający Systemd a drugi np. System-V itd. Pomijając, oczywiście możliwość "usunięcia" Systemd albo wybrania dystrybucji typu Devuan.

Niemniej, niepokoi mnie ten cały Systemd. Chyba naczytałem się zbyt wielu negatywnych opinii i tekstów mówiących o problemach z ustawieniem choćby działającego, startującego wraz z systemem, zwykłego firewalla. (Przy okazji: czy sposób, który wymieniłem w pierwszym poście jest odpowiedni do tego typu zadań? Mam tu na myśli plik *.service w katalogu /etc/systemd/system/ i tak dalej.) Ale, to już temat z innej beczki.
Awatar użytkownika
saturno
Junior Member
Posty: 741
Rejestracja: 08 lipca 2008, 20:04

Re: Systemd, System-V oraz korzystanie z mechanizmu /etc/init.d/

Post autor: saturno »

kitek pisze: 23 marca 2017, 18:23 Cześć. Mam krótkie pytanie odnośnie zarządzania procesami itp. w przypadku, kiedy wykorzystywany jest Systemd. Chciałbym zapytać się, czy w takim wypadku w dalszym ciągu mogę korzystać np. z folderu /etc/init.d/ żeby poprzez zwykłe utworzenie skryptu oraz wykorzystanie update-rc.d(8) startować usługi, skrypty?
Chyba nie ma żadnych przeciwwskazań, bo sam jeszcze niedawno na Jessie miałem w: /etc/init.d/ skrypt od zram.
Inna rzecz że do startowania / zatrzymywania usług od dość dawna już używa się: insserv (man insserv).
Szczegóły masz: https://dug.net.pl/tekst/157/jak_umiesc ... startowych__/
Awatar użytkownika
kitek
Posty: 42
Rejestracja: 24 sierpnia 2015, 19:09

Re: Systemd, System-V oraz korzystanie z mechanizmu /etc/init.d/

Post autor: kitek »

Witam. Saturno wydaje mi się, że masz rację. W końcu Systemd jest kompatybilny z System-V. Mam nadzieję, że w dalszym ciągu będzie można korzystać z katalogu

Kod: Zaznacz cały

/etc/init.d/
-- jest to tak prosty mechanizm, że prościej już chyba nie można. Dziękuję Ci za info dotyczące Jessie'go. O insserv oczywiście wiem i pamiętam.

Jeszcze, tylko odpowiedź na pytanie odnoszące się do pliku

Kod: Zaznacz cały

*.service
oraz katalogu

Kod: Zaznacz cały

/etc/systemd/system/
Moderowano: Znaczniki kodu, kolor czcionki
Awatar użytkownika
sinplez1y1
Posty: 97
Rejestracja: 13 stycznia 2017, 23:25

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

Post autor: sinplez1y1 »

Niemniej, niepokoi mnie ten cały Systemd. Chyba naczytałem się zbyt wielu negatywnych opinii i tekstów mówiących o problemach z ustawieniem choćby działającego, startującego wraz z systemem, zwykłego firewalla
bez przesady, też podchodziłem sceptycznie do systemd na poczatku ale szczerze po ogarnięciu jest o wiele wygodniejszy (na serwezrze) i szybszy (na desktopie) niż sysv czy openrc. To są już wiekowe rozwiązania, które nijak się sprawdzają w dzisiejszych czasach.
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ść Sinplez1y1. Być może masz rację pisząc, że Systemd jest; "
o wiele wygodniejszy (na serwezrze) i szybszy (na desktopie) (...)
, ale przecież pozostałe, wspomniane przez Ciebie mechanizmy także nie są skomplikowane etc. Przynajmniej dla mnie :- ) Mam nadzieję, że nie będzie aż tak źle.

Skoro już ogarnąłeś Systemd, to mógłbyś odpowiedzieć na moje pytanie, które zadałem w pierwszym poście? Czy wystarczy utworzyć plik

Kod: Zaznacz cały

*.service
w katalogu

Kod: Zaznacz cały

/etc/systemd/system/
(uzupełnić oczywiście sekcje [Unit], [Service] itd.), nadać prawa uruchamiania oraz włączyć za pomocą polecenia:

Kod: Zaznacz cały

systemctl enable nazwa.service
, aby skrypt startował wraz z systemem?

Dzięki, pozdrawiam.

Moderowano: Usunięto kolory czcionek i zastosowano znaczniki kodu i cytowania. Kolor zielony jest zarezerwowany dla moderatorów. Proszę stosować inne kolory tylko w uzasadnionych przypadkach. Tu takiego uzasadnienia nie widzę. W tym przypadku wystarczy pogrubienie czcionki.
Awatar użytkownika
sinplez1y1
Posty: 97
Rejestracja: 13 stycznia 2017, 23:25

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

Post autor: sinplez1y1 »

Skoro już ogarnąłeś Systemd, to mógłbyś odpowiedzieć na moje pytanie, które zadałem w pierwszym poście? Czy wystarczy utworzyć plik
o ile masz dobrze złożony serwis to tak

na początek:
https://www.dobreprogramy.pl/mariushko/ ... 67627.html
https://www.dobreprogramy.pl/mariushko/ ... 67878.html

wiki:
https://wiki.archlinux.org/index.php/systemd
https://wiki.gentoo.org/wiki/Systemd
https://wiki.debian.org/systemd

dokumentacja korporacyjna
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ść. Trochę po czasie, ale... wygląda na to, że nie jest możliwe korzystanie z katalogu /etc/init.d/ razem z menedżerem systemd, ponieważ wpisanie, przykładowo, "/etc/init.d/foobar start" w celu uruchomienia usługi, nie będzie działać - skrypt nie będzie dostępny.

Niemniej, uruchamianie usługi poprzez "/sbin/service" działa zarówno na systemach z SysV oraz systemd. Dlatego bardziej poprawne, wydaje się korzystanie z polecenia "/sbin/service foobar start" itd.
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 »

no ale to jest normalne odplanie programu w konsoli, nie poprzez sysnity tylko z palca.
zawsze taką linijkę możesz dodać do /etc/rc.local i się automatycznie uruchomi spod aktualnie używanego sysinita.
Zablokowany