Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > *NIX системы: Общие вопросы > Suse настройка ядра


Автор: Rickert 1.2.2007, 14:21
Посоветуйте ссылки по настройки / установке. В частности очень интересует настройкка ядра.
Желательно как можно подробнее.
Suse Desktop 10 версия

Автор: bilbobagginz 1.2.2007, 16:01
заходи на сайт новелл, там всё есть:
http://www.novell.com/documentation/sled10/index.html


Автор: MAKCim 1.2.2007, 17:28
bilbobagginz, 
по ядру я там ничего не увидел
Цитата(Rickert @  1.2.2007,  14:21 Найти цитируемый пост)
В частности очень интересует настройкка ядра.
Желательно как можно подробнее.

что конкретно интересует? сами настройки (CONFIG_...) или процесс компиляции?

Автор: bilbobagginz 1.2.2007, 17:44
Цитата

по ядру я там ничего не увидел

sysctl там описано прекрасно, а это единственные настойки ядра, которые SLED10 позволяет, остваясь системой SLED10.
это не свободно-открытый дистр, а корпоративный.

Автор: MAKCim 1.2.2007, 17:49
bilbobagginz, 
может Rickert-у нужен просто Open SuSE 10.0

Добавлено @ 17:51 
или SuSE Desktop 10 = SLED10?

Автор: bilbobagginz 1.2.2007, 18:14
Цитата

или SuSE Desktop 10 = SLED10? 

насколько я знаю ... да. 
но я не на 100% уверен smile

просто OpenSUSE - это как-бы открытый проект, но он http://ru.opensuse.org/%D0%94%D0%BE%D0%B1%D1%80%D0%BE_%D0%BF%D0%BE%D0%B6%D0%B0%D0%BB%D0%BE%D0%B2%D0%B0%D1%82%D1%8C_%D0%BD%D0%B0_openSUSE.org


Автор: Rickert 1.2.2007, 18:34
Как бы сказать: я первый раз сел осваивать новую ОСь.
Но, естественно меня не интересует вариант: ставишь, она сама настраивается. И это не только моё предпочтение, а и по работе необходимо будет постоянно менять ядро, поэтому я ещё не знаком с тем, какие вариант смены ядра есть:
Компиляции и просто что-то типа конфига?
В первую очередь меня интересует перекомпиляция, ну и конфигурация тоже, есесно.
Сейчас посмотрю сайт, который рекомендовал bilbobagginz

Добавлено @ 18:39 
И ещё одно: посоветуйте для изучения уроки/книги по системному программированию под Linux Suse

Большое вам спасибо!

Автор: BobiKK 1.2.2007, 18:46
Я бы порекомендовал "Операционная система UNIX. 2-е издание. Андрей Робачевский, Сергей Немнюгин, Ольга Стесик". Рассматривается просто архитектура unix-систем, ажминистрирование и системное программирование. В частности, системные вызовы для работы с ФС, управление процессами, IPC, сокеты

Автор: MAKCim 1.2.2007, 20:59
Цитата

И ещё одно: посоветуйте для изучения уроки/книги по системному программированию под Linux Suse

советую вот http://oz.by/books/more1016304.html
можно http://oz.by/books/more103647.html
и http://oz.by/books/more1025384.html по ядру

Автор: Rickert 1.2.2007, 21:13
MAKCim, мерси.

ЗЫ
Вопросы про ядро - в силе!

Автор: MAKCim 1.2.2007, 21:19
Цитата

необходимо будет постоянно менять ядро, поэтому я ещё не знаком с тем, какие вариант смены ядра есть:
Компиляции и просто что-то типа конфига?

есть динамические параметры ядра, которые можно изменить в процессе работы напрямую через /proc или с помощью sysctl (см. man sysctl), а есть фишки, которые включаются/выключаются посредством изменения .config и перекомпиляции

