Zastanawialiście się kiedyś, jak odpalić Windowsa XP na dysku USB?
Zwykle to kończyło się BSoD'em. "No dobrze ale jak się do tego zabrać?" - pewnie myślicie zniecierpliwieni ;)
Musimy się uzbroić w:
- najlepiej drugi, działający system jedynej słusznej firmy
- dysk USB
- płytkę z Windowsem
- jakiś program do zamiany plików w ISO (np. WinISO)
- Majkroszoftowe CAB SDK
- program do nagrywania płyt
- no i w najważniejsze - cierpliwość ;)
Gdy mamy wszystko możemy zabrać się do roboty. Najpierw musimy zamienić płytkę Windowsową na plik ISO (w WinISO "Actions -> Make ISO" ;)) Kolejnym krokiem będzie wypakowanie plików (z folderu I386):
- TXTSETUP.SIF
- DOSNET.INF
- USB.IN_
- USBPORT.IN_
- USBSTOR.IN_
Teraz trzeba rozpakować pliki, które mają "IN_" na końcu rozszerzenia. Aby to zrobić wystarczy odpalić "cabarc x PLICZEK.IN_". Po wypakowaniu można usunąć te pliki. Teraz pora zabrać się do modyfikacji plików.
Pierwszy plik -
TXTSETUP.SIFNajpierw przenosimy wybrane punkty z sekcji [InputDevicesSupport.Load] do [BootBusExtenders.Load] jak jest pokazane niżej:
[BootBusExtenders.Load]
pci = pci.sys
acpi = acpi.sys
isapnp = isapnp.sys
acpiec = acpiec.sys
ohci1394 = ohci1394.sys
usbehci = usbehci.sysusbohci = usbohci.sysusbuhci = usbuhci.sysusbhub = usbhub.sysusbstor = usbstor.sys[InputDevicesSupport.Load]
usbehci = usbehci.sysusbohci = usbohci.sysusbuhci = usbuhci.sysusbhub = usbhub.sysusbccgp = usbccgp.sys
hidusb = hidusb.sys
serial = serial.sys
serenum = serenum.sys
usbstor = usbstor.sysTeraz robimy to samo dla [BootBusExtenders] i [InputDevicesSupport]
[BootBusExtenders]
pci = "PCI-Bustreiber",files.pci,pci
acpi = "ACPI Plug & Play-Bustreiber",files.acpi,acpi
isapnp = "ISA Plug & Play-Bustreiber",files.isapnp,isapnp
acpiec = "Integrierter ACPI-Controllertreiber",files.none,acpiec
ohci1394 = "IEEE-1394-Bus-OHCI-konformer Anschlusstreiber",files.ohci1394,ohci1394
usbehci = "Erweiterter Hostcontroller",files.usbehci,usbehciusbohci = "Open Hostcontroller",files.usbohci,usbohciusbuhci = "Universeller Hostcontroller",files.usbuhci,usbuhciusbhub = "Standard-USB-Hubtreiber",files.usbhub,usbhubusbstor = "USB-Speicherklassentreiber",files.usbstor,usbstor[InputDevicesSupport]
usbehci = "Erweiterter Hostcontroller",files.usbehci,usbehciusbohci = "Open Hostcontroller",files.usbohci,usbohciusbuhci = "Universeller Hostcontroller",files.usbuhci,usbuhciusbhub = "Standard-USB-Hubtreiber",files.usbhub,usbhubhidusb = "HID-Parser",files.hidusb,hidusb
serial = "Treiber f�r seriellen Anschluss",files.none,serial
serenum = "Enumerator f�r seriellen Anschluss",files.none,serenum
usbstor = "USB-Speicherklassentreiber",files.usbstor,usbstorusbccgp = "USB Generic Parent Driver",files.usbccgp,usbccgp
Następnie do sekcji [HiveInfs.Fresh] dodajemy
AddReg = usbboot.inf,usbservicesPóźniej na początek sekcji [SourceDisksFiles] dodajemy
usbboot.inf = 1,,,,,,_x,3,,3Następny plik -
DOSNET.INFNa początek sekcji [Files] dodajemy
d1,usbboot.infNo i kolejny plik -
USB.INFZamień na pogrubione wartości w sekcjach [StandardHub.AddService] i [CommonClassParent.AddService]
[StandardHub.AddService]
DisplayName = %StandardHub.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbhub.sys
LoadOrderGroup = Boot Bus Extender
[CommonClassParent.AddService]
DisplayName = %GenericParent.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbccgp.sys
LoadOrderGroup = Boot Bus Extender
Kolejnym plikiem będzie USBPORT.INF
W nim zamieniamy na pogrubione wartości w sekcjach [EHCI.AddService], [OHCI.AddService] , [UHCI.AddService] oraz [ROOTHUB.AddService]
[EHCI.AddService]
DisplayName = %EHCIMP.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbehci.sys
LoadOrderGroup = Boot Bus Extender
[OHCI.AddService]
DisplayName = %OHCIMP.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbohci.sys
LoadOrderGroup = Boot Bus Extender
[UHCI.AddService]
DisplayName = %UHCIMP.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbuhci.sys
LoadOrderGroup = Boot Bus Extender
[ROOTHUB.AddService]
DisplayName = %ROOTHUB.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbhub.sys
LoadOrderGroup = Boot Bus Extender
W pliku USBSTOR.INF zamieniamy/dodajemy następujące wartości w sekcji [USBSTOR.AddService]
[USBSTOR.AddService]
DisplayName = %USBSTOR.SvcDesc%
ServiceType = 1
StartType = 0
Tag = 3
ErrorControl = 1
ServiceBinary = %12%\USBSTOR.SYS
LoadOrderGroup = Boot Bus Extender
Teraz powoli dochodzimy do końca :)
Tworzymy plik
USBBOOT.INF zawierający:
[usbservices]
HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","DisplayName",0x00000000,"USB Mass Storage Driver"
HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","ErrorControl",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","Group",0x00000000,"System Reserved"
HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","ImagePath",0x00020000,"system32\DRIVERS\USBSTOR.SYS"
HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","Start",0x00010001,0
HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","Type",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","DisplayName",0x00000000,"USB 2.0 Enhanced Host Controller Miniport Driver"
HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","ErrorControl",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","Group",0x00000000,"System Reserved"
HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","ImagePath",0x00020000,"system32\DRIVERS\usbehci.sys"
HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","Start",0x00010001,0
HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","Type",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","DisplayName",0x00000000,"USB2 Enabled Hub"
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","ErrorControl",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","Group",0x00000000,"System Reserved"
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","ImagePath",0x00020000,"system32\DRIVERS\usbhub.sys"
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","Start",0x00010001,0
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","Type",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","DisplayName",0x00000000,"Microsoft
USB Universal Host Controller Miniport Driver"
HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","ErrorControl",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","Group",0x00000000,"System Reserved"
HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","ImagePath",0x00020000,"system32\DRIVERS\usbuhci.sys"
HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","Start",0x00010001,0
HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","Type",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","DisplayName",0x00000000,"Microsoft USB Open Host Controller Miniport Driver"
HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","ErrorControl",0x00010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","Group",0x00000000,"System Reserved"
HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","ImagePath",0x00020000,"system32\DRIVERS\usbohci.sys"
HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","Start",0x00010001,0
HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","Type",0x00010001,1
Rozpakowane pliki IN_ teraz trzeba spakować poleceniem:
cabarc n USB.IN_ usb.inf
cabarc n USBPORT.IN_ usbport.inf
cabarc n USBSTOR.IN_ usbstor.inf
Na koniec wyrzucamy z pliku ISO: DOSNET.INF, TXTSETUP.SIF, USB.IN_, USBPORT.IN_, USBSTOR.IN_. Teraz dodajemy zmodyfikowane pliki USBBOOT.INF, DOSNET.INF, TXTSETUP.SIF, USB.IN_, USBPORT.IN_, USBSTOR.IN_. Ostatecznym krokiem będzie wypalenie płyty i instalacja systemu ;)
Ten artykuł jest bardzo wolnym tłumaczeniem artykułu
How to boot Windows XP off a USB driveDodam od siebie, iż trzeba bardzo uważnie zamieniać/dodawać/etc w plikach bo bardzo łatwo można zrobić błąd i z takiej płyty już nie zainstalujemy systemu na naszym dysku USB.
Mam nadzieję, że ten artykuł was nie znudził :)
A ja zawsze się zastanawiałem, jak zainstalować XP z dysku usb – niektóre aplikacje nie lubią wine, a na laptopie beznapędowcu, i do tego bez napędu optycznego pod usb… :)
a ja sie zawsze zastanawialem po co w ogóle instalowac windows :]
@yoshi314: no dobra, ale niektórym to się może przydać
I tyle zabawy, żeby tylko go z USB odpalić? Ja „piedziut”. Każda lepsza dystrybucja Linuksa w instalatorze ma opcję instalacji na pendrive’ie :> .
nooo, biedny pendrive ktory ktos windowsem pokarał :D
Wolałem tego nie mówić wprost :> .
Ciekawe jak telefon zareaguje, jak zainstaluje to na karcie pamięci.
Yoshi, a Ty już takiego mądrego nie zgrywaj dziecko bo sam 80% czasu posiadania komputera spędziłeś na windowsie – może Ci sie ten system nie podobać, ale takie teksty sobie daruj bo linux ani tobie ani nikomu innemu jak narazie windowsa w pełni nie zastąpi.
Szkoda tylko ze tak zainstalowany widnows nie uruchomi sie na każdym komputerze do ktorego podłącze taki dysk. Czy może jestem w błedzie i ktos powie mi ze jednak można :)
Mizu, mi zastąpił. Zdziwiony?
Kefi, a niby jak ma sobie ten głupi Windows sam za każdym razem wykrywać prawidłowo czipsety, procesory, karty graficzne, dźwięĸowe, sieciowe i inne?
Mizu – nie nazywaj mnie mądrym, ja sobie wypraszam.
zrobiłem jak w opisie instalka przeszła poprawnie ale przy pierwszym odpaleni lipa znowu zaczyna odłaczać usb
Widocznie coś musiałeś źle przepisać. Spróbuj jeszcze raz – mi za 3 razem wyszedł dobrze zrobiony obraz.
A ja tam liczę, że uda się za pierwszym ;) Teoretycznie wszystko zrobiłem poprawnie. BTW zgadzam się z Mizu – linuxy są świetne, pod względem dopracowania graficznego naprawdę przewyższają windę, jednak ciągle jest wiele problemów (ot choćby niewygodna lub niemożliwa konfiguracja kart wi-fi) albo soft do którego trudniej znaleźć ogólnodostępne porady na forach..także póki co linux tylko jako system awaryjny ;)
no i nie udało się ... instalator ciągle nie wykrywa dysku ..próbowałem 2 razy krok po kroku, dokładnie i precyzyjnie.. widocznie ciągle za słabo ;)
jesli komuś udało sie to zrobić ludzie pomozcie ga dulec 7033773 .
plików, po restarcie mówi że brakuje mu lub jest uszkodzony plik hal.dll. Plik ten odnalazłem, więc zostaje tylko uszkodzenie… Zgrywałem też go z kompa z XP-kiem ale nic to nie dało, znowu ten komunikat. A już się cieszyłem z XP na pendrive-ie. Sam boot działa ale cóż z tego…
hmmm…
ja uruchomiłem instaltor xp normalnie z płyty, instalowałem na dysk usb i bootowałem z dysku usb. I też wyświetlił mi się komunikat że plik hal.dll nie istnieje lub jest uszkodzony, a plik ten jest na dysku usb. o co chodzi?
mak ktoś przerobione te trzy pliki IN_ bo mi nie może rozpakować. Sciągnąłem sobie pliki inf. przerobiłem ale i tak d…. bo nie moge spakować ;(. jak ktoś ma przerobione te pliki i dziłają niech podrzuci . rutuki@poczta.fm z góry dzięki za pomoc ;)
Ja też poprosiłbym te przerobione pliczki. Jeśli ktoś ma :D
yetinakotlety@o2.pl
Se przerób ;p
Ja tu waręzów robić nie będę.
Przerobiłbym sobie, ale na Linuxie xię nie da :/
Ja tylko proszę o maila z pliczkami ;)
Również zależy jaką wersję Windowsa chcesz mieć na dysku (Pro/Home) bo wydaje mi się, że trochę różnią się te pliki
Mam Pro na płytce i chcę go mieć na penie. Jednakże próbowałem zmodyfikować te pliki na Home (na innym PC) i coś nie działało. Ten pakiet CAB SDK w ogóle nie działa. Czytałem, że na Win Serwer 2003 i Xp Pro tylko działa.
Płytka z Pro nie wykrywa mojego twardziela, więc instalacja na lapku nie ma szans. (mam Dell Inspiron 1525 z dyskiem SATA, chyba. I Ubuntu).
Przez to ładnie proszę o pliczki :D
żeby zainstalować Windows na USB trzeba wyciągnąć przy instalowaniu dysk twardy z komputera, żeby instalator utworzył MBR na pendrive a nie na twardym dysku, zrobiłem wszystko według powyższej instrukcji i działa. Za pierwszym razem instalowałem normalnie i mi pokopało dysk twardy, po restarcie przestało go wykrywać, musiałem ghostem przywracać:p
Jeszcze a propos wydajności Windowsa na pendrive, rzeczywiście jest tragiczna, ale są dwa sposoby: po uruchomieniu wejść we właściwości dysku pendrive > Sprzęt > zaznaczyć urządzenie pendrive i kliknąć „Właściwości” > karta „Zasady” i włączyć buforowanie zapisu na dysku, to znacznie poprawi wydajność. Drugi sposób (nie wiem czy połączenie ich nie spowoduje jakichś sensacji, ale wydaje mi się że nie) zainstalować sterownik EWF http://tiny.pl/bff7
O, dzięki za takie informacje, nie wiedziałem ;)
ja próbowałem instalować na fujitsu siemens i lipa zrobiłem dokładnie wszystko krok po kroku podczas wyboru partycji windows mi widzi dysk usb ale nie można zainstalować na nim systemu
mam pytanko. moze troche to smieszne ale jak odpalic CAB SDK ?? mam windowsa 2000
prosze o pomoc
przerobil to ktos by dal pliki moje gg 13759648 prosze pisac