- Бэкап данных на флешке (cp/tar/rsync).
- под Windows: скачиваем образ SystemRescueCD-Installer.exe и следуем инструкции по приведённой ссылке;
под Linux: Монтируем образ SystemRescueCd-x86-x.x.x.iso с опцией exec и выполняем от суперпользователя скрипт usb_inst.sh, пример команды (iso_path заменить на относительный путь к скачанному образу):
iso_path=/path/to/systemrescuecd-x86-x.x.x.iso; mkdir iso_dir && sudo mount -o loop,exec "$iso_path" iso_dir && sudo iso_dir/usb_inst.sh && echo "Установка SystemRescueCD успешна\! =)" || echo "Установка прошла с ошибкой\!" ; sudo umount iso_dir ; rmdir iso_dir
- Указываем правильный тип файловой системы, чтобы DOS>=7.1 увидел её, пример под Linux (под Windows хз - как):
sudo fdisk /dev/sdX (вместо X подставить своё), нажать t, b, w, Enter.
- Добавляем пункты меню в флешка/syslinux/syslinux.cfg до первого вхождения LABEL
LABEL Debian netinstall 32 bit
MENU LABEL Debian netinstall 32 bit
KERNEL vmlinuz-debian32
initrd initrd-debian32.gz
LABEL Debian netinstall 64 bit
ENU LABEL Debian netinstall 64 bit
KERNEL vmlinuz-debian64
initrd initrd-debian64.gz
LABEL Grub 4 Dos
MENU LABEL 0) Grub 4 DOS
KERNEL grub.exe
# во-первых, не находит файлы, ищет их в корне /, а не /I386 флешки,
# копирование оных в корень всё равно не спасает, пишет, что другой файл не найден в WTMP..что-то...бла-бла...бла...
#LABEL winxp
# MENU LABEL Boot Windows 2000/XP/2003 (SETUPLDR.BIN) from CD/DVD
# COM32 chain.c32
# APPEND ntldr=/I386/SETUPLDR.BIN
#LABEL win7
# MENU LABEL Boot Windows Vista/2008/7 (bootmgr) from CD/DVD
# COM32 chain.c32
# APPEND ntldr=/bootmgr
# ВЫХОД: грузить dos 7-ой версии (6-ая не видит fat32), и из него устанавливать
LABEL 4dos
MENU LABEL 4DOS MS-DOS 7.1 RUS
kernel memdisk
append initrd=/bootdisk/4dos.ima floppy
# нужно найти и скачать, если нужно... =)
LABEL dos622
MENU LABEL DOS 6.22
kernel memdisk
append initrd=/bootdisk/dos622.img floppy
- Извлекаем из архива Grub4dos файл grub.exe на флешку в директорию /syslinux/
- Для сетевой установки Debian, нужно скачать образы
ядра 32bit,
initrd 32bit,
ядра 64bit,
initrd 64bit
и поместить их на флешку в директорию /syslinux/, переименовав их в vmlinuz-debian32, initrd-debian32.gz, vmlinuz-debian64, initrd-debian64.gz соответственно.
Под Linux это можно сделать одной командой (path - путь к примонтированному накопителю, release=stable|testing|sid):
path=/mnt/flash ; release=testing; ftp_url="ftp://ftp.debian.org/debian/dists/$release/main/installer" ; ftp_path="current/images/netboot/debian-installer" && p="$ftp_url-i386/$ftp_path/i386" && wget "$p/linux" -O "$path/syslinux/vmlinuz-debian32" && wget "$p/initrd.gz" -O "$path/syslinux/initrd-debian32.gz" && p="$ftp_url-amd64/$ftp_path/amd64" && wget "$p/linux" -O "$path/syslinux/vmlinuz-debian64" && wget "$p/initrd.gz" -O "$path/syslinux/initrd-debian64.gz" && echo "Скачивание образов успешно\! =)" || echo "Скачивание или запись образов прошли с ошибкой\! =("
Создать файл флешка/menu.lst для Grub4dos примерно такого содержания:
color black/cyan yellow/cyan
timeout 30
default /default
splashimage=/splash.xpm.gz
foreground=AB82FF
background=191970
# map + Contig/WinContig выдаёт синий экран во время установки в конце определения
# оборудования, после того, как модули драйверов загружены XP
# map --mem вообще висит долго в чёрном экране, потом может быть что-то и появляется, забил
#title WinXP iso
#find --set-root /winxp.iso
# map /winxp.iso (hd32)
# map --hook
# root (hd32)
# chainloader (hd32)
# РАБОЧИЙ ВАРИАНТ ДЛЯ УСТАНОВКИ Windows XP, 2003, 2000, 98, 95 и восстановления загрузчика SYSLINUX после затирания его ntldr
# скачиваем в /mnt/flash/bootdisk/ 4dos.ima или отсюда
# !!! убедитесь, что тип файловой системы на флешке указан, как W95 FAT32, а не Linux. Для этого выполните
# sudo fdisk /dev/sdX что там для Вашей флешки, нажмите p, вывод должен быть примерно таким:
# /dev/sdb1 * 1 15224831 7612415+ b W95 FAT32
# если же вывод такой:
# /dev/sdb1 * 1 15224831 7612415+ 83 Linux
# , то нажмите t, затем b, это укажет правильный тип файловой системы, в противном случае
# DOS не увидит этого диска.
# Для установки Windows XP требуется выбрать в начальном меню загрузки Grub 4 Dos,
# затем пункт, что приведён ниже для загрузки Dos 7.1 Rus, после чего выполнить
# smartdrv ; c: ; cd c:\install\windows\i386 ; winnt.exe - запустится установка Windows.
# для Windows 98 емнип setup.exe
# соответственно, директорию i386 нужно скопировать на флешку с Вашего честно купленного диска с вендой.
title 4DOS MS-DOS 7.1 RUS
map --mem /bootdisk/4dos.ima (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
- Для установки Gentoo из stage3 помещаем архивы portage-latest.tar.bz2, stage3-i686-xxx.tar.bz2 и stage3-amd64-xxx.tar.bz2 на флешку в /install/gentoo/, предварительно создав эту директорию.
Под Linux как всегда рулит shell (path - путь к примонтированному накопителю):
path=/mnt/flash ; full_path="$path/install/gentoo" ; url_path="http://mirrors.kernel.org/gentoo/releases" ; mkdir -p "$full_path" && fname=`wget $url_path/x86/autobuilds/latest-stage3-i686.txt -O - 2>/dev/null | tail -n1 | cut -d/ -f2` && wget "$url_path/x86/autobuilds/current-stage3-i686/$fname" -O "$full_path/$fname" && fname=`wget $url_path/amd64/autobuilds/latest-stage3.txt -O - 2>/dev/null | tail -n1 | cut -d/ -f2` && wget "$url_path/amd64/autobuilds/current-stage3/$fname" -O "$full_path/$fname" && wget "$url_path/snapshots/current/portage-latest.tar.bz2" -O "$full_path/portage-latest.tar.bz2" && echo "Скачивание stage3 и portage завершилось успешно\! =)" || echo "При скачивании stage3 или portage произошла ошибка\! =("
- Для возможности работы в DOS 7.1, скачиваем образ дискеты отсюда или оттуда и помещаем на флешку в /bootdisk/
В Linux снова рулит однострочник (path заменить на своё):
path=/mnt/flash ; wget http://www.backbone.ws/share/dist/os/dos/4dos.ima -O "$path/bootdisk/4dos.ima" && echo "Успех\! =)" || echo "Неудача\! =("
- Внимание! Установка Windows приведённым в этом пункте способом 100% затрёт загрузчик SYSLINUX и может сделать флешку вообще незагружаемой, т.к. Windows ставит загрузчик через раз.
Если всё же удалось поставить Windows таким образом, можно используя уже загрузчик NTLDR, перейти в grub4dos, выбрать DOS 7.1, выполнить c:, после чего выполнить syslinux.com c: (syslinux.com должен быть распакован на флешку из флешка/bootprog/syslinux-x.xx.zip/dos/), это восстановит загрузчик SYSLINUX. Всё же рекомендуется для установки Windows использовать другие средства и другую флешку.
Для установки Windows XP необходимо поместить в корень флешки файлы ntdetect.com (из директории установки Windows /I386/) и grldr (из Grub4dos).
Нужно создать файл флешка/boot.ini:, пример:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect
C:\grldr="Grub4Dos"
- Clonezilla.
Скачайте с оф.сайта ISO-образ последней стабильной или тестируемой версии.
Скопируйте из образа (предварительно распаковав или смонтировав его) 3 файла из директории live так, чтобы на флешке получилась следующая структура:
флешка
├── live
│ ├── filesystem.squashfs
│ ├── initrd.img
│ └── vmlinuz
Скопируйте из файла clonezilla-live-xxx.iso/syslinux/syslinux.cfg строки от первого MENU TITLE до первого MENU END включительно и вставьте их перед первым вхождением LABEL в файле флешка/syslinux/syslinux.cfg
- Ещё примеры пунктов меню для флешка/menu.lst загрузчика Grub4dos:
title find and load NTLDR of Windows
NT/2K/XP
fallback 1
find --set-root /ntldr
chainloader /ntldr
savedefault --wait=2
title find and load CMLDR, the Recovery
Console of Windows NT/2K/XP
fallback 2
find --set-root /cmldr
chainloader /cmldr
#.....................................
# write string "cmdcons" to
memory 0000:7C03 in 2 steps:
#.....................................
# step 1. Write 4 chars "cmdc"
at 0000:7C03
write 0x7C03 0x63646D63
# step 2. Write 3 chars "ons"
and an ending null at 0000:7C07
write 0x7C07 0x00736E6F
savedefault --wait=2
title find and load IO.SYS of Windows
9x/Me
fallback 3
find --set-root /io.sys
chainloader /io.sys
savedefault --wait=2
title find and boot Mandriva with
menu.lst already installed
fallback 4
find --set-root /etc/mandriva-release
savedefault --wait=2
configfile /boot/grub/menu.lst
title find and boot Linux with menu.lst
already installed
fallback 5
find --set-root /sbin/init
savedefault --wait=2
configfile /boot/grub/menu.lst
title commandline
savedefault --wait=2
commandline
title floppy (fd0)
chainloader (fd0)+1
rootnoverify (fd0)
savedefault --wait=2
title back to dos
savedefault --wait=2
quit
title reboot
savedefault --wait=2
reboot
title halt
savedefault --wait=2
halt
title memdrive duplicated from floppy
image file (hd0,0)/sbm.bin
map --mem (hd0,0)/sbm.bin (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
savedefault --wait=2
title memdrive based on win98 partition
(hd0,6)
map --mem (hd0,6)+1 (hd0)
# map --mem (hd0,0)/win98.gz (hd0)
map --hook
chainloader (hd0)+1
rootnoverify (hd0)
savedefault --wait=2
title Boot Windows XP
root (hd0,1)
chainloader +1
savedefault
title Boot Options
lock
find --set-root /submenu.lst
configfile /submenu.lst
title Find “hdd.tag” and chainload
partition
find --set-root /hdd.tag
chainloader +1
title Find and load “ntldr”
find --set-root /ntldr
chainloader /ntldr
title debian-6.0.0-i386-netinst.iso
(hd32 --mem)
map --mem
(hd0,0)/debian-6.0.0-i386-netinst.iso (hd32)
map --hook
root (hd32)
chainloader (hd32)
boot
title debian-6.0.0-i386-netinst.iso
(0xFF --mem)
map --mem
(hd0,0)/debian-6.0.0-i386-netinst.iso (0xFF)
map --hook
root (0xFF)
chainloader (0xFF)
boot
title debian-6.0.0-i386-netinst.iso
(hd32)
map
(hd0,0)/debian-6.0.0-i386-netinst.iso (hd32)
map --hook
root (hd32)
chainloader (hd32)
boot
title debian-6.0.0-i386-netinst.iso
(0xFF)
map
(hd0,0)/debian-6.0.0-i386-netinst.iso (0xFF)
map --hook
root (0xFF)
chainloader (0xFF)
boot
title debian-6.0.0-i386-netinst.iso
(--mem maxblast)
map --mem
(hd0,0)/debian-6.0.0-i386-netinst.iso (hd32)
map --hook
map --mem (hd32)/images/maxblast.igz
(fd0)
map --hook
root (fd0)
chainloader +1
boot
title debian-6.0.0-i386-netinst.iso
(--mem maxblast --mem floppy)
map --mem
(hd0,0)/debian-6.0.0-i386-netinst.iso (hd32)
map --hook
map --mem (hd32)/images/maxblast.igz
(fd0)
map --hook
map --mem (fd0)/floppy.img.gz (fd1)
map --hook
root (fd1)
chainloader +1
boot