-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 В сообщении от 20 Август 2002 18:20 Michael написал: > Hi ! > > Возможно ли установить Debian в минимальной конфигурации ? > Или чуть побольше. Мегабайт на 10 - в самый раз. > Где копать ? Установить не получится, такие вещи делаются обычно ручками. Но это получается не Debian, и не совсем по FHS. Основная идея --- то, что тебе не нужно изменять в процессе работы, положи на систему с прозрачной распаковкой(cloop). Пример-максимум: knoppix (на Debian) Только в 10 мегабайт не получится не поработав ножницами запихать даже минимальный Debian, т.к. многие толстые вещи (perl например) унесут за собой в могилу практически все, что делает систему Debian-ом... Чуть больше - уже получится. Но в любом случае придется забыть про легкое внесение изменений в некоторые части файловой структуры.
Итак, возможный сценарий: 1. Ставим на отдельный раздел минимальный debian. 2. Выносим в отдельную иерархию (скажем, /adm) все что может понадобиться только в особом случае (/usr/share/doc, /var/dpkg, /usr/*/perl*, все от dpkg/apt), создавая при этом симлинки на старом месте. Если нужно кириллическую консоль, то придется либо перл оставить на старом месте, либо делать свой пакет, либо искать готовое, так как console-cyrillic зависит от perl, правда там он как обертка лишь к стандартным утилитам. 3. Создаем будущую компрессированную систему: dd if=/dev/zero of=/compr.img bs=1000 count=??? # зависит от того, сколько # получится вынести в пункте 3 mke2fs /compr.img -F tune2fs -c0 /compr.img mkdir /compr mount -t ext2 compr.img /compr -o loop 3. Переносим в /compr (тоже с созданием симлинков) весь /usr, кое-что из /bin /sbin /lib, в том числе и /lib/modules (все зависит от того, что нужно сделать до и в процессе /etc/init.d/mountall.sh) 4. Берем нормальную систему 5. Ставим cloop-utils, подготавливаем исходники ядра и cloop 6. Собираем для результирующей системы ядро с поддержкой того, что нужно; ставим на место. (модули в /compr/lib/modules создаваемой системы, ядро в /boot) Надо заранее посчитать все зависимости, а в /etc/init.d/modutils зарешетить depmod -a 7. Собираем для этого же ядра cloop.o и ставим его в /lib/ создаваемой системы. Для тестирования стоит собрать и для рабочей системы: cd /path/to/cloop make KERNEL_DIR=/patg/to/kernel 8. Подготавливаем файл устройства для cloop: mkdev /dev/cloop b 0 240 как на рабочей так и на создаваемой системе. 9. Размонтируем compr.img 10. Сжимаем его: create_compressed_fs compr.img 65536 > compr.zimg Для этого у тебя должно быть достаточно виртуальной памяти, чтобы поместился весь сжатый образ. 11. Получившийся файл должен быть иметь размер 20..35% от оригинала. 12. Переносим старый (несжатый) образ и /adm в удобное место. Они могут пригодиться. 13. Помещаем compr.img в удобное место создаваемой системы (например в корень) 14. Изменяем /etc/init.d/mountall.sh: /sbin/insmod /lib/cloop.o file=/compr.zimg mount -t ext2 /dev/cloop /compr -o ro в районе строки с "Mounting local filesystems..." или делаем свой init-скрипт, что правильнее но немного сложнее в объяснении. 15. Настраиваем boot-loader (grub,lilo) 16. Проверяем :) Почти таким же образом я создал CD на 29 мегабайт с небольшим набором стандартных утилит, python, gtk, python-gtk, uisp, XFree86 4.1, blackbox, ssh, dillo, wget,pppd сотоварищи и программой на python + python-gtk для которого этот диск создавался :) - -- regards, Igor A. Tetuev www.linux.psu.ru debian.psu.ru GnuPG key id: 0x49060C09 fingerprint: F8EF 2276 8BE3 1923 95DB 6E4A 3DCE 6528 4906 0C09 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.7 (GNU/Linux) iD8DBQE9cegdPc5lKEkGDAkRAichAJsFTkssKQe9cG7TjY/b55+NFB1vZwCcCs6c XygZIiH8aRC1sNxsr10TlP0= =MV0y -----END PGP SIGNATURE-----

