Skip to content

Dlaczego tworzenie rozruchowego dysku USB jest bardziej złożone niż tworzenie rozruchowych dysków CD?

25 de lipiec de 2021
why is creating a bootable usb drive more complex than creating bootable cds 00

Tworzenie rozruchowych dysków CD i DVD jest zwykle prostym i nieskomplikowanym procesem, ale dlaczego tworzenie rozruchowych dysków flash jest bardziej złożone? Czy naprawdę jest tak duża różnica między tymi dwoma? Dzisiejszy post z pytaniami i odpowiedziami dla SuperUser zawiera odpowiedź na ciekawe pytanie czytelnika.

Dzisiejsza sesja pytań i odpowiedzi przychodzi do nas dzięki uprzejmości SuperUser — pododdziału Stack Exchange, społecznościowej grupy witryn internetowych z pytaniami i odpowiedziami.

Pytanie

Czytnik SuperUser William chce wiedzieć, dlaczego tworzenie rozruchowego dysku USB jest bardziej złożone niż tworzenie rozruchowych płyt CD:

Stworzenie bootowalnej płyty CD jest moim zdaniem naprawdę proste, wystarczy nagrać plik ISO na płytę i jest ona bootowalna. Teraz, jeśli chodzi o dyski USB, masz wiele opcji. Czy ktoś mógłby wyjaśnić różnicę między tymi dwoma i może podać krótki przegląd różnych opcji?

1627212576 941 Dlaczego tworzenie rozruchowego dysku USB jest bardziej zlozone niz tworzenie

Dlaczego tworzenie rozruchowego dysku USB jest bardziej skomplikowane niż tworzenie rozruchowych dysków CD?

Odpowiedź

Współtwórca SuperUser, Akeo, ma dla nas odpowiedź:

Deweloper Rufusa tutaj. Po pierwsze, wiele z wymienionych opcji jest wymienionych tylko podczas uruchamiania Rufusa w Tryb zaawansowany (kiedy Sekcja opcji zaawansowanych jest wyświetlany), ponieważ są przeznaczone dla osób, które już wiedzą, do czego służą.

Na początek musisz zrozumieć, że format ISO nigdy nie był przeznaczony do uruchamiania z USB. Plik ISO jest kopią 1:1 dysku optycznego, a nośniki dysków optycznych bardzo różnią się od nośników USB, zarówno pod względem struktury ich programów ładujących, używanego systemu plików, sposobu ich partycjonowania (są nie) i tak dalej.

Tak więc, jeśli masz plik ISO, po prostu nie możesz zrobić z nośnikiem USB tego, co możesz zrobić z dyskiem optycznym, który jest odczytywany z każdego bajtu pliku ISO i kopiowany w takiej postaci, w jakiej jest, po kolei, na dysk (jakie CD Aplikacje nagrywające /DVD działają podczas „pracy” z plikami ISO).

Nie oznacza to, że ten rodzaj kopiowania 1:1 nie może istnieć na nośniku USB, po prostu kopie 1:1 na nośniku USB będą zupełnie inne niż kopie 1:1 na dyskach optycznych i dlatego nie są wymienne (poza używaniem ISOHybrid obrazy przygotowane do pracy jako kopie 1:1 na nośniku USB i nośniku optycznym). Dla przypomnienia, w terminologii Rufusa kopia 1:1 na nośniku USB nazywa się obrazem DD (możesz zobaczyć tę opcję na liście), a niektóre dystrybucje, takie jak FreeBSD lub Raspbian, faktycznie dostarczają obrazy DD do instalacji USB, obok ISO pliki do nagrywania płyt CD/DVD.

W ten sposób ustaliliśmy, że pliki ISO są w rzeczywistości słabo przystosowane do tworzenia rozruchowych nośników USB, ponieważ są one odpowiednikiem zapewnienia okrągłego kołka pasującego do mniejszego kwadratowego otworu, a zatem okrągły kołek musi zostać zmieniony, aby go dopasować.

Teraz możesz się zastanawiać, czy pliki ISO są tak słabo przystosowane do tworzenia rozruchowych nośników USB, dlaczego większość dystrybutorów systemów operacyjnych udostępnia pliki ISO zamiast obrazów DD. Cóż, poza względami historycznymi, jednym z problemów związanych z DD Images jest to, że ponieważ są to partycjonowany system plików, jeśli utworzysz kopię 1:1 na nośniku USB, która jest większa niż ta używana przez osobę, która utworzyła obraz, wtedy uzyskasz pozorną „pojemność” nośnika USB zmniejszoną do rozmiaru używanego do tworzenia oryginalnego obrazu DD.

