Blog (1)
Komentarze (365)
Recenzje (0)

Linux the hard way...

@PerceptronLinux the hard way...16.07.2016 07:16

Witam, jako że to mój pierwszy wpis chciałbym dziś pokrótce napisać o systemie rzadko opisywanym dziś w Internecie, o dystrybucji, która nie odnajduje się w dzisiejszych trendach ułatwiania i udomowiania systemów, o najstarszej jeszcze rozwijanej dystrybucji Linux. Szanowni Państwo dnia 17 lipca Slackware Linux kończy 23 lata.

Troszkę historii

Teoretycznie za pierwsze wydanie tego systemu, można by uznać jedną z pierwszych dystrybucji Linuxa w ogóle, a mianowicie SLS powstałą w roku 1992 (korzystającą już z jądra Linux w wersji 0.99.11). Softlanding Linux System, był swego czasu jednym z najpopularniejszych wydań tego systemu. Jednak jego kiepski rozwój, zarządzenie i w końcu brak poprawek, poniekąd sprawiło, że Ian Murdock w 1993 stworzył dystrybucje Debian, pierwowzór m.in Ubuntu.

Inny developer Patrick Volkerding, zamiast tworzyć coś całkiem nowego, postanowił wskrzesić SLS. Uporządkował i poprawił kod dystrybucji, a swój twór nazwał Slackware. Co humorystycznie podkreśla, jej niekomercyjny charakter, nazwa wywodzi się bowiem od terminu "Slack" mającego kilka znaczeń (np. umiejętność osiągnięcia swoich celów bez wysiłku) i wywodzącego się od Kościoła SubGeniuszu.

J. R. (Bob) Dobbs - symbol kościoła
J. R. (Bob) Dobbs - symbol kościoła

trudny Linux?

Gdyby wszystkie dystrybucje Linuxa, posortować, gdzie na pierwszych miejscach byłyby najprostsze dla użytkownika wydania systemu(Mint, Ubuntu, Fedora). To Slackware znajdowałby się na samym końcu, ex aequo z Gentoo (choć może to być kwestia dyskusyjna), a przed chyba tylko LFS.

Tak, przy obcowaniu z tym systemem można zapomnieć o dodatkowej automatyce, ułatwieniach i kreatorach graficznych(pomijając samą konfiguracje środowiska graficznego).

Po uruchomieniu płyty instalacyjnej, nie ujrzymy nawet klasycznego instalatora. Powita nas konsola z zapytaniem o wybór startowego kernela, po czym za pomocą konsolowych narzędzi musimy sobie przygotować m.in partycje pod system(można to oczywiście zrobić wcześniej innym narzędziem). Po tych przygotowaniach, możemy wpisać w konsoli "setup" po czym ujrzymy, coś co w końcu wygląda na instalator, a jest raczej zbiorem skryptów z ładnym interfejsem ncurses. .. W nim dokonujemy prostych ustawień jak punkty montowania partycji, layout klawiatury, czy oprogramowanie do zainstalowania.

[1/2] Główny ekran instalatora
[2/2] Sposoby wyboru oprogramowania

Po instalacji wystarczy już tylko ręcznie stworzyć dla siebie zwykłego użytkownika, dodać go do odpowiednich grup systemowych, edytować konfiguracje Init (tak w Slackware systemd nie zawitał i najpewniej nigdy tego nie zrobi), by system uruchamiał się domyślnie ze środowiskiem graficznym. I można powiedzieć, że to kon... dobry punkt startowy do dalszej konfiguracji ;)

Pulpit KDE po instalacji
Pulpit KDE po instalacji

KISS w praktyce

Nasuwa się oczywiste pytanie, po co tak się męczyć. Takie Ubuntu ma prosty instalator i większość aspektów systemu konfiguruje automatycznie. Do tego do zainstalowania dodatkowych aplikacji wystarczy kilka kliknięć.

Keep It Simple, Stupid

Otóż Slackware ma skrajnie inne podejście, stawia na prostotę, ale nie stricte użytkowania systemu, a swojej budowy i designu. Jest to obecnie najbardziej Unixowy z Linuxów, jako jedyny z rodziny tych systemów respektuje większość tzw. "Unix rules". Mówiących, na przykład, by każde narzędzie służyło tylko w jednym celu i wykonywało go dobrze, spełniając kilka dodatkowych zasad jak np. obsługa standardowego wejścia-wyjścia. Umożliwia to, by za pomocą kilku połączonych np. potokiem programów wykonać pozornie skomplikowaną czynność, która w innym wypadku wymagałaby, oddzielnej aplikacji. A wielkim, pełnym błędów "kombajnom" do wszystkiego/niczego, mówimy nie.

Sam system jest jednocześnie kompletny i nie przeładowany. Posiada domyślnie wszystkie podstawowe i niezbędne aplikacje. Twórcy szybko wydają niezbędne poprawki bezpieczeństwa, a dostarczone aplikacje są dobrze przetestowane.

Dependency hell?

