EITC/IS/LSA Linux System Administration to europejski program certyfikacji IT dotyczący administracji i zarządzania bezpieczeństwem w systemie Linux, sieciowym systemie operacyjnym typu open source, często używanym w serwerach zajmujących wiodącą pozycję na świecie.
Program nauczania Administracji systemu Linux EITC/IS/LSA koncentruje się na wiedzy i praktycznych umiejętnościach z zakresu administracji i zarządzania bezpieczeństwem w systemie Linux, zorganizowanych w następującej strukturze, obejmującej obszerne treści dydaktyczne wideo jako punkt odniesienia dla certyfikacji EITC.
Linux to zbiór open-source'owych systemów operacyjnych podobnych do Uniksa, które są ogólnie akceptowane jako wiodący standard dla systemów operacyjnych serwerów sieciowych, opartych na jądrze Linusa Torvaldsa, które zostało pierwotnie wydane w 1991 roku. Jądro Linux, a także towarzyszące oprogramowanie systemowe i biblioteki są zwykle zawarte w dystrybucji Linuksa, a wiele z nich jest licencjonowanych w ramach Projektu GNU. Chociaż wiele dystrybucji Linuksa używa terminu „Linux”, Free Software Foundation preferuje określenie „GNU/Linux”, aby podkreślić znaczenie oprogramowania GNU.
Debian, Fedora i Ubuntu to wszystkie popularne dystrybucje Linuksa. Red Hat Enterprise Linux i SUSE Linux Enterprise Server to dwie komercyjne dystrybucje. Systemy okienkowe, takie jak X11 lub Wayland, a także środowisko graficzne, takie jak GNOME lub KDE Plasma, są zawarte w dystrybucjach Linuksa na komputery stacjonarne. Dystrybucje serwerów mogą zawierać grafikę, ale nie muszą, lub mogą zawierać stos rozwiązań, taki jak LAMP. Każdy może stworzyć dystrybucję w dowolnym celu, ponieważ Linux jest swobodnie rozpowszechnianym oprogramowaniem typu open source.
Linux został stworzony dla komputerów osobistych opartych na architekturze x86 Intela, ale później został przeniesiony na więcej platform niż jakikolwiek inny system operacyjny. Linux ma największą zainstalowaną bazę spośród wszystkich systemów operacyjnych ogólnego przeznaczenia ze względu na dominację opartego na Linuksie Androida na smartfonach. Pomimo faktu, że Linux jest używany tylko przez 2.3 procent komputerów stacjonarnych, Chromebook, na którym działa system operacyjny Chrome oparty na jądrze Linuksa, dominuje na amerykańskim rynku edukacji dla szkół podstawowych i średnich oraz odpowiada za około 12% całej sprzedaży laptopów poniżej 20 USD . Linux jest najpopularniejszym systemem operacyjnym dla serwerów (około 300% z 96.4 miliona najpopularniejszych serwerów WWW działa na Linuksie), podobnie jak inne duże systemy żelazne, takie jak komputery mainframe i superkomputery TOP1 (od listopada 500 r., po stopniowej eliminacji wszystkich konkurentów).
Linux jest również dostępny dla systemów wbudowanych, czyli urządzeń, których system operacyjny jest często wbudowany w oprogramowanie układowe i jest wysoce dostosowany do systemu. Routery, sterowniki automatyki, technologia inteligentnego domu, telewizory (odpowiednio telewizory Samsung i LG Smart korzystają z Tizen i WebOS), samochody (Tesla, Audi, Mercedes-Benz, Hyundai i Toyota wszystkie korzystają z systemu Linux), cyfrowe rejestratory wideo, konsole do gier wideo , a smartwatche to przykłady urządzeń opartych na systemie Linux. Awionika Falcon 9 i Dragon 2 jest oparta na dostosowanej wersji systemu Linux.
Linux jest jednym z najbardziej znanych przykładów współpracy w zakresie wolnego oprogramowania i oprogramowania typu open source. Zgodnie z zasadami poszczególnych licencji, takich jak Powszechna Licencja Publiczna GNU, kod źródłowy może być używany, aktualizowany i rozpowszechniany komercyjnie lub niekomercyjnie przez kogokolwiek.
Według kilku programistów open source jądro Linuksa nie zostało zaprojektowane, ale ewoluowało poprzez dobór naturalny. Chociaż architektura Uniksa działała jak rusztowanie, Torvalds uważa, że „Linux ewoluował z wieloma mutacjami – a ponieważ mutacje były mniej niż przypadkowe, były szybsze i bardziej ukierunkowane niż cząstki alfa w DNA”. Rewolucyjne cechy Linuksa, według Erica S. Raymonda, mają raczej charakter społeczny niż techniczny: przed Linuksem wyrafinowane oprogramowanie było starannie budowane przez małe grupy, ale „Linux dorastał w zupełnie inny sposób. Został on zhakowany niemal nieumyślnie od samego początku przez duże grupy wolontariuszy, którzy komunikowali się wyłącznie przez Internet. Głupio prosta technika publikowania co tydzień i otrzymywania informacji od setek użytkowników w ciągu kilku dni, generująca formę szybkiej darwinowskiej selekcji mutacji wprowadzonych przez programistów, zamiast rygorystycznych standardów lub dyktatury, została wykorzystana do zachowania jakości”. „Linux nie został zaprojektowany, on ewoluował” — mówi Bryan Cantrill, inżynier konkurencyjnego systemu operacyjnego, ale postrzega to jako ograniczenie, twierdząc, że niektóre funkcje, zwłaszcza te związane z bezpieczeństwem, nie mogą zostać rozwinięte, ponieważ „to jest to nie system biologiczny w ostatecznym rozrachunku, to system oprogramowania”. System oparty na Linuksie to modułowy system operacyjny podobny do Uniksa, który czerpie wiele inspiracji architektonicznych z zasad Uniksa opracowanych w latach 1970. i 1980. XX wieku. Jądro monolityczne, jądro Linuksa, jest używane w takim systemie do obsługi kontroli procesów, sieci, dostępu do urządzeń peryferyjnych i systemów plików. Sterowniki urządzeń są wbudowane bezpośrednio w jądro lub dodawane jako moduły ładowane podczas działania systemu.
Przestrzeń użytkownika GNU jest ważną cechą większości systemów opartych na Linuksie, przy czym Android jest wyjątkiem. Toolchain to szeroki zbiór narzędzi programistycznych niezbędnych do rozwoju Linuksa (w tym kompilatory używane do budowy samego jądra Linuksa), a coreutils implementuje wiele podstawowych narzędzi Unixa. Implementacja biblioteki C Projektu działa jako opakowanie dla wywołań systemowych jądra Linuksa niezbędnych dla interfejsu jądro-przestrzeń użytkownika, łańcuch narzędzi to szeroki zbiór narzędzi programistycznych niezbędnych do rozwoju Linuksa (w tym kompilatory używane do budowy samego jądra Linuksa) , a coreutils implementuje wiele podstawowych narzędzi uniksowych. W ramach projektu powstaje także Bash, popularna powłoka CLI. Graficzny interfejs użytkownika (lub GUI) większości systemów Linux jest oparty na implementacji X Window System. Ostatnio społeczność Linuksa pracowała nad zastąpieniem X11 przez Wayland jako zastępczy protokół serwera wyświetlania. Systemy Linux korzystają z kilku innych inicjatyw oprogramowania typu open source.
Zainstalowane składniki systemu Linux obejmują:
- GNU GRUB, LILO, SYSLINUX lub Gummiboot to przykłady programów ładujących. Jest to oprogramowanie, które jest uruchamiane po włączeniu komputera i po inicjalizacji oprogramowania układowego w celu załadowania jądra systemu Linux do pamięci głównej komputera.
- Program inicjujący, taki jak sysvinit lub nowszy systemd, OpenRC lub Upstart. Jest to początkowy proces uruchomiony przez jądro Linuksa i znajduje się na szczycie drzewa procesów; innymi słowy, init to miejsce, w którym zaczynają się wszystkie inne procesy. Inicjuje zadania, takie jak usługi systemowe i monity logowania (w trybie graficznym lub terminalowym).
- Biblioteki oprogramowania to zbiory kodu, które mogą być wykorzystywane przez inne programy. Dynamiczny linker, który obsługuje korzystanie z bibliotek dynamicznych w systemach Linux wykorzystujących pliki wykonywalne w formacie ELF, jest znany jako ld-linux.so. Jeśli system jest skonfigurowany tak, aby użytkownik mógł samodzielnie generować aplikacje, dołączone zostaną pliki nagłówkowe opisujące interfejs zainstalowanych bibliotek. Oprócz biblioteki GNU C (glibc), która jest najczęściej używaną biblioteką oprogramowania w systemach Linux, istnieje więcej innych bibliotek, takich jak SDL i Mesa.
- Biblioteka GNU C jest standardową biblioteką C, która jest wymagana do uruchamiania programów C w systemie komputerowym. Opracowano alternatywy dla systemów wbudowanych, w tym musl, EGLIBC (klon glibc pierwotnie używany przez Debiana) i uClibc (zbudowany dla uClinux), jednak dwa ostatnie nie są już obsługiwane. Wykorzystywana jest własna biblioteka C systemu Android, Bionic.
- GNU coreutils to standardowa implementacja podstawowych poleceń systemu Unix. W przypadku urządzeń wbudowanych istnieją alternatywy, takie jak BusyBox typu copyleft i Toybox na licencji BSD.
- Widget toolkity to biblioteki do tworzenia graficznych interfejsów użytkownika (GUI) aplikacji. GTK i Clutter, stworzone przez projekt GNOME, Qt, opracowane przez Projekt Qt i kierowane przez The Qt Company, oraz Enlightenment Foundation Libraries (EFL), utrzymywane głównie przez zespół Enlightenment, znajdują się wśród dostępnych zestawów widżetów.
- Do zarządzania pakietami używany jest system zarządzania pakietami, taki jak dpkg lub RPM. Pakiety mogą być również budowane z tarballi źródłowych lub tarballi binarnych.
- Powłoki poleceń i środowiska okienkowe to przykłady programów interfejsu użytkownika.
Interfejs użytkownika, często nazywany powłoką, to zazwyczaj interfejs wiersza poleceń (CLI), graficzny interfejs użytkownika (GUI) lub elementy sterujące połączone z towarzyszącym sprzętem. Typowy interfejs użytkownika na komputerach stacjonarnych jest zwykle graficzny, podczas gdy CLI jest często dostępny za pośrednictwem okien emulatora terminala lub oddzielnej konsoli wirtualnej.
Tekstowe interfejsy użytkownika lub powłoki CLI wykorzystują tekst zarówno jako dane wejściowe, jak i wyjściowe. Powłoka Bourne-Again Shell (bash), która została stworzona dla projektu GNU, jest najczęściej używaną powłoką pod Linuksem. CLI jest w całości używany przez większość niskopoziomowych komponentów Linuksa, w tym różne sekcje przestrzeni użytkownika. CLI jest szczególnie dobrze przystosowany do automatyzacji powtarzających się lub opóźnionych operacji i pozwala na stosunkowo łatwą komunikację między procesami.
Powłoki GUI, wypełnione pełnymi środowiskami graficznymi, takimi jak KDE Plasma, GNOME, MATE, Cinnamon, LXDE, Pantheon i Xfce, są najpopularniejszymi interfejsami użytkownika w systemach komputerowych, podczas gdy istnieje wiele innych interfejsów użytkownika. X Window System, znany również jako „X”, stanowi podstawę większości popularnych interfejsów użytkownika. Umożliwia przezroczystość sieci, umożliwiając wyświetlanie aplikacji graficznej działającej na jednym komputerze na innym, gdzie użytkownik może wchodzić z nią w interakcję; jednak niektóre rozszerzenia X Window System nie mogą działać w sieci. Istnieje kilka serwerów wyświetlania X, z których najpopularniejszym jest X.Org Server, który jest implementacją referencyjną.
Dystrybucje serwerów mogą zapewniać interfejs wiersza poleceń dla programistów i administratorów, ale mogą również zawierać interfejs dostosowany do potrzeb użytkowników końcowych, który jest dostosowany do przypadku użycia systemu. Ten niestandardowy interfejs jest dostępny za pośrednictwem klienta działającego w innym systemie, który niekoniecznie jest oparty na Linuksie.
W przypadku X11 istnieje kilka rodzajów menedżerów okien, w tym kafelkowanie, dynamika, układanie w stos i komponowanie. Menedżerowie okien współdziałają z X Window System i pozwalają kontrolować położenie i wygląd poszczególnych okien aplikacji. Prostsze menedżery okien X, takie jak dwm, ratpoison, i3wm lub herbstluftwm, mają minimalistyczny interfejs, podczas gdy bardziej złożone menedżery okien, takie jak FVWM, Enlightenment lub Window Maker, zawierają dodatkowe funkcje, takie jak wbudowany pasek zadań i motywy, ale nadal są lekkie w porównaniu z środowiska graficzne. Menedżery okien, takie jak Mutter (GNOME), KWin (KDE) i Xfwm (xfce) są zawarte w podstawowych instalacjach większości środowisk graficznych, ale użytkownicy mogą wybrać innego menedżera okien, jeśli wolą.
Wayland to protokół serwera wyświetlania, który został zaprojektowany w celu zastąpienia protokołu X11, jednak od 2014 r. nie jest jeszcze powszechnie stosowany. Wayland, w przeciwieństwie do X11, nie wymaga zewnętrznego menedżera okien ani menedżera komponowania. W rezultacie kompozytor Wayland służy jako serwer wyświetlania, menedżer okien i menedżer komponowania w jednym. Implementacją referencyjną Waylanda jest Weston, chociaż Mutter i KWin z GNOME i KDE są konwertowane na Wayland jako samodzielne serwery wyświetlania. Od wersji 19 Enlightenment został pomyślnie przeniesiony.
Aby dokładnie zapoznać się z programem certyfikacji, możesz rozwinąć i przeanalizować poniższą tabelę.
Program EITC/IS/LSA Linux System Administration Certification Curriculum odwołuje się do ogólnodostępnych materiałów dydaktycznych w formie wideo. Proces uczenia się podzielony jest na etapy (programy -> lekcje -> tematy) obejmujące odpowiednie części programu nauczania. Zapewnione są również nieograniczone konsultacje z ekspertami dziedzinowymi.
Aby uzyskać szczegółowe informacje na temat procedury certyfikacji, sprawdź Wygodna Subskrypcja.
Pobierz kompletne materiały przygotowawcze do samodzielnego uczenia się w trybie offline dla programu EITC/IS/LSA Linux System Administration w pliku PDF
Materiały przygotowawcze EITC/IS/LSA – wersja standardowa
Materiały przygotowawcze EITC/IS/LSA – wersja rozszerzona z pytaniami kontrolnymi