inittab to plik konfiguracyjny definiujący poziomy uruchamiania w klasycznych systemach Unix — w nowoczesnych dystrybucjach Linux (systemd) został w dużej mierze zastąpiony innym mechanizmem.
inittab — definicja i rola w uruchamianiu systemu
inittab to plik konfiguracyjny spotykany przede wszystkim w klasycznych systemach Unix oraz w starszych środowiskach Linux korzystających z mechanizmu init. Jego zadaniem było opisanie sposobu reagowania systemu na poszczególne poziomy pracy, określane jako runlevel. Wpisy umieszczone w tym pliku wskazywały między innymi, jakie procesy należy uruchomić, zatrzymać lub ponownie uruchomić, a także jak obsłużyć wybrane zdarzenia, takie jak start systemu, zmiana poziomu działania czy zakończenie pracy.
Każda linia inittab miała określoną strukturę. Zwykle obejmowała identyfikator wpisu, poziomy, których dotyczył, rodzaj zdarzenia oraz polecenie wykonywane przez proces init. Dzięki temu można było zdefiniować usługi startujące automatycznie, konsole logowania, reakcję na sygnał wyłączenia oraz zachowanie systemu po awarii procesu. Plik wpływał więc na podstawową kolejność uruchamiania elementów środowiska, choć nie pełnił funkcji zwykłego skryptu zawierającego dowolne polecenia wykonywane bez żadnych reguł.
Klasyczny init a współczesne mechanizmy startowe
Znaczenie inittab najlepiej wyjaśnia porównanie go z nowszymi rozwiązaniami. W klasycznym modelu proces init odczytywał konfigurację, wybierał właściwy runlevel i uruchamiał procesy przypisane do danego stanu. Przejście między poziomami mogło zmieniać dostępne usługi, sposób pracy systemu oraz obecność lokalnych terminali logowania. Administracja opierała się wtedy na pliku tekstowym i zestawie skryptów związanych z określonym poziomem uruchomieniowym.
W dystrybucjach korzystających z systemd centralną rolę przejęły jednostki usług, cele uruchomieniowe oraz zależności opisujące kolejność i warunki startu. Odpowiednikiem dawnych poziomów są przede wszystkim cele, na przykład stan przeznaczony do pracy wieloużytkownikowej albo tryb ratunkowy. Nie oznacza to jednak, że znajomość inittab przestała być przydatna. Plik może nadal występować w starszych instalacjach, systemach wbudowanych, środowiskach zgodnych z tradycyjnym init oraz podczas analizy dokumentacji historycznej. Nie powinno się automatycznie przenosić wpisów z inittab do konfiguracji nowszego systemu bez sprawdzenia używanego mechanizmu startowego.
Typowe problemy związane z plikiem inittab
Jednym z częstszych błędów jest nieprawidłowa składnia wpisu. Brak wymaganego separatora, literówka w identyfikatorze zdarzenia albo błędnie zapisany poziom może spowodować pominięcie polecenia lub nieprzewidywalną reakcję procesu init. Problem może pojawić się także wtedy, gdy wpis wskazuje plik wykonywalny, skrypt lub program znajdujący się pod nieaktualną ścieżką. W takiej sytuacji system może zgłaszać błędy podczas startu, wielokrotnie próbować uruchamiać ten sam proces albo pozostawiać usługę niedostępną.
Uciążliwe skutki może powodować również niewłaściwe użycie mechanizmu restartowania. Proces kończący się natychmiast po uruchomieniu może być stale ponawiany, co utrudnia zalogowanie się, obciąża system i zaśmieca komunikaty diagnostyczne. Należy też uważać na edycję pliku bez kopii zapasowej oraz na pomylenie inittab z konfiguracją używaną przez systemd. W nowszym systemie zmiana tego pliku może nie przynieść żadnego efektu, ponieważ nie jest on odczytywany przez aktywny proces startowy. Przy analizie problemu warto sprawdzić wersję systemu, proces działający jako pierwszy proces użytkowej przestrzeni, logi uruchamiania oraz dostępne konfiguracje usług.
Kiedy trzeba umówić wizytę serwisową - inittab
Wsparcie serwisowe jest uzasadnione, gdy po zmianie konfiguracji system nie przechodzi prawidłowo procedury startowej, zatrzymuje się na komunikacie o uruchamianiu procesu, nie udostępnia konsoli logowania albo cyklicznie uruchamia ten sam program. Pomoc może być potrzebna także wtedy, gdy nie ma pewności, czy dana instalacja korzysta jeszcze z klasycznego init, czy już z innego systemu zarządzania usługami. Bez tej weryfikacji łatwo zmienić niewłaściwy plik i pogłębić problem.
W serwisie laptopów i komputerów PC w Warszawie można zlecić sprawdzenie konfiguracji rozruchowej, analizę komunikatów systemowych oraz przywrócenie poprawnego działania po nieudanej edycji plików startowych. Naprawy trwają z reguły do 3 dni roboczych, zależnie od stanu urządzenia i zakresu koniecznych czynności. Przed modyfikacją konfiguracji powinno się zabezpieczyć ważne dane i zanotować ostatnie wykonane zmiany, ponieważ takie informacje ułatwiają odtworzenie przyczyny awarii.