Linux/Przegląd dystrybucji

Cechą wolnego oprogramowania jest to, iż próżno szukać go w jednym miejscu. Różne narzędzia rozwijane są przez różnych ludzi w wielu różnych miejscach. Tendencja ta stanowi jeden z filarów tworzenia oprogramowania na zasadzie doboru naturalnego, dlatego trudno tu raczej o centralizację. Użytkownik, który chce od zera, samodzielnie skompletować system GNU z jądrem Linux musi więc wykazać się średnim bądź wysokim poziomem znajomości systemów uniksopodobnych. Tę niedogodność zauważono już po uwolnieniu pierwszych wersji jądra i spontanicznie pojawili się ludzie, którzy dobierając potrzebne im elementy (aplikacje GNU, jądro, biblioteki, skrypty startowe) zaczęli udostępniać je innym jako pewne logiczne całości zwane dystrybucjami.

Czym jest dystrybucja

edytuj

Dystrybucja zawiera dopasowane do siebie elementy oprogramowania, zgodne ze sobą i przygotowane do bezkonfliktowej pracy. Zawiera też jądro systemu wraz z potrzebnymi modułami i dokumentacją. Ponieważ przygotowywanie takiego wydania systemu pochłania relatywnie dużo czasu i energii, niektóre organizacje i instytucje oferujące dystrybucje żądają za ich używanie symbolicznej opłaty, nieporównywalnie mniejszej niż cena jaką trzeba zapłacić za konkurencyjne, komercyjne systemy. Oferowana często bywa też płatna pomoc techniczna.

Czym dystrybucje różnią się od siebie

edytuj

Dystrybucje różnią się między sobą zawartością oprogramowania i wersjami poszczególnych składników. Nierzadko też wyposażone są w aplikacje ułatwiające instalowanie składników systemu i administrowanie przy pomocy wygodnego menu. Popularnym standardem stały się systemy zarządzania składnikami oprogramowania (menedżery pakietów). Najbardziej znane to RPM Package Manager (RPM) oraz Advanced Packaging Tool (APT). Istotną cechą pozwalającą odróżnić od siebie dystrybucje jest sposób rozmieszczania plików konfiguracyjnych, drobne różnice w strukturze katalogów głównego systemu plików (ang. root filesystem) i używany menedżer pakietów.

 
Logo KDE.
 
Logo GNOME.

Każda dystrybucja ma swoje zalety i wady. Jedną łatwiej się instaluje, drugą łatwiej zmodyfikować i przystosować do własnych celów. Doświadczony użytkownik nie powinien mieć zbytnich problemów przy przechodzeniu z jednej na drugą. Często dzieje się tak, że wybór pada na wersję, którą najłatwiej się instaluje, albo na tą, która jest akurat dostępna dla naszej platformy sprzętowej. Różnice występują głównie w:

  • budowie i lokalizacji skryptów inicjalizujących poszczególne elementy systemu
  • położeniu katalogów
  • sposobie dostarczania oprogramowania i kontroli spójności wersji
  • dodatkowych narzędziach ułatwiających (lub utrudniających) administrowanie

Tyle "wnętrze", od strony "zewnętrznej", czyli wizualnej, poszczególne dystrybucje różnią się głównie środowiskiem graficznym. Obecnie istnieją dwa duże środowiska: KDE oraz GNOME i tuż obok nich Xfce oraz kilka pomniejszych które jako używające mało zasobów, nadają się szczególnie na starsze, wolniejsze komputery.

Wybór właściwej dystrybucji

edytuj

Wybór dystrybucji i znaczenie tego wyboru zależy mocno od zaawansowania użytkownika (administratora) i przeznaczenia systemu. Jeśli priorytetem jest wydajność warto zwrócić uwagę na rozwiązania enterprise oferowane przez Red Hata i SuSE, jeśli chcemy czysty i stabilny system można zastanowić się nad Debianem, Slackware, jeśli zaś chcemy komputer na biurko to można użyć Ubuntu, Auroksa lub Mandrivy. Osobom zainteresowanym programowaniem można polecić Gentoo lub PLD. Jeśli chodzi o Slackware to ma on jeszcze jedną ciekawą cechę — budowę skryptów startowych wzorowano na rozwiązaniach z BSD, a nie jak w większości dystrybucji rozwiązaniach pochodzących z System V. Oznacza to, że mamy tam większą swobodę w konfigurowaniu startu systemu i usług (jeśli potrafimy pisać skrypty powłoki POSIX), ale kosztem naszego czasu.

