Jak tworzyć wielobootowe USB z Linux
- 1058
- 249
- Pani Janina Cieśla
Cel
Utwórz rozruchowe urządzenie USB zawierające wiele rozkładów Linux.
Wymagania
- Urządzenie USB o wystarczającym rozmiarze, aby zawierać wiele ISOS
- Uprawnienia do modyfikacji partycji urządzeń i zainstalowania Gruba
Trudność
ŚREDNI
Wstęp
Możliwość uruchomienia całego systemu operacyjnego bezpośrednio z nośnika instalacyjnego jest niezwykle przydatna: możemy przetestować dystrybucję, używać go do celów tworzenia kopii zapasowych, a może do naprawy istniejącego systemu. Zwykłym sposobem utworzenia multimediów rozruchowych jest napisanie na nim obrazu systemu za pomocą Dd
polecenie lub dedykowane narzędzie. W tym samouczku zobaczymy, jak utworzyć urządzenie USB z wieloma bohaterami.
Słowo o BIOS vs uefi
Uefi
(Unified Extensible Interface oprogramowania) To nowoczesne oprogramowanie układowe stworzone jako zamiennik dziedzictwa BIOS
(Podstawowy System Wejścia Wyscia). Większość najnowszych rozkładów Linux może uruchamiać się w obu trybach bez problemów: instalator odpowiednio dostosuje swoje zachowanie.
Dwa firmy firmy są według standardu, powiązane z określonym układem tabeli partycji: Uefi
idzie w parze z Gpt
, chwila BIOS
W zestawie MSDOS
jeden. Te skojarzenia nie są jednak ściśle obowiązkowe, ponieważ przynajmniej teoretycznie a Uefi
oprogramowanie układowe może rozpocząć proces rozruchu od MSDOS
Układ dysku i dziedzictwo BIOS
System może zrobić to samo z Gpt
Dysk partycjonowany.
W pierwszym przypadku Efi
Partycja musi być pierwszą na dysku i być sformatowana z Fat32
Fileystem, w tym ostatnim BUT BIOS
PARTICJA bez żadnego systemu plików powinna istnieć, potrzebna do przechowywania Gruba Etap 1.5, ponieważ na Gpt
Układ luka między głównym rekordem rozruchu a pierwszą partycją nie istnieje (tutaj ten etap grub zwykle jest zainstalowany).
Przygotujemy nasze urządzenie za pomocą tradycyjnego MSDOS
układ, instalowanie bootloadera Grub w trybie EFI i Legacy, aby móc uruchomić rozkłady w obu Uefi
I BIOS
tryb.
Przygotowanie urządzenia
Pierwszą rzeczą, którą musimy zrobić, jest przygotowanie naszego urządzenia. Utworzymy dwie partycje, w kolejności:
- Jakiś
Efi
przegroda - Partycja danych
Pierwszy jest potrzebny do uruchomienia Uefi
tryb, ponieważ tam jest zainstalowany Grub-EFI. Partycja musi być sformatowana za pomocą Fat32
system plików. Teoretycznie konfiguracja działałaby nawet przy tej partycji, ponieważ moglibyśmy go również użyć do przechowywania obrazów dystrybucji, których chcemy użyć. Jednak w takim przypadku bylibyśmy ograniczeni Fat32
nie obsługuje plików Lager niż 4 GB, a niektóre ISO mogą przekroczyć ten rozmiar.
Druga partycja zostanie sformatowana z systemem plików obsługiwanym przez Grub i będzie hostować obrazy i pliki konfiguracyjne GRUB.
Ze względu na ten samouczek założę, że urządzenie, które chcemy przygotować /dev/sdb
.
Tabela partycji i partycja EFI
Pierwszą rzeczą do zrobienia jest stworzenie MSDOS
Tabela partycji na urządzeniu:
$ sudo rozstał -s /dev /sdb mklabel msdos
Po tym kroku możemy stworzyć Efi
partycjonowanie i sformatuj za pomocą Fat32
system plików. Zalecany rozmiar partycji jest 550 MIB
: Na mniejszych partycjach moglibyśmy otrzymać błąd, taki jak „za mało klastrów dla 32 -bitowego tłuszczu”:
$ sudo rozstał -s /dev /sdb mkpart podstawowy 1MIB 551MIB
Następnie kontynuujemy aktywację esp
I uruchomić
Flagi:
$ sudo rozstał -s /dev /sdb Zestaw 1 ESP na $ sudo rozdzielone -s /dev /sdb set 1 rozruch
Wreszcie musimy stworzyć Fat32
system plików:
$ sudo mkfs.fat -f32 /dev /sdb1
Partycja danych
Drugą partycją, którą musimy utworzyć, jest partycja danych, która będzie hostować obrazy ISO dystrybucji i pliki konfiguracyjne GRUB. Możemy dostosować rozmiar partycji do naszych potrzeb: im większa jest najwięcej obrazów, które będzie mógł zawierać. Tutaj użyjemy wszystkich pozostałych przestrzeni na urządzeniu:
$ sudo rozstał -s /dev /sdb mkpart podstawowy 551 MIB 100%
Możemy sformatować partycję za pomocą jednego z systemów plików obsługiwanych przez GRUB. W takim przypadku użyję ext4
:
$ sudo mkfs.ext4 /dev /sdb2
Utwórz punkty Mountpoints i zamontuj partycje
Następnym krokiem jest zamontowanie Efi
Partycja i partycja danych gdzieś w naszym systemie, abyśmy mogli stworzyć na nich niezbędne katalogi, zainstalować GRUB i umieścić nasze pliki ISO na miejscu:
# Utwórz MountPoints $ sudo mkdir /media /EFI, Data # zamontować partycję EFI $ sudo /dev /sdb1 /media /efi # zamontować partycję danych $ sudo /dev /sdb2 /media /dane
Instalowanie bootloadera Grub
Aby nasze urządzenie mogło pracować w obu dziedzictwo
I Uefi
tryby, dla których musimy zainstalować Grub i Grub Efi
. Na fedorze binarnie binarne, które się nazywa Grub2
i aby wygenerować niestandardową konfigurację w konfiguracji UEFI, instalacja moduły grub2-efi
Pakiet jest również konieczny. W niektórych innych dystrybucjach nazwa binarna jest po prostu „grub”:
# Instalowanie starszego Grub2 sudo Grub2-install \--Target = i386-pc \--recheck \ --boot-directory = "/media/data"/dev/sdb # instalowanie Gruba dla EFI sudo Grub2-install \- -target = x86_64-efi \--recheck \--removable \ --efi-directory = "/media/efi" \ --boot-directory = "/data/data/boot"
Jak można obserwować, w obu przypadkach używaliśmy /media/data/rozruch
Jako directory butowe Grub. Ten katalog zostanie automatycznie utworzony po uruchomieniu powyższych poleceń i będzie hostował pliki konfiguracyjne GRUB.
Skopiuj obrazy i utwórz grub.plik CFG
Aby utworzyć lub zaktualizować konfigurację GRUB w nowoczesnym systemie Linux, zwykle uruchamiamy Grub2-MkConfig
polecenie lub, w dystrybucjach opartych na debian, Update-Grub
Script opakowań. Te narzędzia wykonują potrzebne operacje automatycznie.
W naszym przypadku musimy jednak zabrudzić ręce i ręcznie utworzyć konfigurację. Nie wszystkie rozkłady wymagają tych samych dyrektyw, ale tutaj zobaczą kilka typowych przykładów. Najpierw powinniśmy utworzyć katalog, który będzie gospodarzem obrazów naszych dystrybucji:
$ sudo mkdir/media/data/boot/iso
Opcjonalnie możemy chcieć przejąć własność tego katalogu, aby móc łatwiej przenosić na nim obrazy. Zakładając ID
I kołowacizna
z 1000, my uruchomiono:
$ sudo chown 1000: 1000/media/data/boot/ISO
Załóżmy teraz, że chcemy dołączyć najnowszy obraz Fedora NetInstall w naszej konfiguracji. Najpierw musimy pobrać obraz w /Media/Data/ISO
informator:
$ wget -o/media/data/boot/iso/fedora-workstation-netinst-x86_64-28-1.1.ISO \ https: // pobierz.Fedoraproject.org/pub/fedora/linux/remises/28/WorkStation/x86_64/ISO/Fedora-Workstation-Netinst-X86_64-28-1.1.ISO
Następnie, po zakończeniu pobierania, musimy dodać do niego wpis w żarcie.CFG
plik w /media/data/boot/grub2
informator. Ponieważ jest to pierwszy wpis, dodajemy sam plik musi zostać utworzony:
Men MenEntry „Fedora-Workstation-Netinst-X86_64-28-1.1 "iSoFile ="/boot/iso/fedora-workstation-netinst-x86_64-28-1.1.ISO „Loopback Loop” $ ISOFILE "Linux (Loop)/Isolinux/vmlinuz ISO-SCAN/filename =" $ ISOFILE "Inst.scena2 = hd: etykieta = Fedora-WS-DVD-x86_64-28 Cicha initrd (pętla)/Isolinux/initrd.img
Struktura wejścia jest dość prosta: zdefiniowaliśmy Isofile
zmienna, z ścieżką do naszego obrazu jako wartości. Grub jest w stanie uruchomić się z ISO Directry i to właśnie Pętla
polecenie jest dla: W powyższym przykładzie obraz systemu plików zostanie zamontowany i udostępniony na pętla
urządzenie.
Linia zaczyna się od Linux
zawiera ścieżkę do vmlinuz
, który jest wykonywaczem jądra, a także inne dyrektywy rozruchowe. Wśród nich można zauważyć ISO-Scan/Filename
który jest potrzebny do znalezienia obrazu ISO na dysku za pomocą określonej ścieżki.
Wreszcie linia zaczyna się od initrd
Określa ścieżkę do initrd. Wszystkie te ścieżki są oczywiście w stosunku do urządzenia pętli, dlatego są one prefiksowane przez (pętla)
notacja.
Skąd znamy dyrektywy, których powinniśmy użyć w określonym przypadku? Jednym ze sposobów jest zamontowanie obrazu gdzieś w naszym systemie i spojrzenie na pliki umieszczone w katalogu Isolinux. Jednak wstępnie napisana konfiguracja już istnieje i łatwo jest znaleźć online.
Kolejny przykład: teraz dodamy najnowszy obraz wydania Ubuntu do naszego urządzenia rozruchowego:
$ wget http: //.Ubuntu.com/18.10/Ubuntu-18.10-Desktop-AMD64.ISO?_GA = 2.232120863.1006005768.1540658570-734439277.1540658570 \ -o/media/data/boot/iso/ubuntu -18.10-Desktop-AMD64.ISO
Teraz dodajemy wpis do pliku konfiguracyjnego:
Men MenEntry „Ubuntu 18.10 - Spróbuj bez instalowania „isofile =”/boot/iso/ubuntu -18.10-Desktop-AMD64.ISO "Loopback Loop" $ ISOFILE "Linux (Loop)/casper/vmlinuz ISO-SCAN/filename =" $ ISOFILE "boot = casper cichy splash --- initrd (Loop)/casper/initrd
Oto, jak powinien wyglądać nasze Multiboot-Menu w tym momencie:
Menu multiboot GrubZamykanie myśli
W tym samouczka. Po tej konfiguracji będziemy mogli uruchomić oba na oprogramowaniu układowym UEFI, wybierając obraz, który można uruchomić z menu Grub.
żarcie.Przedstawiona tutaj konfiguracja CFG jest absolutnie minimalna i może być dodatkowo dostosowana do wielu innych modułów i dostosowania innych ustawień, takich jak limit czasu Gruba: Konsulowanie oficjalnej dokumentacji Gruba to idealny sposób na rozpoczęcie badania wielu możliwości.
Powiązane samouczki Linux:
- Utwórz bootabilne USB Manjaro Linux
- Wprowadzenie do Grub Rescue
- Jak utworzyć rozruchowy Windows USB pod Linux
- Jak utworzyć USB z wieloboootem z Ventoy
- Ubuntu 22.04 Nie uruchamianie: Przewodnik po rozwiązywaniu problemów
- Utwórz rozruchowy Ubuntu 22.04 Dysk startupowy USB
- Jak zrobić rozruchowy USB z ISO w Linux
- Rzeczy do zainstalowania na Ubuntu 20.04
- Ubuntu 22.04 Kopia zapasowa i przywracanie systemu
- Utwórz rozruchowy Ubuntu 20.04 USB Stick na MS Windows 10