Автор: bilbobagginz 1.2.2007, 21:22
первая - классика 
третья - тоже супер, несмотря на то, что третья вышла пару лет назад ( имею сам такую, но ещё не прошелся по ней серьёзно )

Rickert, начнём с того, что ты выбрал дистру, которая не очень приветствует игры с ядром:
это новельная дистра, ориентированная на стандартизацию, а не кустомизацию на уровне ядра.

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

а так повторяться не хочется.


Автор: MAKCim 1.2.2007, 21:31
Rickert, 
в принципе - в компиляции (2.6*) нет ничего сложного
общая схема:
1. Берешь сырцы с kernel.org
2. Распаковываешь в /usr/src
3. Заходишь в директорию с распакованными сырцами
4. sudo make config (menuconfig, xconfig) (рекомендую menuconfig): конфигурируешь ядро под свою машину
5. sudo make
6. sudo make modules_install (если собирал модули)
7. берешь System.map и bzImage и копируешь их в /boot
8. настраиваешь lilo/grub на новый образ
9. reboot
да, по поводу дистрибутива bilbobagginz правильно сказал
хочешь поиграться с настройками на всех уровнях - ставь gentoo  smile 

Автор: bilbobagginz 2.2.2007, 01:18
на дебиан/убунту это немного проще, но для начала устанавливаешь пакет:
Код

apt-get install kernel-package

это одноразовая процедура.
далее следуешь инструкциям MAKCimа, до пункта 4. потом:
Код

make-kpkg --revision=rickert1 kernel_image

и ждёшь. ядро собирается и в папке /usr/src и создается пакет ядра kernel-image-<версия>-rickert1-<архитектура>.deb
устанавливаем его:
Код

dpkg -i kernel-image-<версия>-rickert1-<архитектура>.deb

и всё. можно перезагружаться... (все этапы 5-->8) - автоматизированы. 
кроме-того можно потом пакет удалить/обновить.



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

Автор: Rickert 2.2.2007, 10:58
А где мы мне найти справочник по всем этим командам:
dpkg, make-kpkg и т.д.
А то вы написали, а я фиг знает - что это такое. Мне ж не надо просто знать, мне понимаю чего делаю нужно smile
Спасибо!

Автор: MAKCim 2.2.2007, 11:06
Цитата(Rickert @  2.2.2007,  10:58 Найти цитируемый пост)
А где мы мне найти справочник по всем этим командам:

в man-ах вестимо  smile 
man dpkg
man apt-get

Автор: bilbobagginz 2.2.2007, 15:30
Цитата

А где мы мне найти справочник по всем этим командам:

Rickert, нет в SUSE этих команд. Это в системах Debian, Ubuntu, есть инструменты эти для подговки своего ядра, и дополнительных модулей.

а то, что порекомендовал сделать MAKCim - это можно сделать на любой системе (и на твоей).
рекомендую сначала использовать не нулёвый .config, как посоветовал MAKCim, а старый, т.е.
перед пунктом 4. нужно скопировать старый конфиг:
Код

cp /boot/config-<версия твоего ядра> .config


есть ещё пара загвоздок - 
  • в SuSE испольуется по умолчанию [насколько я помню] файловая система reiserfs. в ядре с сайта kernel.org по умолчанию эта фс не включена, т.е. если ты не сделаешь как я сказал, точно не сможешь загрузить систему с новым ядром
  • в SuSE используется определенное кол-во патчей ( заплаток ) ядра, без части из которых возможно не получится вообще загрузить систему, поэтому ядро нужно либо пропатчить (не знаю как точно это делается - узнавай сам какие есть патчи для этого), либо просто используй не "голый" (говорят "ванильный") код с kernel.org, а "родной" SuSE-вский пакет исходников ядра.
