Видео ролики бесплатно онлайн

Смотреть ева элфи видео

Официальный сайт 70rus 24/7/365

Смотреть видео бесплатно

13.05.2009 16:52

lwilisПро Slackware 12.2 с ядром generic и про initrd

Читаю комментарии и замечаю, что есть желающие установить Slackware. Дистрибутив очень либеральный, поэтому есть несколько вариантов установки. Для ленивых с шилом в пятке подойдет первый вариант, а для интересующихся я рассмотрю вариант установки номер два.

Первый вариант - ставим все (full install). Действуем по пунктам руководства, благо Патрик предусмотрел краткую, но достаточную инструкцию. Ничего особенного читать не придется - все рекомендации выводятся на экран еще до начала установки. По итогам получим работающую систему, с KDE 3.5.10, XFCE 4.4.3, fluxbox etc. Причем инсталлятор поинтересуется какую именно среду вам нужно после загрузки системы. На этом обсуждение первого варианта закончилось.



Второй вариант предполагает, что нам нужны не все пакеты из доступных в дистрибутиве. После установки нам хочется видеть систему под управлением модульного ядра. Зачем? Место на диске (да я знаю какие сейчас объемы, но а если у нас нетбук). Также небольшое ускорение загрузки и работы системы на модульном ядре, относительно ядра-"все-в-одном". Экономия оперативной памяти. Сокращение объемов при бекапе системы, да и бессмысленно держать в системе лишнее.



Если вы уже на этой строчке, и вам интересно, то к делу.

Созданы необходимые разделы на диске (для определенности предлагаю в этот раз сделать только один раздел, будем монтировать в него корень файловой системы, то есть / и еще можно swap сделать, но я не делаю), выбраны файловые системы, выбраны цели (в нашем случае цель будет одна, то есть только точка монтирования /), выбраны нужные пакеты для установки, копирование прошло успешно, установщик поинтересовался начальными настройками системы, автоматическая установка lilo в mbr прошла успешно, все хорошо, нам предлагают перезагрузиться в новую систему.



И тут выясняется, что не может смонтироваться первый раздел в /mnt. А как следствие, загрузка системы на этом прерывается. Здесь я исхожу из умолчания, что диск у нас один, определиться должен как /dev/hda и раздел на нем /dev/hda1.



Когда я впервые столкнулся с такой ситуацией, впал в состояние "немого пардона" минут на несколько. Самое удивительное было то, что все так хорошо шло, делал без отклонений от рекомендаций, вот только не все пакеты поставил. Впоследствии оказалось, что ситуация очевидна, а для выхода из нее все уже предусмотрено.



Небольшая справка. Возвращаясь немного назад в процесс установки, заметим, какое ядро мы выбрали. А выбрали мы kernel-generic-smp и выбрали соответствующий пакет с модулями modules-generic-smp. Еще ставили пакет с заголовками ядра (kernel-headers) и исходники (kernel-source) тоже, но это нас пока не интересует. Теперь вспоминаем, что ядро generic содержит в себе только те компоненты, которые с большой вероятностью будут востребованы любым компьтерным железом. А все, что индивидуально - вынесено в модули. Еще нам необходимо вспомнить какую файловую систему

поддерживает ядро, по-умолчанию такой системой является ext2. Вполне логично, что во времена ext3 (а уже и ext4 в новейших дистрибутивах) именно она и будет использована (для ext2 до сих пор есть ниша на нетбуках, но рассмотрим общий случай). То есть выходит, что наше ядро поддерживает только ext2, а корневой раздел нашего диска несет файловую систему ext3. Что делать? Ответ есть. Нам нужно вспомнить какой контроллер обслуживает наш жесткий диск. Вариантов,по сути, два IDE или SATA. Если IDE, то количество телодвижений несколько сократится. Иначе вспоминаем, что SATA-диски в линуксе представлены как устройства scsi и, как следствие, файл устройства нашего диска именуется /dev/sda, а раздел на нем /dev/sda1. Теперь нам нужно узнать где тот мост, который соединит наше ядро и корневую файловую систему. Этим мостом послужит файл initrd.gz.



Что такое файл initrd.gz. Это просто архив минимально необходимого дерева файловой системы для запуска ОС. Нас в этом архиве интересует наличие модулей для монтирования файловой системы ext3. Правда, если нам очень не повезло, то еще потребуется драйвер для sata контроллера, но драйверы для моих sata есть в ядре generic, поэтому считаем, что и у вас тоже контроллер не из экзотики. А где взять этот файлик initrd.gz?