Podczas gdy doświadczony lub średnio-zaawansowany użytkownik nie powinien mieć większych problemów z wyborem ulubionej dystrybucji systemu, użytkownik początkujący może czuć się tutaj bardzo zagubionym, w związku z ogromną różnorodnością. Wystarczy tylko zajrzeć choćby do serwisu Distrowatch.com, monitorującego dystrybucje GNU/Linuksa i innych wolnych systemów operacyjnych - w bazie zarejestrowane jest ich kilkaset. Spośród tego ogromu jednak wyłania się kilka najważniejszych niejako, najbardziej przyjaznych początkującym a nawet tworzonych szczególnie z myślą o nich. Przyjrzyjmy się im z bliska.

Wybór oprogramowania

edytuj
 
Domyślny pulpit Fedory.

Wiele dystrybucji zawiera instalowany domyślnie zestaw programów, które są przydatne w określonych zastosowaniach (np. na komputerze biurkowym będą to inne programy niż na serwerze). Pozwala to na zaoszczędzenie czasu, który poświęcilibyśmy na wyszukiwanie potrzebnych nam aplikacji - z drugiej jednak strony, zazwyczaj utrudnia instalowanie bardzo nietypowych pakietów; utrudnia też stworzenie instalacji z minimalnym zestawem niezbędnych programów.

Dystrybucje z dobranym wstępnie zestawem oprogramowania to np. Mandriva, Suse, Ubuntu, natomiast te, w których możemy każdy pakiet dobierać ręcznie, to np. Debian, Slackware, Arch. Jeżeli instalujemy system na komputer domowy, lub stację roboczą (biurko) w firmie, to znacznie wygodniejsze jest wybranie dystrybucji z wybranym zestawem oprogramowania, ponieważ znacznie oszczędzamy na czasie, poza tym ręczne dobieranie pakietów wymaga pewnej wiedzy. Z kolei, do pewnych zastosowań profesjonalnych (klaster obliczeniowy, stanowisko do rozwijania oprogramowania, czy serwer), kontrola nad instalowanym oprogramowaniem jest znacznie ważniejsza, i w tych przypadkach korzystny może być wybór dystrybucji umożliwiającej ręczny wybór dowolnego oprogramowania.

Wsparcie

edytuj
 
Domyślny pulpit Debiana.

Dystrybucje są tworzone przez różne grupy ludzi:

  • firmy, które chcą na tym zarobić (np. Mandriva, Suse, Red Hat)
  • organizacje non-profit (np. Debian)
  • inne grupy ludzi (np. PLD)

W każdym z tych przypadków, można otrzymać inną formę wsparcia (pomocy). Jeżeli korzystamy z Linuksa w domu, lub instalujemy w firmie, to najlepsze będą dystrybucje tworzone przez firmy komercyjne, ponieważ skoncentrowane są one na dostarczeniu pomocy:

  • dla początkującego użytkownika
  • w wykonywaniu określonej kategorii zadań (np. prowadzenie biznesu)

Natomiast, jeżeli zajmujemy się rozwijaniem oprogramowania, czy po prostu chcemy poznawać ten system, to znacznie korzystniejsze będzie wybranie dystrybucji niekomercyjnej, ponieważ są one tworzone właśnie przez ludzi zainteresowanych tą tematyką i znacznie więcej można się od nich dowiedzieć o działaniu systemu od wewnątrz.

Jest też możliwa inna forma wsparcia - ponieważ GNU/Linux jest w większości otwartym oprogramowaniem, możemy wybrać niekomercyjną dystrybucję, natomiast do rozwiązywania problemów zatrudnić własnych pracowników, czy inną firmę zajmującą się wsparciem dla wolnego oprogramowania (np. Red Hat).

Kto używa tej dystrybucji

edytuj

O tym kryterium bardzo często się zapomina, ale w wielu przypadkach (jeśli nie w większości) jest ono nawet ważniejsze od pozostałych. Wyobraźmy sobie sytuację, że nasz znajomy używa PLD - nie jest to łatwa w obsłudze dystrybucja, tak naprawdę nie jest ona przeznaczona dla tych, którzy są zainteresowani tylko przeglądaniem paru stron, czy obejrzeniem filmu na komputerze. Ale na początku, przy pierwszej instalacji GNU/Linuksa, zetkniemy się na pewno z wieloma problemami, których nie będziemy umieli samemu rozwiązać i nie będziemy potrafili zapytać na forum, ponieważ tak naprawdę nie wiemy, które informacje są ważne, i na które trzeba zwrócić uwagę. Jeżeli nasz znajomy zechce nam pomóc, będzie to nieraz łatwiejsze, niż wybranie prostszej dystrybucji, której jednak nikt znajomy nie używa.

