Возможно вы искали: 'Wildlife Park 2: Marin...'

May 15 2025 19:14:21
  • Как сделать 8Gamers.Ru домашней страницей?
  • Игры
    • База данных по играх
    • Игровые новости
    • Игровая индустрия
    • Обзоры на игры
    • Прохождения игр
    • Гайды к играм
    • Превью о играх
    • Игровые тизеры
    • Игровые арты
    • Игровые обои
    • Игровые скриншоты
    • Игровые обложки
    • Игровые трейлеры
    • Игровое видео
    • Вышедшие игры
    • Ближайшие релизы игр
  • Кино и ТВ
    • База данных по кино
    • Статьи о кино
    • Постеры
    • Кадры из кино
    • Кино трейлеры
    • Сегодня в кино
    • Скоро в кино
  • Комиксы и манга
    • Манга по алфавиту
    • База данных по комиксах
    • Читать онлайн комиксы
    • Читать онлайн манга
    • База персонажей
  • Читы и коды
    • Чит-коды для PC игр
    • Чит-коды для консольных игр
    • Трейнеры
    • Коды Game Genie
  • Моддинг
    • Модификации
    • Карты к играм
    • Программы для моддинга
    • Статьи о моддинге
  • Геймдев
    • Всё о создании игр
    • Список движков
    • Утилиты в помощь игроделу
    • Конструкторы игр
    • Игровые движки
    • Библиотеки разработки
    • 3D-модели
    • Спрайты и тайлы
    • Музыка и звуки
    • Текстуры и фоны
  • Рецензии
    • Игры
    • Кино
    • Аниме
    • Комиксы
    • Мангу
    • Саундтреки
  • Саундтреки
    • Лирика
  • Файлы
    • Патчи к играм
    • Русификаторы к играм
    • Сохранения к играм
    • Субтитры к кино
  • Медиа
    • Видео
    • Фото
    • Аудио
    • Фан-арты
    • Косплей
    • Фото с виставок
    • Девушки из игр
    • Рисунки
    • Рисуем онлайн
    • Фотохостинг
  • Юмор
    • Анекдоты
    • Афоризмы
    • Истории
    • Стишки и эпиграммы
    • Тосты
    • Цитаты
  • Флеш
    • Азартные
    • Аркады
    • Бродилки
    • Гонки
    • Для девочек
    • Для мальчиков
    • Драки
    • Квесты
    • Леталки
    • Логические
    • Мультфильмы
    • Открытки
    • Приколы
    • Разное
    • Спорт
    • Стратегии
    • Стрелялки
Статистика

Статей: 87772
Просмотров: 96111483
Игры
Injustice:  Gods Among Us
Injustice: Gods Among Us
...
Dark Souls 2
Dark Souls 2
Dark Souls II - вторая часть самой хардкорной ролевой игры 2011-2012 года, с новым героем, сюжето...
Battlefield 4
Battlefield 4
Battlefield 4 - продолжение венценосного мультиплеер-ориентированного шутера от первого ли...
Кино
Steins;Gate
Steins;Gate
Любители японской анимации уже давно поняли ,что аниме сериалы могут дать порой гораздо больше пи...
Ку! Кин-дза-дза
Ку! Кин-дза-дза
Начинающий диджей Толик и всемирно известный виолончелист Владимир Чижов встречают на шумной моск...
Обзоры на игры
• Обзор Ibara [PCB/PS2] 18357
• Обзор The Walking ... 18801
• Обзор DMC: Devil M... 19879
• Обзор на игру Valk... 15877
• Обзор на игру Stars! 17764
• Обзор на Far Cry 3 17948
• Обзор на Resident ... 16024
• Обзор на Chivalry:... 17508
• Обзор на игру Kerb... 17981
• Обзор игры 007: Fr... 16619
Превью о играх
• Превью к игре Comp... 17960
• Превью о игре Mage... 14464
• Превью Incredible ... 14721
• Превью Firefall 13479
• Превью Dead Space 3 16334
• Превью о игре SimC... 14730
• Превью к игре Fuse 15442
• Превью Red Orche... 15542
• Превью Gothic 3 16343
• Превью Black & W... 17354
Главная » Статьи » Разное » Создание специализированных загрузочных Floppy дисков под Linux (linux mount boot floppy)

