LArV У меня NTDETECT.COM пропатчился. Пробовал и готовый файл. Всё ОК.
Можешь попробовать в ручную модифицировать.
Ссылка на инструкцию
http://www.911cd.net/forums//index.php?showtopic=14181&st=0&p=90483&#entry90483 На всякий случай попробовал грузить установку Windows XP из образа, с мод.файлом NTDETECT.COM
Вылетела ошибка 7b. Думаю не в файле дело.
С файловой системой FAT32 установка тормозит, с NTFS не может на 2-й этап перейти.
Flash'ka разбиение на разделы не держит.
Сделал из-под Linux программой fdisk 2 раздела
1) 1.9 GB Fat16
2) Всё остальное.
Windows видит только 1-й раздел, 2-й смонтировать не может. Linux видит и монтирует оба без проблем
Пока что сделал устоновочную Flash'ку по рецепту
[more]
Here is the edited guide for Windows XP SP2, on 2k/2k3 should work too.
1. Format stick using PEtoUSB (http://gocoding.com/page.php?al=petousb) or any other utility of your choice, which makes it bootable with 2k/XP boot sector
2. Copy NTDETECT.COM, NTLDR to root and create BOOT.INI
BOOT.INI
[Boot Loader]
Timeout=15
Default=multi(0)disk(0)rdisk(1)partition (1)\WINDOWS
[Operating Systems]
c:\grldr="Start GRUB"
multi(0)disk(0)rdisk(1)partition(1)\WIND OWS="GUI Setup" /FASTDETECT If you are going to install on another partition/disk amend entries to reflect that.
Make sure you can boot from stick and reach the menu.
3. Get the latest GRUB4DOS (http://grub4dos.jot.com/WikiHome) and copy GRLDR to the USB root. If you have any issues use tha last stable version. Create
MENU.LST
color black/cyan yellow/cyan
timeout 15
default 0
title Phase 1 WinXP Text Mode Setup
chainloader (hd0,0)/setupldr.bin
4. Backup your local BOOT.INI and in the XP setup folder \I386 run winnt32 /makelocalsource /noreboot after it's finished restore BOOT.INI you backed up.
5. Copy two new folders onto the USB stick root - $WIN_NT$.~BT and $WIN_NT$.~LS
6. In \$WIN_NT$.~BT modify
WINNT.SIF
[data]
msdosinitiated="1"
floppyless="1"
AutoPartition="0"
UseSignatures="no"
InstallDir="\WINDOWS"
winntupgrade="no"
win9xupgrade="no"
[GuiRunOnce]
"regedit /s %systemdrive%\windows\system32\undoUSBWP .reg"
"%systemdrive%\windows\system32\BOOTFLS.C MD"
and
MIGRATE.INF
[Version]
Signature = "$Windows NT$"
[Addreg]
HKLM,"SYSTEM\MountedDevices",,0x00000010
HKLM,"SYSTEM\ControlSet001\Control\StorageDevi cePolicies","WriteProtect",%REG_DWORD%,1
[Strings]
;Handy macro substitutions (non-localizable)
REG_SZ = 0x00000000
REG_BINARY = 0x00000001
REG_DWORD = 0x00010001
REG_MULTI_SZ = 0x00010000
REG_SZ_APPEND = 0x00010008
REG_EXPAND_SZ = 0x00020000 If you wish to preserve your USB storage drive letter use CDOB's script to create MIGRATE.INF, don't forget to add the above entries :
MkMigratgeInf.cmd
@echo off
REM MkMigratgeInf.cmd v0.01
REM created by cdob
setlocal EnableExtensions
set Drive=%~d1
if %Drive%.==. set Drive=%~d0
set FileName=%~2
if %FileName%.==. set FileName=MIGRATE.INF.TXT
set MigrateDrive=U:
if not %~d3.==. set MigrateDrive=%~d3
set Value=
FOR /F "skip=2 tokens=1-2*" %%a IN ('reg query HKLM\System\MountedDevices /v \DosDevices\%Drive%') DO set Value=%%c
if %Value%.==. (echo drive settings %Drive% not found & goto :EOF)
set MigrateStr=%Value:~0,2%
set count=2
:begin_parse
call :exec set MidStr=%%Value:~%count%,2%%
if %MidStr%.==. goto :exit_parse
set MigrateStr=%MigrateStr%,%MidStr%
set /a count+=2
goto begin_parse
:exit_parse
(echo [Version]
echo Signature = "$Windows NT$"
echo.
echo [Addreg]
echo HKLM,"SYSTEM\MountedDevices","\DosDevices\%MigrateDrive%",0x00030001,\
echo %MigrateStr%)>%FileName%
goto :EOF
:exec
%*
goto :EOF
7. Create a folder BOOTFILES in USB stick root, and copy NTDETECT.COM, NTLDR and your custom BOOT.INI, which will be copied on hard disk later, during the first logon. Set them system, hidden and read-only in advance.
BOOT.INI
[boot loader]
timeout=15
default=multi(0)disk(0)rdisk(0)partition (1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WIND OWS="XP Professional 0 1" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(0)partition(2)\WIND OWS="XP Professional 0 2" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(0)partition(3)\WIND OWS="XP Professional 0 3" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(1)partition(1)\WIND OWS="XP Professional 1 1" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(1)partition(2)\WIND OWS="XP Professional 1 2" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(1)partition(3)\WIND OWS="XP Professional 1 3" /noexecute=optin /fastdetect
8. Create:
undoUSBWP.reg
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControl Set\Control\StorageDevicePolicies]
"WriteProtect"="0"
hiveOEM.inf
[Version]
Signature = "$Windows NT$"
DriverVer=07/01/2001,5.1.2600.2180
[AddReg]
;WriteProtect USB
HKLM,"SYSTEM\CurrentControlSet\Control\Storage DevicePolicies","WriteProtect",0x10001,1
and
BOOTFLS.CMD
@echo off
SET TAGFILE=\BOOTFILES
FOR %%h IN (C D E F G H I J K L M N O P Q R S T U V W X Y) DO IF EXIST "%%h:%TAGFILE%" SET USBDRIVE=%%h:
xcopy %USBDRIVE%\bootfiles\*.* %SYSTEMDRIVE%\ /y /h /r /k
exit
and place them in $WIN_NT$.~LS\i386
9. Copy TXTSETUP.SIF and SETUPLDR.BIN from \$WIN_NT$.~BT to root of USB stick and add the following lines to
TXTSETUP.SIF
[SourceDisksFiles].....
.....
hiveOEM.inf = 100,,,,,,_x,,3,3
undoUSBWP.reg = 100,,,,,,_x,2,0,0
BOOTFLS.CMD = 100,,,,,,_x,2,0,0
....
....
[HiveInfs.Fresh]
AddReg = hiveOEM.inf,AddReg
[HiveInfs.Upgrade]
AddReg = hiveOEM.inf,AddReg
--------
Install XP and leave stick plugged in until after the first logon screen.
Notes:
1. If you use an answer file when launching WINNT32.EXE make sure you delete the whole [Unattend] section in WINNT.SIF, otherwise you won't be able to use System Restore and SETUP will not prompt on which partition to install.
2. If you use BTS mass storage DP method 2 and repair install then include the following line in \$WIN_NT$.~LS\I386\PRESETUP.CMD
DEL /F %systemroot%\system32\setupold.exeor GUI Setup stops at start, complaining about fake setup being executed.
3. If during TEXT MODE your usb stick is listed first when SETUP searches for disks , above SATA/SCSI disks, disable in BIOS IDE channels including the ones with CDROM/DVD attached or disconnect them, this should fix the order. Do not continue install if stick is listed first, this will corrupt files and MBR on it.
------------------------------------
All credits for the most important part- how to write- protect the USB flash go to cdob :thumbup
Many thanks to jaclaz, wimb and porear
[/more]
Есть ещё один способ, но он у меня не заработал, т.к для загрузчик криво ставится и если нет ничего, кроме HDD то он не грузит Windows. Вот его код
[more]
Here is a quick guide how I proceeded with 100% success on ATA hard drives.
1. Format the USB stick, I used HP USB Format tool, because XP format was reported as incorrect in GRUB.
2. Install GRUB MBR on the stick, the quickest way I found is by GRUBINST_GUI (https://sourceforge.net/project/showfiles.php?group_id=104188&package_id=215976) for WIN
3. Get the latest GRUB4DOS (http://grub4dos.jot.com/WikiHome) and copy GRLDR to the USB root.
Create MENU.LST in USB root
color black/cyan yellow/cyan
timeout 15
default 1
title Phase 1 WinXP Text Mode Setup
map --read-only (hd0) (hd1)
map --hook
root (hd1,0)
chainloader /ntldrstp
title Phase 2 WinXP GUI Mode Setup
map (hd1) (hd0)
map --hook
rootnoverify (hd0)
chainloader +1 This way the default entry is GUI mode, TXT mode must be selected manually. With these GUI entries XP can be installed and booted later from another partition on the hard drive, not only from the first.
4. Backup your current BOOT.INI and in the XP setup folder \I386 run winnt32 /makelocalsource /noreboot after it's finished restore BOOT.INI
5. Copy two new folders in the USB stick root - $WIN_NT$.~BT and $WIN_NT$.~LS
6. In \$WIN_NT$.~BT modify
WINNT.SIF
[data]
msdosinitiated="1"
floppyless="1"
AutoPartition="0"
UseSignatures="no"
InstallDir="\WINDOWS"
winntupgrade="no"
win9xupgrade="no"
[GuiRunOnce]
"regedit /s %systemdrive%\windows\system32\undoUSBWP .reg"and
MIGRATE.INF
[Version]
Signature = "$Windows NT$"
[Addreg]
HKLM,"SYSTEM\MountedDevices",,0x00000010
HKLM,"SYSTEM\ControlSet001\Control\StorageDevi cePolicies","WriteProtect",%REG_DWORD%,1
[Strings]
;Handy macro substitutions (non-localizable)
REG_SZ = 0x00000000
REG_BINARY = 0x00000001
REG_DWORD = 0x00010001
REG_MULTI_SZ = 0x00010000
REG_SZ_APPEND = 0x00010008
REG_EXPAND_SZ = 0x00020000 If you wish you could preserve your USB storage drive letter keeping the relevant entries in migrate.inf. Note your current USB drive letter and find the line (mine is set to U) HKLM,"SYSTEM\MountedDevices","\DosDevices\U:",0x00030001,\
5c,00,3f,00,3f,00,5c,00,53,00,54,00,4f,0 0,52,00,41,00,47,00,45,00,23,00,52,\
00,65,00,6d,00,6f,00,76,00,61,00,62,00,6 c,00,65,00,4d,00,65,00,64,00,69,00,\
61,00,23,00,37,00,26,00,31,00,34,00,39,0 0,31,00,63,00,63,00,33,00,34,00,26,\
00,30,00,26,00,52,00,4d,00,23,00,7b,00,3 5,00,33,00,66,00,35,00,36,00,33,00,\
30,00,64,00,2d,00,62,00,36,00,62,00,66,0 0,2d,00,31,00,31,00,64,00,30,00,2d,\
00,39,00,34,00,66,00,32,00,2d,00,30,00,3 0,00,61,00,30,00,63,00,39,00,31,00,\
65,00,66,00,62,00,38,00,62,00,7d,00 , I found that it's not needed. [Strings] must be present.
7. Create:
undoUSBWP.reg
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControl Set\Control\StorageDevicePolicies]
"WriteProtect"="0" and
hiveOEM.inf
[Version]
Signature = "$Windows NT$"
DriverVer=07/01/2001,5.1.2600.2180
[AddReg]
;WriteProtect USB
HKLM,"SYSTEM\CurrentControlSet\Control\Storage DevicePolicies","WriteProtect",0x10001,1 and place them in $WIN_NT$.~LS\i386
8. Copy TXTSETUP.SIF, SETUPLDR.BIN and NTDETECT.COM from \$WIN_NT$.~BT to root of USB stick. Delete BOOTSECT.DAT (necessary?) and rename SETUPLDR.BIN to NTLDRSTP, or modify the relevant entries in MENU.LST
9. Add the following lines to TXTSETUP.INF
[SourceDisksFiles].....
.....
hiveOEM.inf = 100,,,,,,_x,,3,3
undoUSBWP.reg = 100,,,,,,_x,2,0,0
....
....
[HiveInfs.Fresh]
AddReg = hiveOEM.inf,AddReg10. If you use unattended mode for the setup make sure you delete the whole [Unattend] section, otherwise you won't be able to use System Restore and SETUP will not prompt on which partition to install.
I used BTS mass-storage drivers pack, with KTD option and Nlited fully unattended installation, to keep Nlite options copy the relevant entries from the original WINNT.SIF to the new one, don't forget to delete the whole [Unattended] section. [Data] section do not modify except UseSignatures="no". Also copy $OEM$ to \$WIN_NT$.~LS\i386 and OEM (BTS scripts) to the root of USB stick.
Thanks a lot to porear and jaclaz
All credits for the most important part- how to write- protect the USB flash go to cdob, many thanks
edit: Forgot to mention that removing write-protect mode after GUI is finished is also done in steps 6 and 7.
http://www.msfn.org/board/index.php?showtopic=61384 [/more]
Оригинал
http://www.hardwarebg.com/forum/showthread.php?t=102363 Добавлено: Ещё один вопрос. Кто-нибудь знает как загрузить Frenzy FreeBSD Live с Flash.
Загрузчик grub4dos.