Ponadto, podczas gdy dyski optyczne, a tym samym pliki ISO, mogą zawsze używać tylko jednego z dwóch systemów plików (ISO9660 lub UDF), z których oba są bardzo dobrze obsługiwane we wszystkich głównych systemach operacyjnych przez bardzo długi czas (i pozwalają rzucić okiem w zawartości obrazu przed lub po jego użyciu), obrazy DD mogą dosłownie używać dowolnego z tysięcy różnych systemów plików, które istnieją. Oznacza to, że nawet po utworzeniu rozruchowego nośnika USB możesz nie być w stanie zobaczyć na nim żadnej zawartości, dopóki go nie uruchomisz. Na przykład będzie tak w przypadku korzystania z obrazów USB FreeBSD w systemie Windows. Po utworzeniu rozruchowego nośnika USB system Windows nie będzie mógł uzyskać dostępu do żadnej zawartej na nim zawartości, dopóki go nie sformatujesz.

Dlatego dostawcy zwykle chcą trzymać się plików ISO tam, gdzie to możliwe, ponieważ (zazwyczaj) zapewnia to lepsze wrażenia użytkownika we wszystkich systemach operacyjnych. Ale oznacza to również, że musi (zazwyczaj) nastąpić pewna konwersja, aby nasz okrągły kołek ISO mógł ładnie pasować do mniejszego kwadratowego otworu „USB media”. Jak to się ma do listy opcji? Dochodzimy do tego.

Jedną z pierwszych rzeczy, które zwykle trzeba wykonać, jest system plików ISO9660 lub UDF, z którego korzystają pliki ISO. W większości przypadków oznacza to wyodrębnianie i kopiowanie wszystkich plików z pliku ISO do systemu plików FAT32 lub NTFS, z którego zwykle korzystają rozruchowe dyski flash USB. Ale oczywiście oznacza to, że ktokolwiek stworzył system ISO, musiał wprowadzić pewne postanowienia dotyczące obsługi FAT32 lub NTFS jako systemu plików do użytku lub instalacji na żywo (co nie wszyscy ludzie, zwłaszcza ci, którzy zbytnio polegają na ISOHybrid, mają tendencję do zrobienia).

Następnie jest sam program ładujący, pierwszy bit kodu, który jest wykonywany podczas uruchamiania komputera z nośnika USB. Niestety, programy ładujące HDD/USB i ISO to bardzo różne bestie, a oprogramowanie układowe BIOS lub UEFI również traktuje USB i nośniki optyczne w bardzo różny sposób podczas procesu uruchamiania. Dlatego zwykle nie można pobrać programu ładującego z pliku ISO (który zwykle byłby programem ładującym El Torito), skopiować go na nośnik USB i oczekiwać, że się uruchomi.

Teraz nadchodzi część, która dotyczy naszej listy opcji. Ponieważ Rufus będzie musiał dostarczyć odpowiedni element programu ładującego, po prostu nie może uzyskać go z pliku ISO. Jeśli mamy do czynienia z plikiem ISO opartym na Linuksie, to są szanse, że użyje on GRUB 2.0 lub Syslinux, więc Rufus zawiera możliwość zainstalowania wersji GRUB lub Syslinux opartej na USB (ponieważ plik ISO zwykle zawiera tylko wersję specyficzną dla ISO tych).

Zwykle odbywa się to automatycznie po wybraniu i otwarciu pliku ISO, ponieważ Rufus jest wystarczająco inteligentny, aby wykryć, jakiego rodzaju konwersję musi zastosować. Ale jeśli chcesz się pobawić, Rufus daje ci możliwość zainstalowania niektórych pustych programów ładujących, które umożliwiają uruchamianie z monitem GRUB lub Syslinux. Stamtąd, jeśli znasz te typy programów ładujących, możesz tworzyć/testować własne pliki konfiguracyjne i wypróbować własny niestandardowy proces uruchamiania oparty na Syslinux lub GRUB (ponieważ na tym etapie wystarczy skopiować/edytować pliki na nośnik USB, aby to zrobić).