Создание специализированных загрузочных Floppy дисков под Linux (linux mount boot floppy)

Ключевые слова: linux, mount, boot, floppy, (найти похожие документы)

From: Andrew E. Kuznetsoff
Newsgroups: http://linuxportal.ru/
Date: Mon, 27 Mar 2004 14:31:37 +0000 (UTC)
Subject: Создание специализированных загрузочных Floppy дисков под Linux

Оригинал: http://linuxportal.ru/entry.php/P838_0_3_0/

Linux на Дискете.

1. Предисловие.
2. Права и отказ от обязательств.
3. О чем мужик шумит.
4. Минимальные требования.
5. К барьеру.
5.1 Файловая система.
6. Что на диске твоем.
7. Как быть дальше.
8. Обработка напильником.
9. Автор.
10. Литература.


1.Предисловие.

В первую очередь хочется сказать, что на отработку данного материала я
лично потратил уйму времени. Этот материал представляет собой краткую
информацию о создании специализированных загрузочных дисков. А не тех,
которые вы можете сделать выполнением команды

mkbootdisk -device /dev/fd0 2.4.21

или с помощью утилиты rawrite из под Windows или MS-DOS.

2. Права и отказ от обязательств.

Вся содержащаяся в этом тексте информация предназначеная для Linux и
Intel платформ, но так же может быть использована и для других
процессоров. Все написанное здесь написано лишь с целью оказаться
полезной информацией, но не является непосредственной инструкцией к
действию.

3. О чем мужик шумит.

Загрузочным диском в данном конкретном случае я хочу назвать
"полноценную Linux - систему в миниатюре", т.е мы будем говорить о
загрузочном диске самодостаточном для самостоятельного старта и
работы. Наверное, вы уже встречали такие Linux - системы. Например,
мне первое, что попало в руки это дискета на 3,5" с помощью которой
поднимался роутер (freesco), все ПО для запуска и конфигурирования
было на нем, и было самодостаточным. Честно говоря никода бы не полез
в эти дебри, если бы не старое ядро. Я не буду здесь говорить о типах
загрузочных дисков, все это в полной мере вы можете прочитать в Boot
Disk-How-To.


4. Минимальные требования.

Для работы нам потребуется флопповод (/dev/fd0 хотя бы).
Поддержка петлевого интерфейса ядром. Проверить наличие поддержки
можно набрав команду

# ls -la /dev/loop?

Нам понадобятся исходники ядра и четкое представление о том, что
должен делать диск, а так же положительный опыт сборки ядра.


5. К барьеру.

Я никого не хочу пугать, но если ваша рабочая Linux - система живет
как минимум на 600 Мб (приблизительный размер RedHat 7.2 в режиме
разработчика без X-oв). То здесь нам придется немного попотеть, что бы
запихнуть все, что нам понадобится как минимум на 1400 Кб.

Почувствуйте разницу.
И так без чего никак не обойтись:
1.минимальный набор каталогов: /bin; /proc; /lib; /dev; /etc; /usr; /tmp;
2.минимальный набор утилит: mv; cp; ls; sh и прочих
3.минимальный набор конфигурационных файлов: rc; inittab; fstab и
прочих
4. /dev/hd*; /dev/tt*; /dev/fd0 и прочие


5.1 Файловая система.

Сформировать файловую систему для загрузочного диска можно двумя
способами:

1.Используя RAM - диск, если ваша базовое ядро поддерживает RAM -
диски.Поддерживается по умолчанию линейкой 2.4.хх.

2.Используя петлевое устройство (loopback device), если ваше базовое
ядро поддерживает loopback devices.

Поддержка RAM - дисков понадобится нам и для работы нашего
загрузочного диска. Так как я не прибегал к первому способу
формирования файловой системы, то как следствие мы будем действовать
по второму.

Для начала сформируем файл заполненный 0, в котором мы будем создавать
файловую систему нашего загрузочного диска.

#dd if=/dev/zero of=/tmp/fsfile bs=1k count=4000