Pierwszą kwestią na ustach ludzi stykający się ze Slackware jest menadżer pakietów. A konkretniej jego okrojenie o śledzenie zależności i bogatsze repozytoria z oprogramowaniem. Przekłada się to na fakt, że większość oprogramowania(typowo desktopowego trzeba dodać) nie jest dostępne jako gotowy pakiet do zainstalowania na Slackware. Powodem takiego podejścia, jest typowa dla środowiska Open-source zasada, by zostawić użytkownikom możliwości wyboru tego, co w danej paczce ma się znajdować w jakiej wersji ma być i jak dany program ma być skonfigurowany. W Slackware jest to domyślne podejście do instalacji zewnętrznego oprogramowania.

Brak automatycznego rozwiązywania zależności, wymusza na administratorze systemu większą kontrolę nad zainstalowanymi paczkami, co powinno przekładać się na większy porządek w systemie i brak problemu tzw. "piekła zależności". W praktyce wiele zależy od potrzeb i umiejętności admina.

Jak zatem zainstalować zewnętrzną aplikacje? Prostota w praktyce ;) :

  1. Należy, pobrać kod źródłowy danego oprogramowania, zapoznać się z jego dokumentacją i z opcjami kompilacji. Opcjonalnie można jeszcze zapoznać się z kodem samej aplikacji.
  2. Stworzyć lub pobrać(istnieje baza stworzonych przez społeczność) skrypt tzw. SlackBuild, którego zadaniem będzie stworzenie dla nas gotowego do zainstalowania pakietu.
  3. Uruchomić skrypt, odczekać kilka sekund/minut/godzin, gdy ten rozpakuje, skonfiguruje, skompiluje, a na koniec spakuje gotowe oprogramowanie do postaci paczki
  4. Wynikową paczkę instalujemy już jednym poleceniem jak w innych dystrybucjach i cieszymy się z nowej aplikacji.

To oczywiście schemat postępowania przy założeniu, że dane oprogramowanie kompiluje się bez błędów i nie wymaga innych, zależności, ale o te świadomie dbamy sami.

Gdzie tu prostota? ano owe skrypty to zasadniczo zwykły zbiór poleceń shella do otworzenia w każdym edytorze. W razie konieczności zmiany ficzerów oprogramowania lub chęci upgrade-u wersji, wystarczy gotowy skrypt edytować, uruchomić ponownie, a paczkę zaktualizować. Same paczki to z kolei zwykłe skompresowane archiwa tar, które podczas instalacji wypakowywane są względem katalogu głównego systemu '/'. Wyróżniają je jedynie opcjonalny opis paczki w pliku tekstowym i skrypty po-instalacyjne.

Alternatywnie możemy pobrać gotową paczkę z fanowskich repozytoriów lub skonwertować pakiety .deb lub .rpm. Bez gwarancji pozytywnych efektów oczywiście, bez możliwości dostosowania, w dalszym ciągu bez rozwiązywania zależności i bez ewidentnej frajdy.

Vanilla software

Kolejną cechą charakterystyczną tego systemu, jest brak autorskich poprawek w oprogramowaniu. Dotyczy to w szczególności jądra Linux. Praktycznie każde inne distro dodaje do kernela swoje autorskie patche w celu poprawy wydajności, czy kompatybilności. Slackware korzysta tylko z oficjalnych źródeł z kernel.org.

Reszta oprogramowania również dostarczona jest w formie przewidzianej przez jej twórców tzw. oprogramowanie waniliowe, bez dodatkowych usprawnień i zmian w kodzie. Wyjątkiem są tylko, niekiedy niezbędne patche.

W praktyce oznacza to, że w przypadku, gdy potrzebujemy np. nowszej wersji oprogramowania zainstalowanego w systemie. Możemy jego kod pobrać bezpośrednio od twórcy konkretnego programu i po odpowiedniej kompilacji funkcjonował będzie jak oryginalna systemowa paczka. Dodatkowo dla ułatwienia możemy po prostu edytować i wykorzystać SlackBuild oryginalnej paczki.

Przykładów swoistej prostoty tego systemu jest oczywiście więcej, ale niektóre są już bardziej subtelne albo wynikają z tych już podanych.

Rozwój dystrybucji

