Pewnie zauważyłeś, że dyskietki startowe używane przez największe dystrybucje, takie jak Slackware, RedHat czy Debian, wydają się o wiele bardziej skomplikowane, niż te opisane w tym dokumencie. Profesjonalne dyskietki startowe są bazowane na tych samych założeniach, które tu podaliśmy, ale wykorzystują różne triki, ponieważ takie dyskietki mają o wiele większe wymagania. Po pierwsze, muszą współpracować z szeroką gamą sprzętu, tak więc muszą one umieć komunikować się z użytkownikiem i ładować odpowiednie sterowniki urządzeń. Po drugie, muszą być przygotowane do działania z wieloma różnymi opcjami instalacji, dodatkowo wykonując pewne działania automatycznie. Po trzecie dystrybucyjne dyskietki startowe na ogół spęłniają zarówno rolę instalacyjną, jak i ratunkową.
Niektóre dyskietki startowe korzystają z usługi zwanej initrd
(initial ramdisk). Została ona wprowadzona w jądrze wersji 2.0.x
i daje o wiele większą elastyczność,
startując jądro w dwóch fazach. Na początku ładowany jest początkowy obraz
ramdysku z dyskietki startowej. Początkowy ramdysk to główny system plików
zawierający programy, które zostaną uruchomione zanim zostanie załadowany
prawdziwy główny system plików. Ten program najczęściej bada otoczenie i/lub
prosi użytkownika o wybranie różnych opcji startowych, takich jak
urządzenie, z którego zostanie załadowany prawdziwy główny system plików.
Często ładuje on też dodatkowe moduły nie wbudowane do jądra. Gdy działanie
tego programu zakończy się, jądro ładuje prawdziwy główny obraz i
uruchamianie jest kontynuowanie normalnie. Więcej informacji o initrd
szukaj w /usr/src/linux/Documentation/initrd.txt i
ftp://elserv.ffm.fgan.de/pub/linux/loadlin-1.6/initrd-example.tgz.
Poniżej znajduje się podsumowanie tego, jak działają dyskietki startowe poszczególnych dystrybucji, oparte na przeglądaniu ich systemu systemu plików i/lub kodu źródłowego. Nie gwarantujemy, że ta informacja jest dokładna, ani że nic się nie zmieniło od czasu opisanej wersji.
Slackware (v.2.1) po prostu startuje system przy użyciu LILO, tak jak to
opisano w dziale
Przenoszenie jądra z LILO.
Dyskietki startowe Slackware przy starcie wypisują komunikat (``Welcome
to the Slackware Linux bootkernel disk!'') używając do tego parametru
LILO message. Informuje to użytkownika, że może podać dodatkowe
parametry startowe, jeśli to konieczne. Po wystartowaniu, główny system
plików jest ładowany z drugiej dyskietki. Użytkownik uruchamia skrypt
setup który rozpoczyna instalację. Zamiast korzystać z jądra opartego
na modułach, Slackware daje użytkownikowi do dyspozycji wiele różnych jąder,
do wyboru zależnie od konfiguracji sprzętowej.
RedHat (v.4.0) także korzysta z LILO. Ładuje skompresowany ramdysk z
pierwszej dyskietki, który uruchamia specjalnie napisany program init.
Program ten pyta o sterowniki i, jeśli to konieczne, ładuje pliki z dodatkowej
dyskietki.
Debian (v.1.3) jest prawdopodobnie najbardziej skomplikowanym zestawem
dyskietek startowych. Korzysta on z programu ładującego SYSLINUX, który
ustala osopowiednie parametry, a następnie używa obrazu
initrd aby poprowadzić użytkownika przez procedurę
instalacji. Wygląda na to, że korzysta on zarówno z przerobionego programu
init, jak i z przerobionej powłoki.