Pobierz RUFUSLDR stąd: https://dl.dropboxusercontent.com/u/20170669/RUFUSLDR
Pobierz ms-sys tutaj: http://prdownloads.sourceforge.net/ms-sys/ms-sys-2.3.0.tar. gz? download
Przeciągnij folder ms-sys-2.3.0 w miejsce, w którym obsługiwana jest flaga wykonania (najprawdopodobniej folder domowy Linux). cd tam terminal, wpisz „make”, a następnie „sudo make install”. Naprawdę łatwe.
Współczuję tobie. Próbowałem samouczki na temat tworzenia, z systemu Windows, dysku USB rozruchowego do instalatora WinXP. Diskpart One, WinToFlash One i HP USB Format Utility One wszystko mnie zawiodły.
Rufus faktycznie działa. Ale to narzędzie tylko dla systemu Windows. Możesz zainstalować VirtualBox, zainstalować Windows w VirtualBox, zainstalować Rufus na maszynie wirtualnej, udostępnić dysk USB maszynie wirtualnej i poprosić Rufus, aby napęd USB uruchomił się w instalatorze systemu Windows XP.
Rufus obecnie nie obsługuje tworzenia rozruchowego instalatora USB WinXP przy użyciu luźnych plików instalacyjnych. Musi zobaczyć iso. Więc masz VirtualBox zamontować ISO, aby zainstalować XP na maszynie wirtualnej, ale to pokazuje się jako luźne pliki (nie zobaczy ISO). Aby więc Rufus zobaczył sam plik ISO, udostępnij katalog na komputerze hosta, w którym plik ISO jest przechowywany na maszynie wirtualnej. Następnie skieruj Rufusa w miejsce, w którym plik ISO znajduje się na dysku sieciowym maszyny wirtualnej (Z: \ lub cokolwiek innego).
BTW, możesz też po prostu skopiować obraz dyskietki FreeDOS na dysk, skopiować również pliki z ISO, i użyć memdisk, aby uruchomić komputer z dyskietki. Z FreeDOS uruchom i386 \ winnt.exe. Wadą jest to, że (chyba że znalazłeś sterownik DOS NTFS?) Będziesz mógł zainstalować system Windows tylko na woluminie FAT32, a nie na NTFS.
Proces Rufusa może być boleśnie powolny z powodu bycia na maszynie wirtualnej (nie rozumiem dlaczego, być może byłem głupi, jak ustawiłem ustawienia). Dla mnie osobiście na moim laptopie zajęło to godzinę, 5 minut i 40 sekund. Powiem ci, jak to zrobić bez Rufusa w Linuksie. Będziemy imitować Rufusa, ale po pierwsze, jeśli zdecydujesz się na użycie Rufusa z maszyny wirtualnej, pamiętaj, że Linux nie będzie w stanie zobaczyć partycji po zakończeniu Rufusa:
Rufus nie tylko formatuje partycję, ale także ponawia MBR (w tym tablicę partycji). Najpierw zapisz wszystko z pendrive'a.
Uwaga: Rufus określa sztuczny MBR, który po wykonaniu przez BIOS zamienia pierwsze dwa dyski BIOS (0x80 zmienia się na 0x81 i odwrotnie). Dodatkowo umieszcza identyfikator BIOS w tym sztucznym MBR, aby dysk zaczął się jako 0x81 (drugi dysk). Dlaczego ci to mówię: sztuczka MBR powoduje, że Linux (i Grub2 v2.00) nie może odczytać tablicy partycji. Windows będzie z tym w porządku (nadaj mu literę dysku i wszystko), a dysk będzie rozruchowy. Ale Linux nie zobaczy partycji i dlatego nie będzie w stanie jej zamontować. Nie ma problemu. Zapisz MBR do pliku:
sudo dd if=/dev/sdX of=~/Desktop/rufus_trick_mbr count=1 bs=512
Teraz użyj fdisk, aby nadać mu nowy MBR. Nawet nie dotykasz samej partycji, po prostu dajesz jej nowy MBR. Tak naprawdę nic nie jest robione w fdisk, dopóki nie naciśniesz „w”.
sudo fdisk /dev/sdX
p //Print partition table. fdisk, unlike the kernel, CAN make sense of the partition table as-is.
You'll probably see the partition start on sector 2048 and go to the end.
o //Tells fdisk to make a new partition table
n //create new partition. By defualt, fdisk should also make the partition start at sector 2048 and go to the end. Make sure the partition starts where it used to and ends where it used to.
select primary
t //change partition type id
7 //for ntfs
p //Make sure everything is right. And no, don't worry about the boot flag.
w //when you're sure. Remember, we saved the old mbr and can undo any mess-ups made here with dd.
Możemy również tworzyć nowe wiadomości z dd:
HAMMOND - „Nie martw się, już nie popełniam tych samych błędów”. MALCOLM - „Nie, nie, robisz wszystkie nowe.”
-Jurassic Park II, The Lost World
Odłącz i ponownie podłącz pendrive. Jeśli nic więcej, / dev / sdXY powinien przynajmniej istnieć teraz (zanim istniał tylko / dev / sdX - nie ma „Y”). Aby go zamontować, należy zainstalować NTFS-3G. Jeśli jest zainstalowany, sprawdź, czy został już zamontowany (powinien pojawić się na pulpicie lub w lewym panelu przeglądarki plików, jeśli tak jest). Jeśli nie, zamontuj go sam. Możesz spróbować najpierw zainstalować go za pomocą przeglądarki plików. Oto jak ręcznie go zamontować:
sudo mount -t ntfs-3g /dev/sdXY [mount point]
Rób, co chcesz z tym zrobić w systemie Linux.
Jeśli chcesz, umieść z powrotem rufus_trick_mbr:
sudo dd if=~/Desktop/rufus_trick_mbr of=/dev/sdX bs=512 count=1 //No "Y"! Just /dev/sdX!
Ale nie musisz przywracać sztuczki MBR. Zamiast tego możesz użyć polecenia ntldr Grub2, aby załadować / BOOTMGR. (Najprawdopodobniej będzie trzeba wykonać polecenie „insmod ntldr”, aby wstawić moduł ntldr.)
Oto co się dzieje:
Rufus określa sztuczny MBR za pomocą jednego wpisu tablicy partycji, formatuje tę partycję jako NTFS, umieszcza rzeczy w bootsector tej partycji, o które dbają tylko bootloadery w stylu ntldr, kopiuje pliki z ISO na partycję, kopiuje NTDETECT.COM z i386 i umieszcza go na poziomie głównym, kopiuje txtsetup.sif z folderu i386, umieszcza go na poziomie głównym ORAZ dodaje wiersz, o którym github, c0m / pbatard / rufus / wiki / Targets-Supported nie wspomina, więc dziękuję „openssl md5” i cmp za wskazanie mi tego.
drum roll : I kopiuje SETUPLDR.BIN z folderu i386 do poziomu głównego, zmienia nazwę na BOOTMGR ORAZ łata ten plik binarny. Tak, to podstęp. SETUPLDR.BIN po uruchomieniu z płyty CD wykrywa, że został uruchomiony z płyty CD i szuka rzeczy w folderze i386. Po uruchomieniu z dysku twardego wykrywa, że uruchomił się z dysku twardego, zamiast tego szuka folderu minint, a jeśli zostanie znaleziony, szuka folderu $ WIN_NT $ ~ BT, aby rozpocząć drugą fazę instalacji (po ponownym uruchomieniu i po uruchomieniu na docelowym dysku twardym). Nie można nawet zmienić nazwy „i386” na „minint”. Musisz zmodyfikować SETUPLDR.BIN, aby przeglądał folder i386 nawet po uruchomieniu z dysku twardego (takiego jak dysk USB).
Myślę, że błędem jest dla Rufusa nazywanie zmodyfikowanego pliku binarnego „BOOTMGR”. Tego właśnie używają Vista i 7 (i 8?), A nie XP. BOOTMGR nawet nie szuka pliku boot.ini takiego jak NTLDR (którego SETUPLDR jest zmodyfikowaną wersją). Zmieniłem więc nazwę na „RUFUSLDR” i przygotowałem do pobrania. Ponadto chcesz odróżnić to od innych BOOTMGR, które możesz biegać.
Rufus zmusza cię do sformatowania dysku jako NTFS, jeśli zastosujesz iso instalatora Windows. Uważam, że jest to spowodowane podglądem dewelopera Windows 8 x64 zawierającym plik> 4 GB, którego FAT32 nie obsługuje. Ale to nie dotyczy tutaj. Nie mamy żadnych plików w pobliżu 4 GB. Możesz użyć FAT32 i wszystko będzie dobrze.
Naśladujmy Rufusa z Linuksa (lub chyba dowolnego unixoidu):
Upewnij się, że dysk jest skonfigurowany w MBR. fdisk wyświetli ostrzeżenie, jeśli jest to GPT, a także da ci opcję, aby ustawić go w MBR (opcja „o”). Mniej niszczycielsko, gdisk pozwoli ci przekonwertować dysk ze schematem GPT na dysk ze schematem MBR, jeśli masz 4 lub mniej partycji. Gdisk pozwoli ci również przekształcić dysk w hybrydowy dysk ze schematem MBR / GPT, na którym możesz wybrać do 3 partycji, aby były widoczne dla nieświadomych GPT (czwarte miejsce jest zajęte na partycję ochronną, która pokrywa resztę). Nawet jeśli używasz tylko fdisk, dopóki nowy wpis tablicy partycji nadal zaczyna się i zatrzymuje w tych samych miejscach, nie stracisz partycji; po prostu pamiętaj o wyzerowaniu dodatkowego GPT na końcu dysku.
Upewnij się, że partycja jest sformatowana jako FAT32 lub NTFS. Pamiętaj, że FAT32 jest bardziej przyjazny dla różnych platform. Jeśli jest już sformatowany jako FAT32 lub NTFS, nie musisz go formatować:
sudo blkid / dev / sdXY [powie tutaj system plików wraz z UUID, etykietą itp.]
Jeśli nie jest to FAT32 lub NTFS, wykonaj jedną z następujących czynności:
sudo mkdosfs -F 32 -n [insert volume label (name) here] /dev/sdXY
sudo mkntfs -L [insert volume label here] /dev/sdXY
3 Zastosuj ten magiczny program rozruchowy, o którym DOS / Windows jest tak wybredny:
sudo ms-sys -w /dev/sdXY
* O tym - „-w” oznacza „pisać” - tylko pisanie. W przeciwieństwie do określania, co pisać. Zatem „-w” jest trybem automatycznym ms-sys: określa najlepszy rodzaj danych bootsectora do zapisania w danej sytuacji. Byłem zaskoczony, że auto ma rację: dla partycji FAT32, muszę ms-sys męska FAT32 DOS bootsektora nie ms-sys męska FAT32 NT sektora rozruchowego, co myślałem, że trzeba załadować derivitive z _NT_LDR (NT Loader) (SETUPLDR. BIN to zmodyfikowana wersja NTLDR, a RUFUSLDR zmodyfikowana wersja SETUPLDR.BIN).
4 Dla pewności napisz również elementy geometrii na partycji. Nie zmienia to geometrii dysku, pozostawia tylko notatkę o geometrii dla rzeczy zbyt leniwych, aby samodzielnie dowiedzieć się o geometrii:
sudo ms-sys -p /dev/sdXY
* Uwaga: krok 4 nie dotyczy NTFS. * Kolejna uwaga: upewnij się, że wersja jądra Linuksa to> 2.6. Jądro 2.6 miało błąd, który zgłosił nieprawidłową liczbę głowic (kwestia geometrii). Dlatego opcja „-p” może zapisywać nieprawidłowe informacje w jądrze 2.6. Obejściem jest opcja „-H”, która pozwala użytkownikowi ręcznie określić liczbę głowic do nagrania. Ale tak naprawdę, po prostu zaktualizuj jądro. Jeśli korzystasz z wersji 2.6, możesz się spóźnić. Aby podać wersję jądra, wykonaj:
uname -r
5 Skopiuj pliki z ISO, folderu, cokolwiek. Wiele dystrybucji montuje pliki isos po ich dwukrotnym kliknięciu lub przynajmniej oferuje opcję otwarcia za pomocą narzędzia do archiwizacji, klikając prawym przyciskiem myszy> otwórz za pomocą. Jeśli tak nie jest, zrób to:
sudo mount -o loop (path to iso) (path to desired mount point)
6 Umieść zmodyfikowany plik SETUPLDR.BIN (RUFUSLDR) na poziomie głównym.
7 Skopiuj NTDETECT.COM z i386 na poziom główny.
8 Skopiuj txtsetup.sif z i386 na poziom główny.
9 Otwórz nową kopię txtsetup.sif i Ctrl + F dla „[SetupData]”. Tuż pod tym nagłówkiem umieść ten wiersz:
SetupSourceDevice = "\device\harddisk1\partition1"
10 Zainstaluj program ładujący zdolny do ładowania programów ładujących typu NTLDR na dysk lub inny dysk, którego użyjesz do uruchomienia tego dysku, lub użyj istniejącego programu ładującego. Jeśli na dysku twardym jest zainstalowany Grub2 w celu uruchomienia Ubuntu, możesz po prostu nacisnąć „c”, gdy zobaczysz menu, aby przejść do wiersza poleceń Grub. Jeśli zamiast tego masz Syslinux, możesz go również użyć. Po prostu zostanę przy Grub2 na samouczku.
Aby zainstalować Grub2 na dysku (co może nie być konieczne, jeśli używasz istniejącego programu ładującego dysk twardy):
sudo grub-install --boot-directory=[mount point of disk, not iso] [/dev/sdxy]
11a. Wykonaj wpis grub.cfg lub ręcznie wykonaj następujące czynności:
grub> insmod ntldr //Inserts (loads) the Grub2 module used for loading NTLDR-style bootloaders.
grub> set root=(hdx,msdosy) //Replace x and y as appropriate. Sets the current directory to the target partition. Probably not needed if you booted off the drive you put the WinXP installer files on, but we always do this. Use "ls" to list all drives and partitions. If you only have one MBR-schemed disk with only one (or however many you made) partition(s), you'll be able to pick out which is your thumb drive. If not, try one and do "ls /". It will list the files on the root level of that partition. That should be a dead-giveaway. Notice that "ls" (without slash) lists drives and partitions, and "ls /" (with slash) lists the files on the root level of the partition that is the current working directory.
grub> ntldr /RUFUSLDR //Tells it to load RUFUSLDR.
grub> boot //That's the "go button".
11b. Jako wpis grub.cfg wyglądałby tak (nie umieszczaj nawiasów w linii, to Grub, nie college !!):
menuentry "Windows XP Installer" {
insmod ntldr
search --no-floppy --fs-uuid --set=root [insert filesystem's UUID here, obtaind by "sudo blkid /dev/sdXY"]
ntldr /RUFUSLDR
}
// Zauważ, że powyższe jest znacznie bardziej pewnym sposobem na ustawienie bieżącego katalogu roboczego Grub. Należy również pamiętać, że „boot” jest sugerowany dla wpisów w pliku konfiguracyjnym.
// Zauważ też, że chociaż zwyczajowo jest dostępna linia „driveemap -s (hd0) $ {root}” do uruchamiania systemu Windows (czyni dysk Windows pierwszym napędem BIOS), to samo w przypadku mojego instalatora USB Windows XP spowodowało, że po prostu uruchom ponownie po próbie uruchomienia bootloadera w stylu ntldr. Jeśli wszystko nie działa i jesteś pewien, że wykonałeś wszystkie kroki, spróbuj „driveemap -s (hd0) $ {root}”
// Należy pamiętać, że w czasie uruchamiania włożono więcej niż jeden dysk USB. Twój system uruchomi najbardziej dominujący rozruchowy dysk USB, gdy zostanie wyświetlony monit o uruchomienie USB. Możesz systematycznie ustalać, które porty USB są dominujące, z dwoma dyskami rozruchowymi USB. Dla mnie nie musiałem próbować wielu kombinacji, ponieważ moje porty USB są ułożone w kolumny, a całe kolumny dominowały w innych kolumnach. W kolumnie dominowała wyższa.
// Pamiętaj, że jeśli uruchamiasz instalator USB systemu Windows XP z Grub2 na innym dysku, Grub2 zobaczy tylko najbardziej dominujący dysk USB (przynajmniej w moim systemie). Upewnij się więc, że instalator WinXP USB znajduje się w najczęściej używanym gnieździe. (Lub po prostu zmień oba, jeśli masz dwa napędy USB, a Grub2 zobaczy napęd nieobsługujący WinXP.) Oczywiście nie jest to problem, jeśli włożony jest tylko jeden napęd USB.
// Jeśli po prostu uruchomi się ponownie, upewnij się, że zrobiłeś „sudo ms-sys -w / dev / sdXY”, a jeśli FAT32, „sudo ms-sys -p / dev / sdXY”, I skopiowałem NTDETECT.COM z i386 na poziom główny.
// Jeśli powie, że nic nie może znaleźć, być może nie używasz zmodyfikowanego programu ładującego. Upewnij się, że używasz zmodyfikowanego. (Będzie mieć inny md5 niż i386 / SETUPLDR.BIN.) Upewnij się także, że txtsetup.sif i NTDETECT.COM są na poziomie głównym.
// Jeśli mówi o włożeniu dysku CD z Windows XP SP3, upewnij się, że dodałeś ten wiersz do txtsetup.sif ORAZ że twoje pliki CD Ident są dobre (WIN51, WIN51IP itp.). Wystarczy usunąć pliki wcięć CD i w razie wątpliwości skopiować je z powrotem.
// Jeśli powiesz, że musisz włożyć dysk, aby udowodnić, że kwalifikujesz się do instalacji uaktualniającej, czy są jakieś dyski GPT? Być może to powoduje problem. Odłącz wszelkie dyski skonfigurowane w GPT lub przekonwertuj je na MBR w systemie Linux. (jak z kolei wyłącz komputer, odłącz od sieci, spróbuj ponownie. Nie tylko szarpnij.)
// BTW, aby zainstalować TO na dysku USB, musisz zrobić hack na ngine.de/article/id/8. Tak, można zainstalować system Windows XP Z USB NA USB.
Cieszyć się,
Jake XD