Wstęp

Dzień dobry, dziś przekażę informacje o rozruchu w systemie linux. Serdecznie zapraszam.

Etapy uruchamiania Systemu Linux

System Linux, zanim się uruchomi do takiego stanu, w którym możemy korzystać z ich dobrodziejstw, musi przejść kilka etapów:

l81

Bios

Pierwszym przystankiem, dla każdego systemu operacyjnego czy to MS Windows Linux, Mac, FreeBSD, AIX, HP-UX i wiele innych jest BIOS.

Bios z angielskiego Basic Input/Output System (Podstawowy system wejścia wyjścia). Jest to pierwszy z etapów rozruchowych. Bios ma za zadanie kontrolować transfer danych między podzespołami, zarządzać zasilaniem oraz uruchomić program rozruchowy.

Boot Loader

Boot loader (MBR albo EFI) ma za zadanie poinformować o tablicy partycji oraz uruchomić program rozruchowy.

GRUB

Grand Unified Bootloader - program rozruchowy, często spotykany przy systemach Linux. Nazwa może być myląca z etapem poprzednim, ale operują one w innym zakresie. Jest to interaktywny etap rozruchowy zawierający informacje o lokalizacji kernela i innych opcji rozruchowych. Pozwala również na tzw “ Dual-Boot” czyli posiadanie dwóch systemów, Windows i Linux, obok siebie. Grub uruchamia Kernel

Kernel

Montuje główny system plików (root file system) następnie, uruchamia początkowy “RAM disk”, który zawiera wszystkie potrzebne sterowniki i po wystartowaniu kernela znika a kernel wpina się na fizyczny system plików oraz uruchamia proces init.

Proces Init

W tym momencie system uruchamia programy na każdym z poziomów. Informacje, do którego poziomu ma uruchomić programy, zwykle znajdują się w /etc/inittab

W przypadku używania systemd jako “procesu init”. Mamy do wyboru kolejne poziomy:

Poziomy uruchomiania/cele

Niektóre aplikacje, nie posiadają definicji w systemd typu “to jest potrzebne do uruchomienia tego celu init”. Ale są aplikacje, które chcemy, by uruchamiały się na konkretnym poziomie. I tak dla każdego “Run level” możemy zdefiniować aplikacje, o których informacja powinna się znaleźć w odpowiednim katalogu:

  • Run level 0 – /etc/rc0.d/
  • Run level 1 – /etc/rc1.d/
  • Run level 2 – /etc/rc2.d/
  • Run level 3 – /etc/rc3.d/
  • Run level 4 – /etc/rc4.d/
  • Run level 5 – /etc/rc5.d/
  • Run level 6 – /etc/rc6.d/

Lokalizacja tych katalogów może się trochę różnić zależnie od systemu.

W tych katalogach można znaleźć różne programy, gdzie jedne zaczynają się na S, drugie na K i posiadają numer. Wszystko to coś znaczy. S znaczy, że program jest uruchamiany przy starcie systemu, natomiast K przy zamknięciu. Numery oznaczają kolejność uruchamiania.

l82

Epilog

Na dziś wystarczy, mam nadzieję, że dowiedziałeś/łaś się czegoś nowego, albo odświeżyłeś/łaś sobie wiedzę. Tak czy inaczej, serdecznie Ci dziękuję, za przeczytanie tego posta. Jeśli masz potrzebę o cos zapytać, kontakt znajdziesz w zakładce “O Mnie”. A teraz życzę miłego dzionka i smacznej kawusi :) Do widzenia.