Warto też zwrócić uwagę na to, jakie dystrybucje GNU/Linuksa są najczęściej używane przez firmy - ponieważ, jeżeli zdobędziemy doświadczenie w tych dystrybucjach używając ich w domu, przyniesie to znaczne korzyści w przyszłej pracy. Na stanowiskach roboczych, na których najprawdopodobniej będziemy pracować, najczęściej instalowane są dystrybucje Mandriva, Suse; na serwerach Red Hat (dystrybucja Suse zyskuje ostatnio dużą popularność, z powodu zaawansowanych rozwiązań biznesowych dostarczanych przez firmę Novell).

Ponadto, różnych dystrybucji używają ludzie o różnych zainteresowaniach, i tak np. Mandriva i Ubuntu są używane w domu, głównie do rozrywki i korzystania z Internetu; Slackware jest lubiany przez ludzi zainteresowanych poznawaniem działania samego GNU/Linuksa, podobnie jak PLD, którego razem z Debianem używa dużo ludzi zainteresowanych administrowaniem serwera. Wśród użytkowników poszczególnych dystrybucji możemy najłatwiej uzyskać pomoc na tematy związane z profilem użytkowników - jeżeli więc chcemy nauczyć się administracji serwerem, to Mandriva czy Ubuntu nie będą najlepszym wyborem.

Zaawansowane aspekty

edytuj

Jeśli wiemy, że nasz system będzie używał w większości samodzielnie kompilowanych aplikacji (bo na przykład mamy takie wytyczne od dostawcy rozwiązania dla naszej firmy), to administrowanie mocno zautomatyzowaną dystrybucją może sprawiać kłopoty. Wyobraźmy sobie system, w którym nad zgodnością oprogramowania czuwa system zarządzania pakietami, np. RPM, a naszym zadaniem jest skompilować na nim ze źródeł aplikację, której potrzebuje nasza firma. Załóżmy, że aplikacja ta wymaga między innymi biblioteki XSLT. Instalując tę bibliotekę, możemy posłużyć się dedykowanym dystrybucji narzędziem instalacyjnym i pakietem, który zawiera w sobie pliki biblioteki oraz zależności od innych składników (np. biblioteki obsługującej XML dostępnej w innym pakiecie dla naszej dystrybucji). Po instalacji wymaganych składników, kompilujemy program i uruchamiamy go. Kłopoty pojawią się później, przy okazji aktualizacji systemu. Wyobraźmy sobie, że musimy wymienić w naszym systemie usługę WWW, ponieważ wykryto w niej usterkę. Próbujemy to zrobić, lecz zarządca pakietów podpowiada nam, że pakiet z nowym serwerem WWW wymaga nowszej biblioteki obsługującej XML. Pamiętajmy, że system zarządzania pakietami nic nie wie o naszej samodzielnie skompilowanej aplikacji, więc odświeżając wszystkie aplikacje i biblioteki, zależne od biblioteki XML, pominie naszą twórczość. Jeśli przegapimy moment, to okazać się może, że nasza samodzielnie kompilowana aplikacja przestała działać, bo była skonsolidowana z inną wersją biblioteki, po której nie ma już śladu. Jeśli przed upgrade wykażemy czujność, to możemy zastanowić się nad pozostawieniem lub kompilacją starszej wersji biblioteki, wymaganej przez naszą krytyczną aplikację. Oba wyjścią wydają się mało eleganckie, a jest to przykład dość powszechnego zjawiska. W takich przypadkach automatyzm nie wychodzi na dobre, bo mamy do wyboru:

  • wytwarzać osobny zestaw bibliotek i aplikacji, niezależny od zestawu kontrolowanego przez zarządcę pakietów
  • rekompilować dedykowane aplikacje po każdym upgrade, który dotyczy istotnych dla nich bibliotek
  • nie robić aktualizacji

Problem można rozwiązać także zawczasu:

  • prosząc dostarczyciela o aplikację w postaci pakietów dedykowanych konkretnym wydaniom dystrybucji
  • tworząc własny serwer (środowisko) do budowania pakietów

Mając na uwadze tego typu zjawiska, powstaje dylemat: czy wybrać na przykład Slackware (skoro i tak trzeba będzie samodzielnie pamiętać o rekompilacjach, a większość rzeczy robić ręcznie) czy może Red Hata, który dostarcza wsparcie techniczne i dedykowany jest mocno obciążonym serwerom? Żeby zdecydować, dobrze jest poznać system GNU/Linux do tego stopnia, żeby różnice między dystrybucjami nie miały dla nas (funkcjonalnie) znaczenia. Zyskamy elastyczne podejście i będziemy mogli używać tego, co aktualnie najlepsze, a nie tego, czego używaliśmy siłą przyzwyczajenia przez ostatnich parę lat.