Его нужно сгенерировать самостоятельно. Очень удобно это сделать при помощи утилиты mkinitrd. Поэтому при установке системы не забудьте про пакет mkinitrd.

Теперь нам все-таки нужно загрузиться в нашу новую систему. Для начала вставим в привод установочный диск Slackware и, немного погодя, увидим системное приглашение boot:там напечатаем

1
hugesmp.s root=/dev/hda1 rdinit= ro

то есть хотим загрузить ядро hugesmp.s (оно лежит на установочном диске), а в качестве корня используем нашу файловую систему. После успешной загрузки и авторизации перейдем в каталог /boot, командуем

1
mkinitrd -c -k 2.6.27.7-smp -m mbcache:jbd:ext3 -f ext3



После этой процедуры в каталоге /boot появится файл initrd.gz и каталог initrd-tree. Как я упоминал выше, нас интересуют модули для ext3, поэтому проверим их наличие:

1
find  /boot/initrd-tree/ -name "*ko"



если в ответ мы получили:

1
2
3
4
5
/boot/initrd-tree/lib/modules/2.6.27.7-smp/kernel/fs/ext3/ext3.ko

/boot/initrd-tree/lib/modules/2.6.27.7-smp/kernel/fs/jbd/jbd.ko

/boot/initrd-tree/lib/modules/2.6.27.7-smp/kernel/fs/mbcache.ko



то все не зря.

После создания initrd.gz, нам нужно сказать системе, как его непременно использовать. Для этого переконфигурируем загрузчик системы. Как конфигурируется lilo нам уже рассказал Патрик (файл /boot/README.initrd, он же является основой настоящей заметки), а я расскажу про GRUB... В следующий раз. Не переключайтесь :)



P.S. пишите уточнения, я мог что-то пропустить

P.P.S любителям reiserfs и других файловых систем просьба оставить флейм для другого случая, При желании замените все вхождения сочетания ext3 на reiserfs. (но возникновение ньюансов возможно)


Тэги: initrd kernel-generic slackware
+ 12 -
Похожие Поделиться

booley 13.05.2009 16:55 #
+ 0 -
Пост обрезался?
lwilis 13.05.2009 17:02 #
+ 0 -
на wi-fi сижу, пасмурно, - коннект падает. Исправлю пост
lwilis 13.05.2009 17:16 #
+ 0 -
ну вот, поправил.
predator 13.05.2009 17:24 #
+ 0 -
конечно можно и на других сайтах посмотреть, но дополни про модульное ядро (что это такое и с чем его едят)
lwilis 13.05.2009 17:32 #
+ 2 -
Модульное ядро состоит из собственно минимального ядра (с ограниченными возможностями) и армии модулей в /lib/modules/`uname -r`/ - доводящими возможности ядра до необходимых. То есть в процессе работы системы нужные модули подключаются к ядру, а весь userspace думает что это у нас ядро такое фичастое. как-то так
predator 13.05.2009 17:25 #
+ 0 -
А слака устанавливается из прекомпилированных пакетов или sourc'ов?
lwilis 13.05.2009 17:30 #
+ 0 -
Из прекомпилированных
Username 13.05.2009 18:01 #
+ -1 -
и почему так мало плюсов? зачот!
predator 13.05.2009 18:49 #
+ 0 -
наверно тут полно народу кто этим не раз занималься и ничего нового для себя не нашел. Даже если это про вас ставьте +!
booley 13.05.2009 21:00 #
+ 0 -
Два плюса не поставить, а жаль.
Username 14.05.2009 00:00 #
+ -1 -
да кстати
lwilis 14.05.2009 00:09 #
+ 0 -
Спасибо, парни.
predator 21.05.2009 19:40 #
+ 0 -
кажется пришло время рассказать про настройку GRUB
lwilis 22.05.2009 14:48 #
+ -1 -
Ок. Мне просто показалось, что это не нужно общественности.

Смотреть онлайн бесплатно

Онлайн видео бесплатно


Смотреть русское с разговорами видео

Online video HD

Видео скачать на телефон

Русские фильмы бесплатно

Full HD video online

Смотреть видео онлайн

Смотреть HD видео бесплатно

School смотреть онлайн