Загрузка с аварийного флоппи-диска

Затем, я установил Windows-95 в моем офисе. Она напрочь затерла мой прекрасный MBR Lilo, но оставила мои разделы с Linux в покое. Ядра долго загружаются с флоппи, поэтому я поработал над настройками, чтобы флоппи мог загружать ядро с IDE-диска.

Я сделал этот флоппи примерно так:

  fdformat /dev/fd0H1440      #  отформатировать диск
  mkfs -t minix /dev/fd0 1440 #  создать файловую систему minix
  mount /dev/fd0 /mnt         #  подключить диск к стандартной временной точке
  cp -p /boot/chain.b /mnt    #  скопировать цепочный загрузчик (chain loader) на диск
  lilo -C /etc/lilo.flop      #  установить Lilo и его таблицы на дискету.
  umount /mnt

Заметьте, что дискета должна быть подключена к системе во время запуска инсталлятора Lilo, чтобы Lilo мог правильно построить свои таблицы.

Ниже приведен файл /etc/lilo.flop. Он почти такой же, как и предыдущий:

#  Создает флоппи, который может загружать ядра с IDE.
boot = /dev/fd0
map = /mnt/lilo-map
delay = 100
ramdisk = 0
timeout = 100
prompt
disk = /dev/hda     # 1 Гб IDE, BIOS видит только первые 500 Мб.
   bios=0x80
   sectors = 63
   heads = 16
   cylinders = 2100
image = /vmlinuz
  append = "hd=2100,16,63"
  root = /dev/hda2
  label = linux
  read-only
  vga = extended
other = /dev/hda1
  label = msdos
  table = /dev/hda
  loader = /mnt/chain.b

И последнее. Мне понадобилась MS-DOS 6.2 в моей офисной системе, но я не хотел трогать первый диск. Я установил SCSI-контроллер и диск, создал там файловую систему msdos при помощи команды mkdosfs, и Windows-95 увидел его как "D:". Но, конечно, MSDOS не мог загрузиться с D:. Это не проблема, когда у вас есть Lilo. Я добавил следующее в файл lilo.conf из Примера 2.

other = /dev/sda1
  label = d6.2
  table = /dev/sda
  loader = /boot/any_d.b

С этим дополнением MSDOS-6.2 работает и думает, что он на диске C:, а Windows-95 - на D:.