Персональный
сайт
Игоря
Сысоева


 
english
обо мне
 
sysoev.ru
 
nginx
 
mod_accel
mod_realip
mod_deflate
программирование
всякая всячина
windows
freebsd
apache
pppd
unix
web
 
 

Создание загрузочного установочного компактного диска Windows NT

 

06.01.2003

Создавать диск мы будем, как это неудивительно, под FreeBSD. Для начала неплохо было бы выяснить, что из себя представляет оригинальный дистрибутивный компактный диск Windows NT. После некоторых научных исследований выясняется, что на нём

  • не используется стандарт Joilet и имена файлов представлены в формате 8.3;
  • имена файлов без версий, то есть, без символов ";1" после имени;
  • имена файлов содержат символы "-" и "~", что нарушает стандарт ISO 9660;
  • загрузочный блок соответствует стандарту El Torito, не использует эмуляцию диска, находится в 20 секторе и занимает 1 сектор.

Создадим каталог cdrom и скопируем в него каталог i386. Кроме того, нужно скопировать файлы cdrom_w.40 (для Workstation) или cdrom_s.40 (для Server). Затем нам понадобится загрузочный блок. Его можно скопировать с оригинального диска примерно такой командой:

dd if=/dev/acd0c of=boot.nt skip=20 ibs=2048 count=1
Создадим каталог cdrom/boot и запишем в него файл boot.nt. Теперь для того, чтобы создать образ диска, достаточно выполнить команду
mkisofs                                        \
    -v -N -relaxed-filenames -no-iso-translate \
    -V NTWKS40A                                \
    -b boot/boot.nt -no-emul-boot              \
    -c boot/boot.catalog -hide boot            \
    -o nt.iso cdrom
Ниже прокомментированы параметры:
  • -v — информировать нас о ходе работ;
  • -N — не ставить версию файлов;
  • -relaxed-filenames — разрешить символ "-" в именах файлов;
  • -no-iso-translate — разрешить символ "~" там же;
  • -V NTWKS40A — установить метку диска "NTWKS40A", это для Workstation;
  • -b boot/boot.nt -no-emul-boot — использовать в качестве первого (и, в нашем случае, единственного) загрузочного блока файл boot/boot.nt. Кроме того, указать, что этот блок не использует эмуляцию диска. Заметьте, что путь к файлу указан относительно каталога cdrom;
  • -c boot/boot.catalog — каталог загрузочных блоков диска разместить в файле boot/boot.catalog;
  • -hide boot — не указывать каталог boot в основном каталоге CD-ROM'а;
  • -o nt.iso — файл с образом диска;
  • cdrom — каталог с содержимым диска.

(C) Игорь Сысоев
http://sysoev.ru