Najpopularniejsze dystrybucje GNU/Linux na biurko

edytuj
 
Domyślny pulpit Ubuntu.

Dystrybucja znana pod nazwą Ubuntu plasuje się obecnie w czołówce tych najpopularniejszych. Jest to z pewnością zasługa wielu czynników, w tym darmowych płyt, które każdy użytkownik z dowolnego kraju może sobie zamówić na stronie projektu. Projekt Ubuntu charakteryzuje m.in. obietnica, że zawsze będzie on wolny od ograniczeń licencyjnych a my nigdy nie będziemy zmuszeni za niego płacić. Jest to chyba jedyny wyjątek w świecie GNU/Linux, gdzie za dystrybucją stoi firma (Canonical LTD), nie czerpiąca zysków z płatnych wersji swojego produktu. Projekt ma charakter wybitnie społecznościowy, co niewątpliwie przemawia za jego wyborem, samą nazwę można tłumaczyć jako Człowieczeństwo wobec innych i oznacza ona także subsaharyjską ideologię, nakierowaną na relacje międzyludzkie i pomoc bliźnim (zob. ubuntu w wikipedii).

Ubuntu jest systemem prostym w obsłudze, z instalacją poradzi sobie nawet niedoświadczony użytkownik - składa się ona z sześciu prostych kroków, opisanych możliwie łatwym językiem. Nie ma nawet obawy, że instalując go zniszczymy już zainstalowany system, Ubuntu automatycznie stworzy sobie miejsce na dysku i umożliwi nam potem wybór systemu przy uruchamianiu komputera. W dodatku zaraz po instalacji otrzymujemy w pełni sprawny system, wyposażony w aplikacje niezbędne do codziennej pracy czy rozrywki. Większość popularnego sprzętu jest instalowana i obsługiwana automatycznie zaraz po instalacji (co jest obecnie cechą większości dużych dystrybucji). Dystrybucja oferuje nam dostęp do największego zbioru darmowego oprogramowania, gdyż budowana jest w oparciu o jedną z najstarszych dystrybucji, Debiana, posiadającego właśnie największe repozytoria.

Oprócz wspomnianej już możliwości zamówienia darmowej płyty z Ubuntu, mamy także możliwość pobrania obrazu płyty ze strony projektu.

 
Losowy pulpit Kubuntu.

Ubuntu oprócz wspomnianych ma też tę cechę, że występuje w wielu różnych odmianach. Istnieją wersje posiadające inne środowisko graficzne, mianowicie Kubuntu, Xubuntu oraz kilka mniejszych, nieoficjalnych. Ponadto wersja tworzona z myślą o edukacji, Edubuntu, o zastosowaniach multimedialnych, Ubuntu Studio oraz wersja przeznaczona na serwery. Żadna z nich nie daje nam możliwości wyboru ulubionych programów podczas instalacji, jednak później mamy łatwy dostęp do ogromnych repozytoriów.

Za wyborem Ubuntu przemawia jeszcze wielka internetowa społeczność i wielojęzyczne fora, na których znajdziemy odpowiedzi, w razie pojawienia się problemów.

 
Domyślny pulpit OpenSUSE, KDE.
 
Losowy pulpit OpenSUSE, Gnome.

OpenSUSE

edytuj

Amerykańska firma Novell jest sponsorem dystrybucji systemu GNU/Linux o nazwie SUSE Linux, mającego kilka odmian. Jedną z nich jest OpenSUSE, dystrybucja tworzona przez społeczność, dostępna za darmo tutaj. Stanowi ona jakby przedpole testowe dla komercyjnych produktów firmy, SUSE Linux Enterprise Desktop, przeznaczonego na typowe komputery domowe (biurkowe) i laptopy oraz SUSE Linux Enterprise Server dedykowanego na serwery. Zawierają one pakiety będące wcześniej częściami właśnie OpenSUSE, nieco starsze, za to bardzo dobrze przetestowane, co wyklucza możliwość wystąpienia poważnych błędów w systemie.

