Dlaczego trzymam się dystrybucji Linuksa opartych na systemd

Dlaczego trzymam się dystrybucji Linuksa opartych na systemd

Artykuł przedstawia zalety korzystania z systemd w dystrybucjach Linuksa, omawia jego znaczenie, porównuje z SysVInit i analizuje wpływ na nowoczesne systemy operacyjne.

Minęło ponad 10 lat od wprowadzenia systemd, a wciąż potrafi on zdenerwować niektórych użytkowników Linuksa. Ja nie jestem jednym z nich. Choć wypróbowuję dystrybucje bez systemd, nadal regularnie korzystam z dystrybucji opartych na systemd. Oto kilka powodów dlaczego.

SysVInit musiał odejść

Ze starego do nowego

Gdy systemd pojawił się na początku 2010 roku, wielu użytkowników Linuksa zastanawiało się, dlaczego potrzebna była tak duża zmiana w systemie init, który był używany w Linuksie.

Stary system, System V Init, czyli SysVInit, miał swoje korzenie w latach 80-tych. W tamtych czasach systemy Unix były używane w inny sposób niż nowoczesne maszyny. Unix wykorzystywano głównie w dużych minikomputerach i wydajnych stacjach roboczych. SysVInit uruchamia usługi sekwencyjnie, co może wydłużać czasy uruchamiania. Laptopy były rzadkością w tej erze. USB nie istniał, a peryferia ogólnie były podłączane i odłączane między rozruchami. Konfiguracja systemu zazwyczaj nie zmieniała się w trakcie jego działania. Gdy system był uruchomiony, zazwyczaj pozostawał w takim stanie przez długi czas, więc czasy uruchamiania nie były problemem. Zmiany sprzętowe w systemach współdzielonych zdarzały się rzadko i były bardziej doświadczeniem "raz i koniec".

Tradycyjnie, jeśli dodałeś nowy sprzęt, nawet coś takiego jak zewnętrzny dysk twardy, musiałeś wyłączyć i uruchomić ponownie system. SysVInit był również zawiły, z skryptami powłoki odpowiadającymi "poziomom uruchamiania". To podejście okazało się niewystarczające, gdy Linux stał się bardziej popularny. W nowoczesnych maszynach możesz podłączyć dysk USB lub przełączać się między sieciami Wi-Fi a przewodowymi na laptopie. systemd może natychmiast reaktywować takie "gorąco podłączane" urządzenia.

To dowód na siłę koncepcji systemów operacyjnych podobnych do Unix, że główne komponenty mogą być wymieniane w razie potrzeby.

systemd zostaje z nami

Lepszy system init zostanie stworzony prędzej czy później, ale nie w najbliższym czasie

Podczas gdy systemd dopiero się pojawiał, toczyła się intensywna debata i rywalizacja na temat tego, co by go zastąpiło. Dyskusja stała się tak napięta, że kilku deweloperów dystrybucji Linuksa zrezygnowało z powodu nieustającego strumienia obelg ze strony użytkowników Linuksa.

Na dobre i na złe korzystanie z mainstreamowej dystrybucji Linuksa oznacza korzystanie z systemd. Dokumentacja będzie o tym wspominać, a jeśli poprosisz o pomoc, jeśli napotkasz problem, prawdopodobnie będzie on związany z użyciem narzędzia systemctl.

Ponieważ systemd jest tak integralny dla sposobu działania nowoczesnych dystrybucji Linuksa, większość głównych dystrybucji nie jest skłonna go zastąpić, jeśli nie mają ku temu dobrego powodu.

To nie byłoby dalekosiężnym scenariuszem. Jeśli korzystałeś z Linuksa w latach 2000, mogłeś myśleć, że system SysVInit będzie trwał wiecznie. Jeśli ci się nie podobał, mogłeś wybrać jedną z BSD.

