Legacy BIOS, UEFI i Secureboot Ready Ubuntu Live Image Dostosowanie
- 1305
- 363
- Roland Sokół
W tym artykule zawiera podstawową informację o tym, jak tworzyć dostosowany obraz Izohybryd Ubuntu na żywo, aby zacząć od własnego spin-offu Ubuntu Distro. Obraz wyjściowy będzie dostosowany obraz Ubuntu na żywo AMD64, zdolny do uruchamiania we wszystkich trzech trybach rozruchu: Legacy BIOS, UEFI i Secureboot.
Artykuł nie będzie szczegółowo opisał, jak wykonać faktyczną dostosowywanie systemu Squashfs. Zamiast tego skoncentruje się na wszystkich krokach dotyczących rozpakowania oficjalnego ISO Ubuntu i odkładania wszystkich części z powrotem w celu uzyskania rozruchowych izohybrydowych trybów BIOS, UEFI i Secureboot.
Wymagania wstępne
Jak zawsze zaczynamy od warunków wstępnych i opcjonalnej instalacji pakietu:
$ sudo apt-get instaluj zrzutek xorriso squashfs-tools gddrescue
Pobieranie obrazu ISO Ubuntu
Pierwszą częścią tworzenia własnego spersonalizowanego Linux Distro na podstawie Ubuntu Linux jest pobranie oficjalnego obrazu ISO Ubuntu. Utwórz nowy katalog Custom-ubuntu
Aby utrzymać wszystkie pliki wymagane przez ten projekt. EFI i jego funkcja Secureboot nie jest obsługiwana w architekturze i386, aby pobierz dowolną wersję obrazu ISO AMD64 i przechowuj ją w środku Custom-ubuntu
informator:
$ mkdir custom-ubuntu $ cd Custom-ubuntu/$ wget http: // url/to/ubuntu/image.ISO
Wyodrębnij zawartość ISO
Na tym etapie musimy zamontować i wyodrębnić całą treść z oficjalnego obrazu ISO Ubuntu. Do tego używamy Xorriso
Komenda. Poniżej Xorriso
polecenie wyodrębni wszystkie pliki z oryginalnego obrazu ISO do Custom-iso
informator. Np.:
$ xorriso -osirrox on -Indev Ubuntu -16.04-Desktop-AMD64.ISO -EKSTRACT / Custom -ISO
Proces dostosowywania
Na tym etapie wykonaj dostosowanie w środku Custom-iso
informator. Jak wspomniano wcześniej, proces dostosowania obrazu zależy od Ciebie. Poniżej możesz znaleźć kilka wskazówek na początek:
-
- Menu EFI Bootloader:
custom-iso/boot/grub/grub.CFG
- Menu rozruchowe nie-EFI Legacy:
custom-iso/aolinux/txt.CFG
- Squashfs FileSystem:
Custom-ISO/Casper/FileSystem.squashfs
- Menu EFI Bootloader:
Aby dostosować system plików Squashfs Pierwszy dekompresuj system plików.squashfs:
$ sudo unsquashfs custom-iso/casper/filesystem.Squashfs równoległe UNSQUASHFS: Korzystanie z 8 procesorów 180141 INODES (192876 bloków) do napisania [=====================/] 192876/192876 100% utworzonych 138452 plików utworzonych 18797 katalogi utworzone 41566 SymLinks utworzone 81 urządzeń utworzonych 0 FIFOS
Wprowadź squashfs za pomocą Chroot
polecenie, wprowadzaj zmiany i wyjdź:
$ sudo chroot squashfs -root / # Mount None -t Proc / proc; Zamontować brak -t sysfs /sys; Zamontować brak -t devpts /dev /pts
Ten punkt w środowisku chroot w nowym systemie. Dokonaj zmian, takich jak instalacja pakietu i wyjście chroot:
# Exit Exit $ sudo umount -f squashfs-root/proc squashfs-root/sys squashfs-root/dev/pTs
Skompresuj nowe squashfs:
$ sudo mksquashfs squashfs-root/custom-iso/casper/filesystem.squashfs
Tworzenie obrazu izohybrydowego ISO z rozruchu
Uzyskaj izohybrydowy MBR ISOHDPFX.kosz
z oryginalnego obrazu ISO Ubuntu za pomocą Dd
Komenda :
$ sudo dd if = Ubuntu-16.04-Desktop-AMD64.ISO BS = 512 Liczba = 1 OF = Custom-ISO/Isolinux/ISOHDPFX.kosz
Zbuduj nowy obraz izohybrydowy od wewnątrz Custom-iso
Katalog używa Xorriso
Komenda. Zanotuj ".”Na końcu Xorriso
Komenda:
$ CD Custom -iso/ $ sudo xorriso -as mkisofs -isohybrid -MBR Isolinux/ ISOHDPFX.bin \ -c Isolinux/boot.Cat -b Isolinux/Isolinux.bin -No-emul-boot -boot-load-size 4 \ -boot-info-table -eltorito-alt-boot -e boot/grub/efi.img -no-emul-boot \ -isohybrid-gpt-basdat -o… /custom-uubuntu.ISO . Xorriso 1.3.2: Rockridge FileSystem Manipulator, Libburnia Project. Drive bieżący: -outdev 'stdio:… /custom -ubuntu.ISO 'Bieżące media: plik STDIO, nadpisalny Status multimedialny: IS puste podsumowanie multimediów: 0 sesji, 0 bloków danych, 0 danych, 1444G DODATKOWANE DO ISO: Directory'/'='/home/lubos/custom-ubuntu/custom-custom/custom/custom/custom -ISO 'Xorriso: Aktualizacja: 549 plików dodane w 1 sekundach Xorriso: Aktualizacja: 549 plików dodane w 1 sekundach Xorriso: Uwaga: Kopiowanie do obszaru systemu: 512 bajtów z pliku/home/Lubos/custom-istu/custom-iso//custom-iso// Isolinux/ISOHDPFX.Bin 'Libisofs: Uwaga: Automatycznie dostosowana geometria MBR do 1017/89/32 Libisofs: Uwaga: Wyrównany rozmiar obrazu do cylindra przez 367 bloków Xorriso: Aktualizacja: 100.00% Wykonane obraz ISO Wyprodukowany: 724104 Sektory napisane na Medium: 724104 Sektory w LBA 0 Writing to 'Stdio:… /Custom-ubuntu.ISO „zakończyło się pomyślnie.
Powyższe polecenie spowoduje nowe … /Custom-ubuntu.ISO
Obraz izohybrydowy.
Uzyskanie informacji o obrazie
Jeśli wszystko poszło dobrze, nasze Custom-ubuntu
Katalog powinien teraz zawierać nowy obraz izohybrydowy Custom-ubuntu.ISO
:
$ ls custom-iso custom-ubuntu.ISO orig-iso squashfs-root Ubuntu-16.04-Desktop-AMD64.ISO
Tabela partycji:
$ sudo fdisk -lu custom -ubuntu.Dysk ISO Custom-ubuntu.ISO: 1.4 Gib, 1482964992 bajty, 2896416 Jednostki sektorowe: Sektory 1 * 512 = 512 Bajty Rozmiar sektora (logiczny/fizyczny): 512 bajtów/512 bajtów I/O Rozmiar (minimum/optymalne): 512 bajtów/512 Bytes Disklabel Identyfikator dysku: 0x751e87f5 Uruchomienie rozruchu Rozpoczęcie Sektory Sektory Rozmiar.ISO1 * 0 2896415 2896416 1.4G 0 puste niestandardowe.ISO2 540 5083 4544 2.2M EF EFI (FAT-12/16/32)
Informacje o nagłówku i katalogu:
$ sudo zrzut.Wpis sprawdzania poprawności ISO: Wskaźnik nagłówka: 0x01 (Wprowadzenie sprawdzania poprawności) Platformd: 0x00 (80x86) Id: „„ Suma kontrolna: 0x55aA Bajty: 0x55aA Katalog rozruchu Domyślny wpis: Wpis jest rozruchowym Emulacją nośnika rozruchowego 0000: 7C00) Typ systemu: 0 (0x00) Sektory ładowania: 4 (0x0004) Ładuj LBA: 701876 (0x000AB5B4) Wpis nagłówka sekcji: Wskaźnik nagłówka: 0x91 (Wpis na nagłówek sekcji końcowej) Platformid: 0xef (EFI) Wpisy: 1 identyfikator ID: 1 identyfikator ID : „” Katalog rozruchu Wpis: wpis jest rozruchowym Emulacją nośnika rozruchowego: Brak emulacji Media Adres obciążenia: 0 (0x0000) Typ systemu: 0 (0x00) Sektory ładowania: 4544 (0x11c0) ładowanie LBA: 135 (0x00000087)
Nagłówek sprawdzania poprawności Eltorito:
$ isoinfo -d -i custom -ubuntu.ISO CD-ROM znajduje się w formacie ISO 9660 Identyfikator systemu systemu: Identyfikator woluminu: ISOImage Zestaw woluminu ID: Wydawca ID: Data Preparer ID: Xorriso-1.3.2 2013.08.07.110001, Libisoburn-1.3.2, Libisofs-1.3.2, Libburn-1.3.2 Identyfikator aplikacji: Identyfikator pliku Copyright: Streszczenie Identyfikator pliku: Bibliograficzny identyfikator pliku: Zestaw woluminu Rozmiar: 1 Zestaw woluminu Numer sekwencji IS: 1 Logiczny rozmiar bloku IS: 2048 Rozmiar woluminu IS: 724104 EL TORITO VD Wersja 1 Znalezion W sektorze 117 No Joliet Prezentuj Rock Ridge Signatures Wersja 1 Znaleziono nagłówek sprawdzania poprawności Eltorito: HID 1 Arch 0 (x86) Id „Klucz 55 AA Eltorito Defaultboot Nagłówek: Bootid 88 (bootable) BOOT Media 0 (brak emulacji) segment ładowania 0 0 nsect 4 bootoff AB5B4 701876
Katalog rozruchu i odpowiednie ścieżki obrazu:
# Xorriso -Indev Custom -ubuntu.ISO -TOC -PVD_INFO XORRISO 1.3.2: Rockridge FileSystem Manipulator, Libburnia Project. Xorriso: Uwaga: Ładowanie drzewa obrazu ISO z LBA 0 Xorriso: Aktualizacja: 549 węzłów odczytane w 1 sekundach Xorriso: Uwaga: Wykryte informacje rozruchowe El-Torito, które są aktualnie ustawione na odrzucone prąd napęd.ISO „Media Bieżące: plik STDIO, nadpisalny status multimediów: jest napisany, jest dołączalny rekord rozruchu: El Torito, Izohybryd Isohybrid MBR wskazujący na podsumowanie mediów obrazu: 1 sesja, 724104 bloki danych, 1414m dane, 1442g darmowy identyfikator woluminu: 'Izoimage:' Izoimage: 'Izoimage „Drive bieżący: -Indev”.ISO „Typ napędu: dostawca„ Yoyodyne ”produkt„ Warp Drive ”Wersja„ FX01 ”Media Bieżące: plik stdio, nadpisalny status multimediów: jest napisane, jest załącznymi blokami multimedialnymi: 724104 czytelne, 755967444 Izohybrydowy MBR Isolinux wskazujący na rozruchu katalog obrazu: '/Isolinux/Boot.Cat 'Boot Image:'/Isolinux/Isolinux.bin ', boot_info_table = na obrazie rozruchowym:'/boot/grub/efi.IMG ', platform_id = 0xef TOC Układ: IDX, SBSector, rozmiar, identyfikator woluminów ISO Sesja: 1, 0, 724104S, Podsumowanie nośników ISOImage: 1 Sesja, 724104 Bloki danych, 1414m Dane, 1442G Bezpłatne nośniki NWA: 724128s Dysk: - Indev 'Custom-ubuntu.Adres PVD ISO: 16S Identyfikator woluminu: Izoimage Zestaw woluminu ID: Identyfikator wydawcy: Identyfikator przygotowawcy: Xorriso-1.3.2 2013.08.07.110001, Libisoburn-1.3.2, Libisofs-1.3.2, Libburn-1.3.2 Identyfikator aplikacji: Identyfikator systemu: CopyrightFile: Plik abstrakcyjny: Biblio Plik: Czas tworzenia: 2016020823095700 Modif. Czas: 2016020823095700 wydech. Czas: 0000000000000000 EFF. Czas: 0000000000000000
Uruchamianie nowego niestandardowego obrazu Ubuntu
Należy pamiętać, że nowy wyprodukowany niestandardowy obraz Ubuntu ma uruchamiać się we wszystkich trzech trybach, czyli Legacy BIOS, tylko UEFI, a także UEFI z włączoną opcją Secureboot. Nie jest to jednak gwarantowane i mogą wystąpić problemy z powodu błędów oprogramowania sprzętowego itp.
Aby uruchomić nowy niestandardowy obraz Ubuntu albo spal wynik ISO na dysku CD lub użyj ddrescue
Poleć do sklonowania go do swojego patyka USB:
$ sudo ddrescue custom-ubuntu.ISO /dev /sdx -force -d
Twój kij USB zawiera teraz niestandardowy system na żywo Ubuntu. Wszystko powinno być teraz gotowe do uruchomienia z patyka USB.
Powiązane samouczki Linux:
- Jak montować obraz ISO na Linux
- Ubuntu 20.04 Pobierz
- Rzeczy do zainstalowania na Ubuntu 20.04
- Rzeczy do zrobienia po zainstalowaniu Ubuntu 20.04 Focal Fossa Linux
- Utwórz bootabilne USB Manjaro Linux
- Ubuntu 20.04 Przewodnik
- Jak zrobić rozruchowy USB z ISO w Linux
- Jak otwierać pliki ISO na Ubuntu Linux
- Rzeczy do zainstalowania na Ubuntu 22.04
- Utwórz rozruchowy Ubuntu 22.04 Dysk startupowy USB
- « Konfigurowanie autoryzacji przywilejów Sudo w stylu Ubuntu w Debian Linux
- Instalacja CRAN R-3.2.1 na Debian Linux 8 Jessie »