Jak tworzyć wielobootowe USB z Linux
- 1094
- 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ś
Efiprzegroda - 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 Grub Zamykanie 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