OpenSUSE różni się nieco od Ubuntu. Całkiem inny jest graficzny instalator, który już niejako od samej instalacji przekonuje nas, że mamy do czynienia z profesjonalnym systemem operacyjnym, aż trudno uwierzyć, że dostępnym za darmo. Zaawansowany użytkownik ma możliwość konfiguracji i dostosowania systemu do swoich potrzeb już na tym etapie, np. poprzez szeroką możliwość wyboru pakietów i programów do instalacji, zwłaszcza, kiedy instalujemy wersję DVD. Dystrybucja nie faworyzuje żadnego z większych środowisk graficznych, możemy więc już na etapie instalacji wybrać czy wolimy KDE, Gnome, Xfce czy może inne, lżejsze środowisko. Początkujący użytkownik również nie zgubi się w procesie instalacji i nie zepsuje już istniejącego na dysku systemu.

Gotowy system oferuje nam sporą ilość najwyższej jakości wolnych programów, zresztą jak każda dystrybucja GNU/Linux. Cechą OpenSUSE jest bardzo rozbudowane, charakterystyczne dla tej dystrybucji centrum sterowania, Yast, z którego to możemy w prosty, graficzny sposób skonfigurować praktycznie każdy element systemu. OpenSUSE ma tylko nieco mniejsze repozytoria oprogramowania niż Ubuntu czy Debian, dlatego nie powinniśmy mieć najmniejszych problemów ze znalezieniem interesującego nasz programu.

Ogólnie rzecz ujmując, jeżeli jesteś początkującym użytkownikiem i wypróbowałeś Ubuntu, a ten nie spełnił twoich oczekiwań, zalecam wypróbować OpenSUSE. Oczywiście jak każda dystrybucja, ma on także swoje wady, często np. atakowany jest o swoją "ociężałość" oraz o wolną pracę narzędzia Yast, jednak w nowych wersjach systemu szybkość ulega widocznej poprawie.


 
Domyślny pulpit Mandrivy, KDE.
 
Losowy pulpit PCLinuxOS, KDE.

Mandriva Linux (nie rozwijana)

edytuj

Francuska firma Mandriva sponsoruje i tworzy dystrybucję GNU/Linuksa o tej samej nazwie, Mandriva Linux. Także i tutaj do wyboru mamy wersje płatne oraz darmowe, tzw. Powerpack, zawierające dodatkowe, komercyjne pakiety z programami, lepsze wsparcie techniczne i kilka udogodnień.

Co oferują nam darmowe wersje Mandrivy? To samo, co wszystkie większe dystrybucje: graficzny, prosty w użyciu instalator, dostęp do tysięcy pakietów z darmowym oprogramowaniem (nieco mniejsze repozytoria niż Ubuntu), kompletne środowisko do pracy i zabawy zaraz po instalacji. Na uwagę zasługuje także rozbudowane Centrum Sterowania Mandrivy, charakterystyczne dla dystrybucji, podobne do Yast z OpenSUSE, a umożliwiające skonfigurowanie zaawansowanych opcji w systemie.

Do wyboru mamy kilka różnych, darmowych i płatnych wersji, które można pobrać tutaj. Mandriva Linux Free na DVD, dająca nam większy wybór pakietów oraz możliwość wyboru środowiska graficznego podczas instalacji oraz tylko i wyłącznie wolne oprogramowanie, nie znajdziemy więc tutaj obsługi niektórych kart graficznych czy multimediów. Różne wersje Mandriva One (różne, tzn. z KDE lub Gnome), mieszczące się na krążku CD, zawierające wtyczkę flashplayer i zamknięte sterowniki, a które można skopiować na pendrive, najbardziej więc polecana początkującym użytkownikom no i płatne wersje Powerpack.

 
Domyślny pulpit Linux Mint.

Przegląd pod względem różnych kryteriów

edytuj

Najpopularniejsze dystrybucje w roku 2016 wg Distrowatch.com

edytuj
 
Domyślny pulpit PCLinuxOS.

Komercyjne/darmowe

edytuj
 
Domyślny pulpit Gentoo Linux.

Sposób instalacji oprogramowania

edytuj
 
Pulpit CentOS.
  • kompilacja ze źródeł
    • Gentoo
  • pliki archiwum *.tar.gz lub pakiety *.tgz
    • Slackware poprzez narzedzie pkgtool
  • pakiety *.rpm (system pakietowy Red Hata)
    • Red Hat - program rpm
    • Mandriva - system urpmi
    • Suse - program Yast
  • pakiety *.deb (system pakietowy Debiana)
    • Debian i Ubuntu
      • programy tekstowe: apt-get, dselect, aptitude, tasksel;
      • programy graficzne: synaptic, Kpackage (KDE)
    • Knoppix - apt-get
  • własne systemy instalowania
    • Gentoo - połączenie systemu portów znanego z BSD, i kompilowania pakietów w czasie instalacji