GRUB to właśnie ten program, który pozwala wybrać system operacyjny podczas startu komputera. Moim zdaniem, każdy kto kiedykolwiek miał do czynienia z instalacją np. dwóch systemów, wie że bez menedżera bootowania – jak GRUB – nie byłoby to takie proste. GRUB (Grand Unified Bootloader) to otwartoźródłowy bootloader wykorzystywany głównie w systemach Linux, ale świetnie radzi sobie również z innymi systemami, np. Windows czy BSD. Modyfikując jego plik konfiguracyjny (np. grub.cfg), można ustawiać kolejność systemów na liście, dodawać własne wpisy, a nawet ustawiać domyślny wybór. Praktycznie w każdej dokumentacji Linuksa znajdziesz rozdział o GRUB-ie, bo to jest podstawowe narzędzie do zarządzania wieloma systemami na jednym sprzęcie. Branżową dobrą praktyką jest, by po instalacji kolejnego systemu odświeżyć konfigurację GRUB np. poleceniem update-grub, żeby wszystkie systemy były widoczne. Pozwala to uniknąć problemów z dostępem do któregoś z nich. Z mojego doświadczenia wynika, że opanowanie podstaw GRUB-a to ważna umiejętność dla każdego, kto chce bawić się wieloma systemami operacyjnymi lub testować różne dystrybucje Linuksa. Często też w większych firmach administratorzy wykorzystują zaawansowane opcje GRUB-a, np. do szyfrowania dysków czy obsługi własnych skryptów startowych. W skrócie: GRUB to podstawa, jeśli myślisz o multi-boot na poważnie.
Wiele osób słysząc o wyborze systemu operacyjnego czy zarządzaniu komputerem, automatycznie myśli o narzędziach typu CMD czy nawet QEMU. To bardzo częsty błąd, bo te programy służą do czegoś zupełnie innego. CMD, czyli Windowsowy wiersz poleceń, to narzędzie do obsługi poleceń tekstowych, skryptów czy automatyzacji różnych zadań, ale nie ma żadnych funkcji związanych z zarządzaniem startem kilku systemów na jednym komputerze. Moim zdaniem, to typowy błąd wynikający z utożsamiania CMD z administracją systemu, ale na poziomie bootowania nie ma ono żadnego zastosowania. QEMU to z kolei emulator i maszyna wirtualna, często wykorzystywana do testowania i uruchamiania różnych systemów operacyjnych w wirtualizowanym środowisku. Owszem, można za jego pomocą odpalić wiele systemów, ale to przecież nie jest wybór systemu przy starcie komputera, tylko uruchamianie systemów gościnnych na już działającym systemie hosta. To zupełnie inne zastosowanie: wirtualizacja, a nie bootowanie fizycznych systemów z menu wyboru. Z kolei GEDIT to zwyczajny edytor tekstu, bardzo przydatny w Linuksie do edycji plików konfiguracyjnych, ale sam z siebie nie posiada żadnych funkcji wyboru czy zarządzania wieloma systemami operacyjnymi podczas startu komputera. Tu można wpaść w pułapkę myślenia, że skoro edytuje się pliki GRUB-a za pomocą GEDIT, to sam edytor ma związek z wyborem systemów – to jednak tylko narzędzie pomocnicze. Moim zdaniem, klucz do zrozumienia tego zagadnienia tkwi w odróżnieniu programów użytkowych lub administracyjnych od specjalistycznych narzędzi niskiego poziomu, takich jak bootloadery. Dobrą praktyką jest, by zawsze szukać dedykowanych narzędzi dla danego etapu działania systemu – a wybór OS przy starcie komputera to właśnie domena bootloadera, a nie emulatora, terminala czy edytora tekstu.