Może ktoś stworzy inny system init, który deweloperzy Linuksa uznają za lepszy. Moim zdaniem będzie to coś, co deweloperzy BSD wymyślą, aby zastąpić własny starzejący się system init. Wyobrażam sobie, że skończymy z czymś podobnym do launchd w macOS, który również wpłynął na systemd.

Dla wielu deweloperów dystrybucji Linuksa, systemd wydaje się być przynajmniej "wystarczającą" opcją. W wielu dziedzinach inżynierii, w tym inżynierii oprogramowania, musisz dokonywać kompromisów, projektując rzeczy dla rzeczywistego świata, zamiast próbować zbudować absolutnie najlepsze rozwiązanie.

systemd działa dla mnie

Jest niezawodny i intuicyjny

Jednym z powodów, dla których będę korzystać z dystrybucji opartych na systemd, jest to, że nigdy nie miałem z nim problemu. Reakcja "działa dla mnie" może być irytująca w odpowiedzi na problemy z Linuksem, ale nie mam żadnych zastrzeżeń do własnego użytkowania.

Preferuję systemd nad starą metodą. Nigdy nie czułem się całkowicie komfortowo z SysVInit, z jego koniecznością zarządzania skryptami powłoki i poziomami uruchamiania. Drżałem za każdym razem, gdy widziałem dokumentację na temat włączania i wyłączania usług, nawet jeśli rzadko to robiłem na systemach desktopowych, ponieważ większość z nich była skonfigurowana z tym, co potrzebowały do natychmiastowego uruchomienia.

Kiedy muszę włączyć, wyłączyć, uruchomić lub zatrzymać usługi, po prostu uruchamiam szybkie polecenie systemctl. To wszystko, co potrzeba.

Jako użytkownik, który tylko czasami uruchamia i zatrzymuje usługi, mimo rzekomego nadmiaru systemd, uważam polecenie systemctl za łatwe do zrozumienia.

Niedawno zainstalowałem Arch w maszynie wirtualnej. Musiałem włączyć kilka usług, ponieważ Arch jest bardziej "hands-on" niż inne dystrybucje Linuksa. Wszystko, co było potrzebne, to kilka poleceń systemctl.

Jeśli systemd jest dobry dla Arch Linux

Potwierdzenie błędów? Nie obchodzi mnie to

Jedną z rzeczy, która ostatecznie przekonała mnie do systemd, jest to, że Arch Linux przeszedł na to rozwiązanie. Arch ma już reputację platformy nastawionej na zaawansowanych użytkowników Linuksa, dając im większą kontrolę nad konfiguracją systemu. Można wybrać narzędzie do partycjonowania oraz loader rozruchowy, a także środowisko graficzne lub nawet zrezygnować z jego instalacji.

Kiedy znalazłem stary post na forum od jednego z deweloperów z 2012 roku, połączony z Arch Wiki, dokładnie przeanalizowałem przedstawiony przez niego przypadek. Deweloper wskazał na możliwość monitorowania wszystkiego, co dzieje się w systemie, możliwość wykrywania urządzeń hotplugged, modułowość systemd, funkcje związane z bezpieczeństwem oraz piaskownicą, a także na wieloplatformowy rozwój projektu systemd.

Według Arch Wiki, jednym z przewodnich zasad distro jest "pragmatyzm":

Arch to dystrybucja pragmatyczna, a nie ideologiczna. Zasady te są tylko przydatnymi wskazówkami. Ostatecznie decyzje projektowe podejmowane są na podstawie konsensusu deweloperów w danym przypadku. Analiza i debata techniczna oparte na dowodach mają znaczenie, a nie polityka czy opinia publiczna.

Arch Linux zawsze wydawał mi się "Unixowym" systemem operacyjnym z naciskiem na tekstową konfigurację oraz dużą kontrolę, jaką daje użytkownikom. Jeśli deweloperzy Arch mogli dostrzec zalety systemd, pomimo jego rzekomego "bloatu", uznałem, że systemd zasługuje na poważniejsze zbadanie. Jakiekolwiek wątpliwości wobec systemd zniknęły. Może to wyglądać jak argument z autorytetem, ale zespół deweloperów Arch zdobył moje zaufanie dzięki swoim wynikom.