Możemy więc teraz przejrzeć opcje, które znajdziesz na liście:

  • MS-DOS: Tworzy to pustą wersję MS-DOS (edycja Windows Me), co oznacza, że ​​uruchomisz się do wiersza poleceń MS-DOS i to wszystko. Jeśli chcesz uruchomić aplikację DOS, musisz ją skopiować na nośnik USB. Zwróć uwagę, że ta opcja jest dostępna tylko w systemie Windows 8.1 lub starszym, ale nie w systemie Windows 10, ponieważ firma Microsoft usunęła pliki instalacyjne systemu DOS z systemu Windows (i tylko firma Microsoft może redystrybuować te pliki).
  • Darmowy dos: Tworzy to pustą wersję Darmowy dos. FreeDOS to darmowa wersja oprogramowania MS-DOS, która jest w pełni kompatybilna z MS-DOS, ale ma również tę zaletę, że jest open source. W porównaniu do MS-DOS, każdy może redystrybuować FreeDOS, więc pliki startowe FreeDOS są zawarte w Rufus.
  • Obraz ISO: Jest to opcja, której powinieneś użyć, jeśli masz startowy plik ISO i chcesz go przekonwertować na startowy nośnik USB. Należy pamiętać, że ponieważ (zwykle) musi nastąpić konwersja i istnieją miliony sposobów na utworzenie rozruchowego pliku ISO, nie ma gwarancji, że Rufus będzie w stanie przekonwertować go na nośnik USB (ale zawsze powie, czy to tak jest).
  • Obraz DD: Jest to metoda, której powinieneś użyć, jeśli masz obraz dysku startowego, taki jak te dostarczane przez FreeBSD, Raspbian itp. Pliki z rozszerzeniem .vhd są również obsługiwane (który jest wersją obrazu DD firmy Microsoft) oraz są skompresowane te (.gz, .zip, .bz2, .xz itp.).

Cztery powyższe opcje to jedyne, które zobaczysz w Tryb zwykły. Ale jeśli uruchomisz Rufusa w Tryb zaawansowany, będziesz mieć również dostęp do następujących opcji:

  • Syslinux x.yz: Instaluje zaślepkę Syslinux program ładujący, który przeniesie Cię do znaku zachęty Syslinux i niewiele więcej. Powinieneś wiedzieć, co musisz zrobić od tego momentu.
  • GRUB/Grub4DOS: Tak samo jak powyżej, ale dla ŻARCIE/Grub4DOS odpowiednio. Spowoduje to wyświetlenie monitu GRUB, ale do Ciebie należy rozwiązanie reszty.
  • ReactOS: Instaluje eksperymentalny ReactOS program rozruchowy. Od ostatniego razu, kiedy sprawdzałem, ReactOS nie uruchamia się tak dobrze z nośnika USB. Jest tam, ponieważ było łatwe do dodania i z nadzieją, że może pomóc w rozwoju ReactOS.
  • UEFI-NTFS: Wymaga to wybrania NTFS jako systemu plików i zainstalowania pustego miejsca UEFI-NTFS program rozruchowy. Umożliwia to uruchamianie z NTFS w czystym trybie UEFI (nie CSM) na platformach UEFI, które nie zawierają sterownika NTFS. Ponieważ jest pusty, będziesz musiał skopiować własne /efi/boot/bootia32.efi lub /efi/boot/bootx64.efi na partycję NTFS, aby była użyteczna. UEFI-NTFS jest automatycznie używany przez Rufusa do obejścia maksymalnego rozmiaru pliku 4 GB FAT32, co na przykład umożliwia instalację Microsoft Server 2016 w trybie UEFI bez konieczności dzielenia jego 4,7 GB pliku install.wim.

Mam nadzieję, że to pomoże. Jest to uproszczony przegląd, więc mam nadzieję, że ludzie nie zaczną czepiać się aspektów, które zostały celowo uproszczone lub milczące (takie jak świadomość, że można mieć dyski flash USB bez partycji, aby USB i nośniki optyczne korzystały z tego samego pliku i że niektóre procesy rozruchowe mają możliwość rozszerzenia rozmiaru partycji na nośniku USB w celu rozwiązania problemu z mniejszą pozorną pojemnością).

Masz coś do dodania do wyjaśnienia? Dźwięk w komentarzach. Chcesz przeczytać więcej odpowiedzi od innych doświadczonych technologicznie użytkowników Stack Exchange? Sprawdź pełny wątek dyskusji tutaj.

Źródło obrazu: William (Superużytkownik)

Czy ten post był pomocny?