Kolejne wersje systemu wydawane są z zasady: kiedy są gotowe, a nie kiedy chce tego społeczność. Więc jeżeli ktoś "lubi" kilkuletni system wydawniczy takiego Debiana to dla przykładu z początkiem lipca br. wyszła nowa stabilna wersja Slackware 14.2 :D z tym, że poprzednia wersja 14.1 ma już prawie 3 lata :(

Po za wydaniami stabilnymi, jest jeszcze gałąź rozwojowa "current" przeznaczona do testowania i otrzymująca względnie najnowsze wersje oprogramowania. Stabilność porównywalna jak w zwykłych wydaniach, ale trzeba być bardziej ostrożnym przy aktualizacjach.

Jak na system otwarto-źródłowy podejście twórców jest więc dosyć konserwatywne, jednak to m.in dzięki temu właśnie system ten dalej ma swoich zwolenników. Nie na darmo opiekun dystrybucji Patrick Volkerding należy do BDFL (Benevolent Dictator For Life), grupy osobistości ze środowiska Open-source do których należy ostatnie słowo w spornych kwestiach dotyczących poszczególnych projektów.

Tux z fajką - maskotka Slackware
Tux z fajką - maskotka Slackware

Podsumowanie

Na koniec chciałbym tylko wyklarować, iż celem tego wpisu nie była, żadna forma przekonywania do Linuxa jako takiego, ani też polecanie, bądź odradzanie tej czy innej dystrybucji. Moim celem było tylko przedstawienie tej już niszowej dystrybucji, oferującej zupełnie inne podejście do tematu korzystania z systemu operacyjnego. Które już co prawda zanikające ma dla niektórych w tym dla mnie, sens i w dzisiejszych czasach.

Dziękuje za wytrwałość i ew. krytykę.

Szanowna Użytkowniczko! Szanowny Użytkowniku!
×
Aby dalej móc dostarczać coraz lepsze materiały redakcyjne i udostępniać coraz lepsze usługi, potrzebujemy zgody na dopasowanie treści marketingowych do Twojego zachowania. Twoje dane są u nas bezpieczne, a zgodę możesz wycofać w każdej chwili na podstronie polityka prywatności.

Kliknij "PRZECHODZĘ DO SERWISU" lub na symbol "X" w górnym rogu tej planszy, jeżeli zgadzasz się na przetwarzanie przez Wirtualną Polskę i naszych Zaufanych Partnerów Twoich danych osobowych, zbieranych w ramach korzystania przez Ciebie z usług, portali i serwisów internetowych Wirtualnej Polski (w tym danych zapisywanych w plikach cookies) w celach marketingowych realizowanych na zlecenie naszych Zaufanych Partnerów. Jeśli nie zgadzasz się na przetwarzanie Twoich danych osobowych skorzystaj z ustawień w polityce prywatności. Zgoda jest dobrowolna i możesz ją w dowolnym momencie wycofać zmieniając ustawienia w polityce prywatności (w której znajdziesz odpowiedzi na wszystkie pytania związane z przetwarzaniem Twoich danych osobowych).

Od 25 maja 2018 roku obowiązuje Rozporządzenie Parlamentu Europejskiego i Rady (UE) 2016/679 (określane jako "RODO"). W związku z tym chcielibyśmy poinformować o przetwarzaniu Twoich danych oraz zasadach, na jakich odbywa się to po dniu 25 maja 2018 roku.

Kto będzie administratorem Twoich danych?

Administratorami Twoich danych będzie Wirtualna Polska Media Spółka Akcyjna z siedzibą w Warszawie, oraz pozostałe spółki z grupy Wirtualna Polska, jak również nasi Zaufani Partnerzy, z którymi stale współpracujemy. Szczegółowe informacje dotyczące administratorów znajdują się w polityce prywatności.

O jakich danych mówimy?

Chodzi o dane osobowe, które są zbierane w ramach korzystania przez Ciebie z naszych usług, portali i serwisów internetowych udostępnianych przez Wirtualną Polskę, w tym zapisywanych w plikach cookies, które są instalowane na naszych stronach przez Wirtualną Polskę oraz naszych Zaufanych Partnerów.

Dlaczego chcemy przetwarzać Twoje dane?

Przetwarzamy je dostarczać coraz lepsze materiały redakcyjne, dopasować ich tematykę do Twoich zainteresowań, tworzyć portale i serwisy internetowe, z których będziesz korzystać z przyjemnością, zapewniać większe bezpieczeństwo usług, udoskonalać nasze usługi i maksymalnie dopasować je do Twoich zainteresowań, pokazywać reklamy dopasowane do Twoich potrzeb. Szczegółowe informacje dotyczące celów przetwarzania Twoich danych znajdują się w polityce prywatności.

Komu możemy przekazać dane?

Twoje dane możemy przekazywać podmiotom przetwarzającym je na nasze zlecenie oraz podmiotom uprawnionym do uzyskania danych na podstawie obowiązującego prawa – oczywiście tylko, gdy wystąpią z żądaniem w oparciu o stosowną podstawę prawną.

Jakie masz prawa w stosunku do Twoich danych?

Masz prawo żądania dostępu, sprostowania, usunięcia lub ograniczenia przetwarzania danych. Możesz wycofać zgodę na przetwarzanie, zgłosić sprzeciw oraz skorzystać z innych praw wymienionych szczegółowo w polityce prywatności.

Jakie są podstawy prawne przetwarzania Twoich danych?

Podstawą prawną przetwarzania Twoich danych w celu świadczenia usług jest niezbędność do wykonania umów o ich świadczenie (tymi umowami są zazwyczaj regulaminy). Podstawą prawną przetwarzania danych w celu pomiarów statystycznych i marketingu własnego administratorów jest tzw. uzasadniony interes administratora. Przetwarzanie Twoich danych w celach marketingowych realizowanych przez Wirtualną Polskę na zlecenie Zaufanych Partnerów i bezpośrednio przez Zaufanych Partnerów będzie odbywać się na podstawie Twojej dobrowolnej zgody.