Таким образом, мы получим файл размером 4096 Кб, этого нам будет
вполне достаточно для корня файловой системы, но об этом позже.
Теперь мы его отформатируем. Есть несколько вариантом mke2fs,
mkfs.ext3, mkfs.xfs и mkfs.raiserfs. Здесь выбор за вами я пользовался
mke2fs преследуя только свои интересы.

#mke2fs -m 0 -N 2000 /tmp/fsfile

По правилам использования этих и других опций читайте # man mke2fs и
прочии маны.

#mkdir /mnt/rootfs
#mount -o loop /tmp/filefs /mnt/rootfs


6. Что на диске твоем.

Поймите меня правильно, но я не стану сейчас описывать в какой
директории, что у вас лежит или, что должно лежать это займет
несколько страниц и полностью отвлечет от темы. Подробности все в том
же Boot-Disk-How-To.

Создаем каталоги /bin; /sbin; /dev; /var; /usr; /proc; /etc; /lib;
/mnt;на нашей файловой системе.

#mkdir /mnt/rootfs/bin

Заполняем /dev

#cp -dpR /dev/fd0* /mnt/rootfs/dev/
#cp -dpR /dev/ram? /mnt/rootfs/dev/
#cp -dpR /dev/tty[0-6] /mnt/rootfs/dev/
#cp -dpR /dev/hd[a-c]* /mnt/rootfs/dev/

Ну и все иные устройства, поддержка которых необходима, но не
перестарайтесь.

На самом деле можно и не копировать все эти устройства, а можно
заставить rc скрипт выполнять mknod для необходимых устройств. Но не
забудьте, что console; mem; kmem; null; ram0 должны быть обязательно.
Заполняем /etc

Здесь все согласно ваших намерений, могу только указать то, что
необходимо на 100%

1.rc
2.inittab
3.fstab

На самом деле здесь большое поле для исследовательской деятельности и
все остальное, что вы внесете сюда зависит только от вашей задачи.

Самый простой rc

#!/bin/sh
/bin/mount -av
/bin/hostname Diskotech
/bin/sh

Самый простой fstab

/dev/ram0 / ext2 defaults 1 1
/proc /proc proc defaults 0 0

Самый простой inittab

id:2:initdefault
si::sysinit:/etc/rc
1: 2345: respawn: /sbin/getty 9600 /dev/tty1
2: 23: respawn: /sbin/getty 9600 /dev/tty2

Заполняем /bin

Тут Начинается самое веселое, столько всего, а места на диске
практически и нет, без паники! Все лечится! Берем пакет busybox,
собираем у себя и читаем мануал. В зависимости от версии "полной
коробочки" у вас будут различное и ее наполнение.

# cp -R /bin/busybox /mnt/rootfs/bin/

И создаем все возможные софтлинки.

Заполняем /lib

