Флоппи-дисководы неуклонно продолжают покидать современные системы. Маленькая емкость и низкая надежность дискет давно должны были заставить пользователей и производителей отказаться от дискет, но широкая распространенность (стандарт PC) еще долго делала данный способ переноса малого объема информации простым и удобным, а новые стандарты (LS-100, CD, USB) не распространились настолько глобально. Но сегодня стандарт USB получил распространение не только практически во всех компьютерах, но и во многих электронных устройствах. Носители информации, подключаемые к USB, обладают большими объемами, а цены на них стремительно падают. Кроме того, по сравнению с CD/DVD, они более удобны в записи/изменении данных, защищены от повреждений и удобны в повседневной транспортировке. Отсутствие во многих портативных компьютерах FDD/CD/DVD-приводов делает необходимым для установки операционной системы создание загрузочных USB-устройств. Об установке системы с USB FlashDrive пойдет речь в этой статье. Поучительный случай из жизни
Поводом написать эту статью стал случай с сабноутбуком IBM ThinkPad X41. Необходимо было установить операционную систему на компьютер в минимальной базовой конфигурации (без док-станции и приводов CD и FDD). Из доступных портов были USB (благо, BIOS был с поддержкой загрузки с USB-накопителей), IrDA, а также порт-репликатор с портами COM и LPT. Из оборудования имелся только компьютер с USB-портами и установленными ОС Windows 98SE, Windows XP и Imation USB Flash Drive.
Конечно, самым простым и быстрым вариантом было бы подключение ноутбучного жесткого диска к стационарному компьютеру через переходник HDD3.5"->2.5", но здесь возникли проблемы. Диск был большого объема (что не позволяло его распознать BIOS нашей материнской платы даже с последним обновлением прошивки). Это ограничение удалось обойти – передать распознавание диска Windows. Для этого логично было в настройках CMOS Setup вместо «Auto» поставить «None», но компьютер все равно зависал при определении накопителей на шине IDE. Тогда было включено автоопределение («Auto»), а в момент определения нажималась [F4] (Skip), после чего Windows уже корректно распознавала этот диск, что позволяло с ним работать. Диск был разбит и отформатирован, сделан загрузочным, но при установке его в ноутбук выяснилось, что у IBM ThinkPad имеются свои особенности обращения к диску, что делает его разметку на другой системе некорректной.
Так что оставался только вариант сделать USB Flash Drive загрузочным, разметить разделы, и перенести со стационарного компьютера дистрибутивы.
Как сделать Flash Drive загрузочным
Для обеспечения загрузки с диска необходимо наличие первичного (Primary) активного (Active) раздела с правильно размещенными системными файлами (для того, чтобы BIOS смог их найти и передать им управление загрузкой ОС). Для успешной загрузки MS-DOS необходимо расположение IO.SYS и MSDOS.SYS в самом начале раздела (что позволяет сделать утилита SYS.COM или FORMAT.COM при форматировании раздела с ключом «/S»). DOS-разделы позволяют сделать как FDISK.COM (DOS, Windows 95/98), так и консоль управления дисками Windows NT/2000/XP. Но ни одна из них не может сделать первичный раздел USB FlashDisk активным (FDISK.COM утверждает, что активным может быть в системе только один раздел). Сделать «невозможное» позволяет ряд как дисковых утилит (например, PowerQuest (Symantec) Partition Magic), так и специализированных утилит для управления USB Flash-накопителями (часто поставляются в комплекте с самими устройствами).
Самые широкие возможности по работе с дисками есть в реальном режиме DOS, в котором осуществим прямой доступ к устройствам, и большинство системных утилит (как Partition Magic, Symantec Ghost и т.п.) работают именно в этом режиме (под оболочкой в Windows производится только конфигурирование программы перед запуском). Для USB-устройств работоспособные универсальные драйверы под DOS появились сравнительно недавно. Информация о них доступна на сайте The Inquirer Для работы с USB FlashDrive необходимы драйверы, входящие в два комплекта. Первый – это драйвер ASPI HDD (DI1000DD.SYS) из набора Motto Hairu USB1.1 mode ASPI Manager, включивший в себя поддержку USB-FDD (RAMFD.SYS, предназначен для копирования образа дискеты в память при необходимости освободить USB-порт, к которому подключен дисковод). Этот файл доступен по этому адресу. Второй драйвер USBASPI.SYS – из набора утилит и драйверов Matsushita/Panasonic для работы с USB CD-приводами есть тут
Для установки драйвера понадобится прописать его в файлы конфигурации загрузочного DOS-диска/дискеты CONFIG.SYS:
DEVICEHIGH=USBASPI.SYS /V
DEVICEHIGH=DI1000DD.SYS
Некоторые ключи драйвера usbaspi.sys:
/w (Wait – ожидать) – отображается сообщение при смене или подключении устройства;
/v (Verbose – запретить) – отображает сообщение о статусе (рекомендуется);
/l[=n] – определяет максимальный номер логического устройства (LUN), по умолчанию установлен «0»;
Можно для ускорения определения устройств на контроллерах USB включить только присутствующие в данной системе:
/e – включить контроллеры только спецификации EHCI (USB 2.0);
/o – включить контроллеры только спецификации OHCI (новая версия USB 1.x);
/u – включить контроллеры только спецификации UHCI (старая версия USB 1.x).
Без этих ключей будут проверяться все контроллеры (рекомендуется).
Для поддержки USB-CDD потребуется еще файл USBCD.SYS из этого же набора утилит, а также необходимо добавить следующие строки в CONFIG.SYS:
DEVICEHIGH=USBCD.SYS /D:USBCD001 В AUTOEXEC.BAT:
LH MSCDEX /d:USBCD001
Пользователям Windows 2000/XP на первый взгляд проще – flash-накопители обычно определяются автоматически и не требуют драйверов. Существует масса программ для форматирования и менеджмента дисков: например HP USB Disk Storage Format Tool и Microsoft USB Flash Drive Manager. Несмотря на свою «универсальность», ни одна из перечисленных программ не смогла сделать наш Imation FlashDrive загрузочным. Все три необходимых условия (основной раздел отформатирован в FAT16, сделан активным, на него помещены системные файлы) были выполнены, но компьютер не смог загрузиться с данной флэшки («Operating System Not Found»), пришлось искать другие пути. Так как объем накопителей весьма ограничен, то файловая система обычно FAT, а загрузочная ОС обычно DOS (хотя есть различные компактные LINUX-подобные системы, но у тех, кто с ними работает, подобные сложности вряд ли возникнут). Соответственно, возникают проблемы с поиском файлов DOS и созданием загрузочного DOS-образа. Но и эти вопросы достаточно хорошо разъяснены в Сети, и есть различные простые способы обзавестись DOS-файлами (например так или так. Кроме того, программа HP USB Disk Storage Format Tool умеет переносить системные файлы не только с системной дискеты (или ее образа), но и из любой папки на диске, где есть необходимые DOS-файлы (IO.SYS, MSDOS.SYS, COMMAND.COM). Остальные же файлы можно создать или скопировать вручную.
Пользователям же Windows 98SE на первый взгляд не повезло. Но это только на первый взгляд! Универсальный драйвер для USB-накопителей существует, и имя ему: NUSB - Maximus Decim Native USB Driver for Windows 98SE
После установки драйвера nusb22r.exe (здесь r – «русская версия»; по заявлению разработчика, использовать русскую версию для английской версии Windows и наоборот – нельзя) все наши накопители стали определяться и устанавливаться системой без проблем.
Создаем загрузочный раздел
Теперь надо создать загрузочный раздел на flash-диске. Получить доступ к USB-устройствам из-под DOS на нашей системе не удалось, поэтому ищем возможность создать загрузочный раздел из-под Windows. Запустив FDISK, мы легко сможем сделать основной раздел на диске, но по заявлению FDISK активным может быть только один раздел на загрузочном HDD. Неправда! Есть такая утилита Partition Magic от PowerQuest, вошедшей в состав Symantec, которая позволяет не только создавать, разбивать, сливать и скрывать разные файловые системы, делать активными любые разделы, но и много других «извращений». Вот справится ли она с работой с USB-накопителем под Windows? Ведь при перезагрузке в реальный режим мы потеряем USB-диск. Пробуем запустить PQMagic 8.0 for DOS под Windows... Нет, слишком умная, не позволяет. А более ранняя? Версия 4.0 «говорит», что работать будет, но изменения из-под Windows вносить не станет. Попробуем обмануть программу! В свойствах файла pqmagic.exe запретим обнаружение программой Windows (на свой страх и риск). Запускаем утилиту – работает! Попробуем провести необходимые операции: по желанию можно удалить исходный раздел и создать вместо него основной FAT и дополнительный. Обязательно сделать основной загрузочный раздел активным. Теперь можно применить все действия.
После выполнения операций PQMagic решил перезагрузить компьютер, за что был вполне аккуратно завершен системой. Для того чтобы увидеть изменения и продолжить работу с подопытным, надо «остановить» накопитель (при помощи значка в системном трее), извлечь его из разъема USB и вставить обратно.
Наполнение и конфигурирование
Итак, раздел создан. Теперь нужно сделать диск загрузочным. Для этого скопируем системные файлы командой SYS F: (где F: – загрузочный раздел USB-накопителя). Можно воспользоваться стандартной утилитой форматирования Windows на этом разделе, отметив пункты «Быстрое форматирование» и «Скопировать системные файлы». После проделанных операций на диске появятся необходимые для загрузки системные файлы, но для работы с системой их недостаточно – нужно создать или отредактировать системные файлы конфигурации (MSDOS.SYS, CONFIG.SYS и AUTOEXEC.BAT) и скопировать необходимые драйверы и утилиты.
Основные параметры конфигурации приведем ниже:
MSDOS.SYS: ;[Paths]
[Options]
AutoScan=0
BootDelay=0
BootGUI=0
DblSpace=0
DrvSpace=0
DisableLog=1
DoubleBuffer=0
Logo=0
SystemReg=0
Пути к системным файлам Windows заремаркированы, отключены обращения к ScanDisk, DoubleSpace, DriveSpace, DBLBUFF.SYS, системному реестру, запрещена загрузка интерфейса Windows (BootGUI), отображение логотипа, уменьшено до нуля ожидание команд при запуске системы.
CONFIG.SYS: SWITCHES=/F/E
DEVICE=BOOT\DRIVERS\HIMEM.SYS /TESTMEM:OFF
DEVICEHIGH=BOOT\DRIVERS\VIDE_CDD.SYS /D:CDDRIVER
COUNTRY=007,866,_BOOT\DRIVERS\COUNTRY.SYS
Ключи SWITCHES немного ускоряют запуск системы, драйвер COUNTRY обязателен для работы с файлами с русскими названиями. VIDE_CDD.SYS – драйвер CD-ROM. HIMEM.SYS, COUNTRY.SYS и CDROMDRV.SYS у нас расположены в папке BOOT\DRIVERS.
AUTOEXEC.BAT: @ECHO OFF
SET TEMP=C:\
LH BOOT\DRIVERS\SMARTDRV.EXE
LH BOOT\DRIVERS\KEYRUS.COM
LH BOOT\DRIVERS\MOUSE.COM
LH BOOT\DRIVERS\MSCDEX.EXE /D:CDDRIVER
BOOT\DN\DN.COM
SET SHELL=COMMAND.COM
Здесь отключен вывод «лишней» информации на экран в процессе загрузки, загружены драйверы буферизации записи на диск SMARTDRV.EXE (обязательно при работе с большими объемами), русификации KEYRUS.COM, мыши MOUSE.COM, драйвер CD-привода MSCDEX.EXE. В завершение загрузки запускается оболочка DOS Navigator 1.51 (DN.COM) и, в случае выхода из DN, запустится командный интерпретатор COMMAND.COM. Вместо DN можно применить и Norton Commander, и Volkov Commander, даже MS-DOS Shell. Естественно, все эти драйверы и программы должны быть расположены по указанным путям.
В папке TOOLS мы разместили Partition Magic, файл SYS.COM, программы для тестирования оборудования, связи между компьютерами по LPT-порту и другие. Загрузочный Flash Drive готов!
Делаем загрузочным HDD
Для установки системы нам понадобится разметить жесткий диск компьютера, сделать его активным, скопировать базовые системные файлы и дистрибутив системы, затем перезагрузиться с него. В CMOS Setup устанавливаем очередность загрузки с USB Flash Drive, загружаем компьютер, запускаем PartitionMagic.
Если планируется установка Windows 2000/XP, то имеет смысл разметить диск следующим образом: создать 1-5-гигабайтный Primary Unformatted раздел, 2-8-гигабайтный Primary FAT16(32), и остаток – в Extended FAT32 (после установки системы можно преобразовать в NTFS), затем Primary Unformatted – удалить, а Primary FAT сделать активным. Пустое место в начале диска будет отформатировано из-под Windows в формате NTFS с назначением ему буквы «Z» и размещением на нем файла кэширования SWAPFILE.SYS («Панель управления» -> «Система» -> «Быстродействие»). Если оставить загрузочный раздел в формате FAT, то после установки системы появится возможность загрузки в DOS-режиме.
Сделав жесткий диск системным (SYS A: C:) и скопировав на него файлы с USB-носителя, мы можем приступить к переносу дистрибутива.
Перенос дистрибутива Windows
Удобнее всего запаковать WinRAR’ом (но не в SFX-архив!) папку i386 дистрибутива с разбиением на тома, равные по размеру объему свободного места на flash-диске, и переносить его частями, скидывая на Extended-раздел жесткого диска, затем переписать туда RAR.EXE и распаковать архив (RAR E I386.RAR -A). Такая методика необходима и при переносе дистрибутива с CD под DOS. Из-за различия стандартов ISO 9660 Level1 (DOS) и ISO 9660 Joliet (Windows) для CDFS длинные имена файлов, отображающиеся под DOS в формате 8.3 с тильдой в имени, при копировании с CD отображаются без тильды, что вызывает несоответствие реальных коротких и скопированных имен (что вызовет ошибки при инсталляции системы). Но мы поступили иначе: соединили компьютеры с помощью PLIP-кабеля (LPT-LPT) и запустили на ноутбуке INTERLNK.EXE от Microsoft (поместив ссылку на него в CONFIG.SYS), а на стационарном компьютере запустили под Windows INTERSVR.EXE, что позволило перекачать данные через LPT-порт. Можно воспользоваться и Norton Commander’ом, помня об урезании длинных имен файлов (что решается перекачкой файлов в архиве).
Теперь, когда дистрибутив перенесен, можно запустить установку Windows 2000/XP из-под DOS. Для этого входим в папку i386 и выполняем команду WINNT. Далее – согласно инструкциям.
В заключение заметим, что данный способ нам пригодился при проблемах с загрузкой с CD-ROM компьютера (Toshiba Satellite), и не только.
Особенности разбиения FlashDrive на разделы
Как было сказано выше, для обеспечения загрузки с FlashDrive необходимо наличие основного активного раздела. Но разделов на диске может быть несколько. Наш подопытный был разбит на два раздела (основной FAT16 и дополнительный FAT16), и отображался в Windows 98 как «диск FG:». Но под Windows 2000/XP на нашем накопителе был виден только один основной раздел. При попытке с помощью Partition Magic создать второй основной раздел, один из двух разделов становился скрытым (Hidden), и ему не назначалась буква. Создать второй раздел в Windows 2000/XP возможно, но буква ему не назначается, и подключить его не удается. Для разбиения flash-дисков на разделы существуют специальные утилиты, поставляющиеся с этими устройствами. Возможно, с этими устройствами будет работать и разбиение на логические диски другими способами. Диски могут быть разбиты на разделы FAT16 размером до 2 Гб – для больших размеров придется применять FAT32 или другие системы (NTFS, HPFS, ext2, ext3 и т.п. при условии совместимости с ОС). Поддержка же FAT16 реализована практически во всех ОС по умолчанию. Для NTFS можно применить сжатие, что может оказаться удобнее, чем архивирование при переносе и хранении больших объемов текстов и другой легкосжимаемой информации.
Возможности Flash-Drive
Если сравнивать flash-накопители и CD(DVD)-RW как носители, то flash-драйвы проигрывают по стоимости хранения единицы информации, зато имеют одно большое преимущество – произвольный доступ к данным на чтение/запись. Если для записи на CD(DVD)-RW необходимо подготовить данные и записать сессию целиком, а перед изменением – очистить диск (исключение составляет формат UDF, но его возможности тоже небезграничны), то flash-накопитель работает как полноценный жесткий диск, то есть его можно применять не только для хранения и переноса данных, но и для запуска программ с хранением всех изменений на этом носителе. Например, нам удалось скопировать на Flash-Drive и запустить с него ICQ/IRC-клиент Miranda IM, почтовый клиент The Bat, Small CDWriter и некоторые другие программы, хранящие настройки не в реестре, а в конфигурационных файлах в каталоге программы, то есть не привязанные к системе и абсолютному пути к своим файлам. В результате, можно на переносном диске иметь свой «маленький офис», не оставляя следов на host-компьютере и практически не будучи ограниченным в возможностях работы на нем. Эта идея не нова и находит все больше единомышленников, что привело к созданию платформы U3. Подробнее о ней можно узнать тут
Что касается возможностей загрузочного USB-устройства с DOS, то существует много полезных и просто незаменимых утилит, которые работают только под DOS. Это и набор утилит от компании Symantec – DOS-файлы Norton Utilities (SystemWorks) и Ghost. Например, UNERASE под DOS (в отличие от UE32 для Windows) способен восстановить и частично поврежденные файлы, а UNFORMAT под Windows вообще не существует. Symantec Ghost – замечательная утилита [b]для создания и распаковки образов жестких дисков, а также их записи на CD/DVD, доступна в виде дистрибутива, но для полноценной работы ей достаточно лишь одного маленького файла GHOST.EXE. Причем это чудо может быть запущено в любое время из-под DOS, позволяет без дополнительных драйверов делать образы как FAT-, так и NTFS-разделов, разбивать их на несколько CD/DVD, прожигать диски (создавая загрузочные при наличии системной дискеты), распаковывать образы разделов как с CD/DVD, так и из файла-образа на любом разделе (даже NTFS!). Есть маленькие и простые программы для анализа и теста системы (например, SPEEDSYS.EXE), а так же MHDD, раздел «Софт») – мощная программа для восстановления и редактирования служебной информации жестких дисков, позволяющая заменить целый программно-аппаратный комплекс PC-3000. Так что DOS скорее жив, и при повальном избавлении от флоппи-дисководов, он обретает вторую жизнь на новых типах носителей.