Zarządzanie procesami to niewielka część mojego użytkowania Linuksa

Nie muszę zbytnio ingerować

System init może być ważną częścią Linuksa, ale dla mnie jest on głównie w tle. Rzadko bezpośrednio z nim interakcjonuję poza poleceniem systemctl.

Chociaż uruchamianie programów przez cały dzień i ich zamykanie można uznać za zarządzanie procesami, myślę, że mogę policzyć na jednej ręce, ile razy bezpośrednio współdziałałem z systemd w celu zarządzania procesami za pomocą systemctl. W dystrybucji desktopowej pewnie byłoby to raz lub dwa.

Od czasu do czasu sprawdzam logi, jak każdy użytkownik powinien. Zdarzały się kontrowersje związane z binarnymi logami systemd, jednak polecenie journalctl jest łatwe w użyciu. Wiele logów na Ubuntu wydaje się być odzwierciedlonych w katalogu /var/log, więc mogę je przeglądać za pomocą zwykłego edytora tekstu.

Dystrybucje bez systemd nie robią na mnie wielkiego wrażenia

I próbowałem wielu dystrybucji

Fakt, że systemd działa w tle, to jeden z powodów, dla których dystrybucje promujące się jako wolne od systemd nie robią na mnie wielkiego wrażenia. Ostatnio badałem kilka, takich jak EXE GNU/Linux i Obarun. Twórcy dystrybucji mają prawo wprowadzać do swoich systemów, co tylko zechcą.

Kiedy oceniam dystrybucje dla HTG, staram się przyjąć perspektywę zwykłego użytkownika, a nie jakiegoś hakera Linuxa z silnymi opiniami na temat systemd. Doświadczenie użytkownika ma większe znaczenie niż to, co kryje się pod maską.

Dystrybucja musi się rozwijać lub upadać na podstawie wszystkiego, co ma do zaoferowania. Niektóre dystrybucje zapewniają unikalne doświadczenie, takie jak retro designy EXE GNU/Linux.

Czasami zmiana jest dobra

Chociaż oryginalny system init System V działał dobrze przez wiele lat, zmiany w świecie komputerów ostatecznie uczyniły go nieaktualnym w coraz bardziej mobilnym i online'owym świecie.

Mogą pojawić się pewne obawy związane z rozmiarem systemd czy rzekomą dominacją rozwoju Linuksa przez Red Hat i jego firmę macierzystą, IBM.

Świat się zmienia, sprzęt komputerowy się zmienia, a oprogramowanie systemowe ewoluuje razem z nim. Systemy operacyjne muszą służyć użytkownikom i uruchamiać ich programy. Muszą ewoluować w zgodzie z tym, co ich użytkownicy robią z nimi. Nie mogą być to eksponaty muzealne.

Jeśli ciekawią Cię artykuły podobne do Dlaczego trzymam się dystrybucji Linuksa opartych na systemd, zajrzyj do kategorii Linux i odkryj jeszcze więcej interesujących treści.

Indeks
  1. SysVInit musiał odejść
    1. Ze starego do nowego
  2. systemd zostaje z nami
    1. Lepszy system init zostanie stworzony prędzej czy później, ale nie w najbliższym czasie
  3. systemd działa dla mnie
    1. Jest niezawodny i intuicyjny
  4. Jeśli systemd jest dobry dla Arch Linux
    1. Potwierdzenie błędów? Nie obchodzi mnie to
  5. Zarządzanie procesami to niewielka część mojego użytkowania Linuksa
    1. Nie muszę zbytnio ingerować
  6. Dystrybucje bez systemd nie robią na mnie wielkiego wrażenia
    1. I próbowałem wielu dystrybucji
    2. Czasami zmiana jest dobra

Możesz być zainteresowany

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Wymagane pola są oznaczone *

Go up