Наткнулся на интересную статью http://ant0.ru/usb-flash.html
15.11.2008 - 00:30 — Ant0
15.11.2008 - 00:30 — Ant0
Как
создать образ USB-flash (USB-HDD и USB-ZIP) без использование
USB-flash. С помощью dd, fdisk, losetup /dev/loop, syslinux и прочих
команд coreutils.
Существует несколько вариантов загрузки с USB-flash (USB-HDD, USB-ZIP, USB-FDD и тд).
Здесь рассмотренны два: USB-ZIP и USB-HDD - или тот или другой обязательно поддерживается любой материнской платой для загрузки (если у нее конечно есть USB).
Образ делается так:
Полученный образ просто копируется на флешку:
или:
,здесь вместо FLASH подставить устройство usb-flash
Существует несколько вариантов загрузки с USB-flash (USB-HDD, USB-ZIP, USB-FDD и тд).
Здесь рассмотренны два: USB-ZIP и USB-HDD - или тот или другой обязательно поддерживается любой материнской платой для загрузки (если у нее конечно есть USB).
Загрузочный образ USB-HDD
USB-HDD мало чем отличается от обычного HDD, кроме физического подключения.Образ делается так:
- Создаем файл размером на 5-10% меньше от предполагаемого размера диска (для защиты от недобросовестных производителей дисков):
dd if=/dev/zero of=disk.img bs=1k count=61k
- Привязываем /dev/loop0 к данному файлу как есть:
losetup /dev/loop0 disk.img
- Создаем разметку на "диске" (натравливаем fdisk на образ для создания разметки):
fdisk /dev/loop0 <<EOF n p 1 a 1 t c w EOF
- Привязываем /dev/loop1 к данному файлу со смещением, в котором должна начинаться партиция:
losetup -o 16384 /dev/loop0 disk.img
- Создаем файловую систему vfat на созданной партиции:
mkfs.vfat -F 32 /dev/loop1
- Натравливаем загрузчик syslinux на /dev/loop1:
syslinux /dev/loop1
- Все! Можно монтировать /dev/loop1 и забивать необходимыми файлами!
- После всех операций освобождаем занятые loop-ы:
losetup -d /dev/loop0 losetup -d /dev/loop1
Полученный образ просто копируется на флешку:
cat disk.img > /dev/FLASH
dd if=disk.img of=/dev/FLASH
Загрузочный образ USB-ZIP
USB-ZIP от USB-HDD отличается немного в 3-м пункте:- Создаем разметку на "диске" (натравливаем fdisk на образ для создания разметки):
fdisk -H64 -S32 /dev/loop0 <<EOF n p 4 a 4 t c w EOF
Комментариев нет:
Отправить комментарий