Ну тут все совсем просто
#ldd /sbin/mke2fs
libext2fs.so.2 => /lib/libext2fs.so.2 (0x40025000)
libcom_err.so.2 => /lib/libcom_err.so.2 (0x4003c000)
libe2p.so.2 => /lib/libe2p.so.2 (0x4003e000)
libuuid.so.1 => /lib/libuuid.so.1 (0x40043000)
libc.so.6 => /lib/libc.so.6 (0x40046000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000

С помощью команды ldd мы выясним все необходимые нам библиотеки и
скопируем их в
/mnt/rootfs/lib используя ключ -R дабы софтлинки были скопированы без
нарушений.

Заполняем /lib/modules

В этом нам поможет modules.conf или lsmod кому, что нравится. Самое
главное не забыть модулей файловой системы с которой придется работать
если она отлична от файловой системы загрузочного диска. Не забудте
vfat.o мне это стоило больших неприятностей, когда заказчик не смог
примонтировать саму дискету. Что лежит у меня? Дрова CD_ROM. Дрова
мультипортовки, и прочее.

7. Как быть дальше.

Если формирование корневого каталога закончено самое время начать
волноваться посильнее. Все дело в том, что теперь могут начаться
проблемы. Но об этом позже.

#umount /mnt/rootfs
#gzip -v9 /tmp/fsfile

И так образ нашей корневой файловой системы готов. В сжатом виде
составляет, что-то вроде 650 Kb. Переходим к следующему этапу,
формированию самого диска.

8. Обработка напильником.

Что ж переходим к этапу формирования ядра. Первоначально дабы не
озадачиваться персональной сборкой ядра. Предлагаю самое простое это
просто выполнить

#cd /usr/src/linux
#make bzImage

И посмотреть какого размера получится ядро. Если те же 650-800 Kb, то
вполне приемлемый размер. Если ядро всетаки большое, то придется
потратить часок другой на удаление лихних компонентов. Хочу напомнить,
что ядро должно поддерживать в обязательном порядке RAM- диски, размер
RAM диска по умолчанию 4096 байт, можно и больше в описываемом случае
в этом нет необходимости. Так же в ядро должна быть вкомпилированная
поддержка корневой файловой системы.

Теперь маленькая хитрость, что бы не выполнять десяток операций по
созданию загрузочных записей на диске, выполним всего одну

#mkbootdisk -device /dev/fd0 2.4.21

тем самым сформируем шаблон загрузочной дискеты размером 1,44 Mb, если
этого размера изначально не хватает, то сформируем дискетку побольше

#mkbootdisk -device /dev/fd0u1680 2.4.21

По крайней мере мне такого размера хватало за глаза.
Теперь монтируем нашу дискету и заполним ее необходимой информацией.
То есть скопируем на нее образ корневой файловой системы

#cp /tmp/fsfile.gz /mnt/floppy

Запускаем любимый текстовый редактор, правим файл syslinux.cfg и пишем
что-то вроде приведенного ниже текста.

default update
vga=4
prompt 1
display boot.msg
timeout 100
label update
kernel bzImage
append initrd=fsfile.gz rw root=/dev/ram
Вот собственно и все. Наш корневой загрузочный диск готов.

9. Автор.
Andrew E. Kuznetsoff aka Разгильдяй на обкуренной кошке.

10. Литература.
BootDisk-HowTo - последнюю версию документа ишите на http://www.tldp.org
При формировании статьи были разобраны на состравляющие.
Minimalist Linux Router от Freesco
Russian Trinux Kit дискетная версия.
1701 Прочтений •  [Создание специализированных загрузочных Floppy дисков под Linux (linux mount boot floppy)] [08.05.2012] [Комментариев: 0]
Добавил: Ukraine Vova
Ссылки
HTML: 
[BB Url]: 
Похожие статьи
Название Добавил Добавлено
• Создание специализированных загрузо... Ukraine Vova 08.05.2012
Ни одного комментария? Будешь первым :).
Пожалуйста, авторизуйтесь для добавления комментария.

Проект входит в сеть сайтов «8Gamers Network»

Все права сохранены. 8Gamers.NET © 2011 - 2025

Статьи
Рецензия на Pressure
Рецензия на Pressure
Чтобы обратить на себя внимание, начинающие маленькие разработчики, как правило, уходят в жанры, ...
Рецензия на Lost Chronicles of Zerzura
Рецензия на Lost Chron...
Игры, сделанные без любви и старания, похожи на воздушный шар – оболочка есть, а внутри пусто. Lo...
Рецензия на The Bridge
Рецензия на The Bridge
«Верх» и «низ» в The Bridge — понятия относительные. Прогуливаясь под аркой, можно запросто перей...
Рецензия на SimCity
Рецензия на SimCity
Когда месяц назад состоялся релиз SimCity, по Сети прокатилось цунами народного гнева – глупые ош...
Рецензия на Strategy & Tactics: World War 2
Рецензия на Strategy &...
Название Strategy & Tactics: World War II вряд ли кому-то знакомо. Зато одного взгляда на ее скри...
Рецензия на игру Scribblenauts Unlimited
Рецензия на игру Scrib...
По сложившейся традиции в информационной карточке игры мы приводим в пример несколько похожих игр...
Рецензия на игру Walking Dead: Survival Instinct, The
Рецензия на игру Walki...
Зомби и продукция-по-лицензии — которые и сами по себе не лучшие представители игровой биосферы —...
Обратная связь | RSS | Донейт | Статистика | Команда | Техническая поддержка