How-to, linux @ 16 Июнь 2009

В общем бродил тут по интернетам, по дебиановским форумам в поисках инструкций на тему: "Как загрузить Linux в оперативную память" В общем нашёл удобное решение в виде пакета debirf. Этот пакет(на самом деле это просто набор bash скриптов) предоставляет удобный интерфейс для установки и создания образа дистрибутива при помощи debootstrap, initramfs-tools и bash, для упаковки его в образы initrd. Дополнительно позволяет делать образы iso, которые при помощи того же unetbootin можно закатать на флэшку. В общем, это прекрасный инструмент для создания собственного livecd. Для того чтобы этот пакет появился у Вас, в Debian Lenny(в squeeze, sid и выше, а также в Ubuntu этот пакет должен быть), нужно добавить в /etc/apt/sources.list deb http: //cmrg.fifthhorseman.net/debian unstable debirf deb-src http: //cmrg.fifthhorseman.net/debian unstable debirf И импортировать gpg ключ репозитория: wget http: //fifthhorseman.net/dkg.gpg -O - | sudo apt-key add - sudo aptitude update sudo aptitude install debirf Теперь, после установки, можно начать создавать свой супер-мега-дистрибутив. Небольшое техническое отступление, debirf работает с так называемыми "сценариями". По умолчанию debirf предоставляет 3 сценария установки: xkiosk - система с очень простым WM и Iceweasel. rescue - типичные rescuecd утилиты типа install lvm2 lsof hdparm partimage pciutils testdisk foremost mdadm smartmontools eject wodim ddrescue cryptsetup sdparm. (Набор весьма маленький, однако легко можно добавить нужные Вам утилиты) minimal - базовая установка Debian. Тут сказать нечего, это, так сказать основа для будущей системы. Итак, приступим к установке непосредственно livecd: Создадим папку с говорящим названием ;) mkdir ~/mycooldebiandistro cd ~/mycooldebiandistro Распакуем один из образов: tar xzf /usr/share/doc/debirf/example-profiles/minimal.tgz Теперь в папке будет папка minimal, в ней соответственно debirf.conf и папка modules, с сценариями установки, можно воспользоваться базовыми сценарями из /usr/share/debirf/modules/ В файле debirf.conf можно задать следующие параметры: DEBIRF_LABEL="debirf—minimal" //hostname дистрибутива #DEBIRF_BUILDD=/home/user/mycooldebiandistro //папка где будем собирать наш дистрибутив #DEBIRF_SUITE=lenny //указываем имя версии дистрибутива #DEBIRF_DISTRO=debian //Указываем дистрибутив который будем собирать #DEBIRF_MIRROR=http: //mirrors.kernel.org/${DEBIRF_DISTRO} //То, откуда скачивать пакеты для дистрибутива #DEBIRF_KEYRING=ТУТIDКЛЮЧА //для подписи нашего debootstrap export http_proxy=Прокси Итак, сценарии мы распаковали, с версиями дистрибутива определились. Будем начинать сборку: debirf make minimal Следует, однако, заметить, что по умолчанию собирается generic ядро для этого дистрибутива. Чтобы задать своё ядро(а я так и сделал) нужно запускать с параметром -k debirf make -k /path/to/kelnel.deb minimal В моём случаеэто выглядело так: debirf make -k … /linux—image—2.6.30—lib.30_2.6.30—lib.30—10.00. Custom_i386.deb xkiosk Пока оно там скачивается, собирается в 2 файла, можно смело пойти перекусить или ещё чего(а с моими медленными интернетами ещё и поспать можно было бы ;) После этого скопируем initrd и vmlinuz файлы в /boot и добавим запись о них в menu.lst cp vmlinuz—2.6.30—lib.30 /boot/ cp debirf—xkiosk_lenny_2.6.30—lib.30.cgz /boot/ И прописываем в /boot/grub/menu.lst следующее: title Cool Debian Distro root (hd0, 0) kernel /boot/vmlinuz—2.6.30—lib.30 initrd /boot/debirf—xkiosk_lenny_2.6.30—lib.30.cgz После этого можно перезагружаться в свежую систему.

1 Response to “Debian in Ram. Загрузка Debian в оперативную память. Debirf”

  1. Franklin (анонимно) Says:

    Супер а реально туда икссервер сасунуть?

Leave a Reply

Не регистрировать/аноним

Используйте нормальные имена. Ваш комментарий будет опубликован после проверки.

Если вы уже зарегистрированы как комментатор или хотите зарегистрироваться, укажите пароль и свой действующий email.
(При регистрации на указанный адрес придет письмо с кодом активации и ссылкой на ваш персональный аккаунт, где вы сможете изменить свои данные, включая адрес сайта, ник, описание, контакты и т.д.)


(обязательно)