все эти вопросы развеялись бы, если бы ты установил какой-то "традиционный", пригодный для всех этих развлечений с ядром дистрибутив ( т.е.: Debian/Gentoo и т.п. )
На самом деле, я под впечатление, что большинство разработчиков, особенно хакеров ядра сидит либо на Генту, либо на каком-то варианте Дебиан. Если хакер работает в IBM, то есть шанс, что на Fedora Core, но маленький.
Просто SuSE, с тех пор как попала в руки Novell, превратилась из эволюции Slackware, в какое-то другое, удобное для корпоративного использования чудо-юдо.

И ещё, может быть не стоит начинать знакомство с системой снизу, из моторного отдела.. smile
может быть правильнее - ознакомиться со сценариями использования, организацией файлов, разными частями системы, и часто-используемыми действиями и приложениями, с т.з. пользователя и администратора, а потом, потихоньку учиться собирать свою ядро ?

Да и программировать надо начинать с элементарных вещей как "hello world", а не с распараллеленных само-корректирующих алгоритмов семантической обработки текстов на lisp-е .... правда ?

а то у тебя в голове ТАКОЙ салат будет - даже оливковое масло с лимоном не помогут.

Удачи.

Автор: Rickert 2.2.2007, 16:23
bilbobagginz
По-моему глубокому мнению, основанному на небольшом опыте: сначала ставится система, потом настраивается ядро, потом со всем эти работаешь и эксперементриуешь smile

Автор: bilbobagginz 2.2.2007, 16:41
Цитата

По-моему глубокому мнению, основанному на небольшом опыте: сначала ставится система, потом настраивается ядро, потом со всем эти работаешь и эксперементриуешь

по моему поверхностному мнению, порядок действий иной:
  • учишься и ставишь систему
  • учишься ее использовать
  • учишься ее администрировать ( с простого к сложному )
  • учишься писать програмки-приложения
  • учишься конфигурировать бегущее ядро и манипулировать модулями
  • учишься собирать своё ядро, и дополнительные модули
  • учишься программить модули ядра ( изучаешь структуры ядра, различные компонующие )
  • учишься программить какую-то подсистему ядра

Автор: MAKCim 2.2.2007, 17:26
Цитата

в SuSE испольуется по умолчанию [насколько я помню] файловая система reiserfs. в ядре с сайта kernel.org по умолчанию эта фс не включена, т.е. если ты не сделаешь как я сказал, точно не сможешь загрузить систему с новым ядром

сомневаюсь, что только reiserFS, как минимум какая то из ext должна быть в ядре
кроме того, если SLED10 хоть как-то пересекается в плане установки с Open SuSE 10.0, то на этапе установки можно выбрать не только reiserFS (а значит в ядро включена поддержка других ФС)
Добавлено @ 17:33 
Цитата

т.е.
перед пунктом 4. нужно скопировать старый конфиг:

а надо ли?
работал я на SuSE, могу сказать, что по умолчанию ставится практически все в виде модулей, хотя большинство из них - лишние и абсолютно не нужны
думаю, чтобы добится нормальной конфигурации, надо именно попытаться настроить .config с нуля

Автор: Rickert 2.2.2007, 18:09
    * учишься и ставишь систему
    * учишься ее использовать
    * учишься ее администрировать ( с простого к сложному ) Даж настроил работу с сетью  - связал с другим компом на винде и получил доступ smile
    * учишься писать програмки-приложения - ща займёмся smile
ЗЫ
Что такое модули и для чего они нужны?

Автор: BobiKK 2.2.2007, 18:16
Оффтоп. Цитатка, с башорга, свеженьнкая:
Фраза дня (получена в результате споров об устройстве ядра): "а если распределить модули управления модулями по разным модулям?"

"Ядро Linux имеет модульную структуру. При загрузке в память загружается только минимальное резидентное ядро. После этого, если пользователь вызывает функцию, отсутствующую в резидентном ядре, нужный модуль ядра, иногда называемый драйвером, динамически загружается в память." (с) хендбук ред-хатовский

Автор: Rickert 2.2.2007, 19:31
BobiKK, О! Терь ясно smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)