Systemd-boot, ibland kallad ”systemd” och tidigare kallad ”gummiboot”, är Grubs nyare konkurrent. På kompatibla EFI-system kan systemd-boot användas i stället för Grub för att starta systemets operativsystem. Ur ett högt perspektiv länkar systemd-boot till bootloader som redan finns i UEFI, och erbjuder den mest grundläggande funktionsuppsättningen för att välja ett operativsystem. Grub, å andra sidan, laddar det som ibland beskrivs som ”ett helt operativsystem” för att hantera uppstart av användarens operativsystem, vilket ger mycket större kapacitet.
Vad är en bootloader?
En startladdare laddar operativsystemet. Det kopieras till minnet från en speciell sektor på startmediet och körs innan något operativsystem startas. Om flera startbara systembilder upptäcks tillåter bootloader användaren att välja det system som ska startas. Bootloader startar sedan upp operativsystemet och överlämnar hårdvarukontroll till operativsystemet. På de flesta system visas bootloadern direkt efter startskärmen för moderkortet.
Grub vs systemd-boot: Vad är Grub?
GNU GRUB, mer allmänt känd som Grub eller GRUB 2, står för GRoch Unified Boot gränssnitt. Den är baserad på Free Software Foundations multiboot-specifikation. Den är utformad för att fungera på vilken hårdvaruplattform som helst och starta nästan alla Unix-operativsystem från praktiskt taget alla startmedier och filsystem. Eftersom det är avsett att täcka ett brett utbud av plattformar och distributioner används Grub vanligtvis som standard bootloader som levereras med de flesta Linux-distributioner. Om du har interagerat med en Linux bootloader har det antagligen varit Grub. Det ger också alternativ för visuell konfiguration som text, bakgrundsfärger och grafiska plasmabilder. Ubuntus version av Grub, till exempel, använder Canonical-märkeslila.
Grub stöder multiboot-system och skrevs speciellt för det ändamålet. Det kan dock vara lite knepigt om något går fel. Problem uppstår oftast när du installerar Grub på ett befintligt multiboot-system, tar bort operativsystem och installerar nya operativsystem. Grub använder en conf-fil, så alla operativsystem ingår i samma fil, som redigeras för att återspegla förändringar. Det primära operativsystemets bootloaders bor i MBR, och andra operativsystem är kedjeladdade via bootloaders på sina egna partitioner. Detta fungerar, och för de flesta användningsfall är det absolut tillräckligt. Men det är ett system som också lätt kan bli upprörd. Om du till exempel inte konfigurerar kedjeladdade kärnor ordentligt kan flera Linux-installationer hamna i ”kamp” om kontrollen av MBR.
Grub vs systemd-boot: Vad är systemd-boot?
Linux-fans kan ha stött på namnet “systemd” tidigare. systemd, förkortning för ”system daemon”, är en samling grundläggande förutsättningsdemoner för att köra ett Linux-system. Systemd-boot är en kod på flera tusen rader och har inga beroenden i resten av systemd-sviten. Tack vare sin enkelhet lades dock gummiboot till systemd och döptes om till ”systemd-boot” för att matcha systemds konventionella namngivningskonvention. Systemd övergripande mål är att starta systemet snabbt genom att starta färre saker och starta mer parallellt, och systemd-boot delar det målet.
Som en text-endast bootloader har systemd ett uppenbarligen gammalt skolutseende. Tillgängliga startenheter listas efter titel, som hanteras i systemd-boot konfigurationsfil. Systemd-boot är i grunden ett gränssnitt för startlogiken som ingår i EFI, varför den bara kan användas med kompatibla EFI-system. Det är ett dramatiskt mindre konfigurerbart system än Grub, med i princip inga konfigurationsalternativ.
Med sitt begränsade gränssnitt är systemd en mycket mindre bootloader än Grub. Vissa installerar det för snabbhet eller för att hantera flera operativsystem mer effektivt. Eftersom systemd använder delade konfigurationsfiler (en enda .conf-fil för varje kärna eller operativsystem) kan det vara enklare att underhålla ett system med flera kärnor eller operativsystem manuellt. Dessa drop-in-konfigurationstextfiler kan enkelt kopieras till systemd-katalogen när en ny kärna installeras. Detta förenklar konfigurationen för multi-boot-system.
Slutsats: Är Grub eller Systemd-boot bättre?
Om du har problem med Grub ger systemd-boot en dramatiskt förenklad startinfrastruktur med drop-in-filkonfiguration. Det är mer robust, men det är inte heller lika konfigurerbart eller anpassningsbart som Grub. Om du kör ett multiboot EFI-system kan systemd-boot ge enklare starthantering och kan till och med minska dina starttider. På andra systemkonfigurationer, eller för användning som kräver större flexibilitet än systemd-boot ger, förblir Grub din bästa satsning.