31

А пожалуй так и сделаю. Сейчас соберу руками. А да и еще попутно вопрос если собираю руками я так понимаю у меня получится монолитное ядро одним файлом. А то что в конфиге отмечено модулями будет работать или надо еще initframs делать для этого?

ОС: Gentoo/Funtoo

32

tyrnov пишет:

А вот как найти через menuconfig там же прям так не написано.

После make menuconfig[/ вызываете строку поиска — «/», там вводите sata_sil24 и видите расположение драйвера

Symbol: SATA_SIL24 [=n]                                                                                                              │  
  │ Type  : tristate                                                                                                                     │  
  │ Prompt: Silicon Image 3124/3132 SATA support                                                                                         │  
  │   Defined at drivers/ata/Kconfig:109                                                                                                 │  
  │   Depends on: ATA [=y] && PCI [=y]                                                                                                   │  
  │   Location:                                                                                                                          │  
  │     -> Device Drivers                                                                                                                │  
  │       -> Serial ATA and Parallel ATA drivers (ATA [=y])

P.S. ...подумалось, а покажите

eselect kernel list
Был, был и весь вышел...

33

Lupo Alberto пишет:

А то что в конфиге отмечено модулями будет работать или надо еще initframs делать для этого?

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

Был, был и весь вышел...

34

eselect kernel list
Available kernel symlink targets:
  [1]   linux-3.1.4-gentoo
  [2]   linux-3.1.5-gentoo
  [3]   linux-3.1.6-gentoo
  [4]   linux-3.2.0-gentoo
  [5]   linux-3.2.0-gentoo-r1 *

Это конечно не забыл.

ОС: Gentoo/Funtoo

35 (13.01.2012 13:50:23 отредактировано tyrnov)

make menuconfig (/) во очень полезно не знал раньше

ОС: Gentoo/Funtoo

36

tyrnov пишет:

Это конечно не забыл.

А в /lib/modules тоже ничего от нового ядра нет?

Был, был и весь вышел...

37

Сейчас уже не скажу уже может и есть потому что начал руками собирать.

ОС: Gentoo/Funtoo

38

tyrnov пишет:

make menuconfig (/) во очень полезно не знал раньше

Так при вызове сверху об этом написано  wink
P.S. ...там и справка есть.

Был, был и весь вышел...

39

Lupo Alberto пишет:

gentoo-laptop linux # vim Makefile # Не обязательно, но желательно: здесь я чуть переопределяю EXTRAVERSION = -funtoo-r0a

Я так делаю, чтобы проще ядра различать.

Был, был и весь вышел...

40

title Gentoo Linux 3.1.5
root (hd0,4)
kernel /boot/kernel-genkernel-x86_64-3.1.5-gentoo root=/dev/ram0 real_root=/dev/sda7
initrd /boot/initramfs-genkernel-x86_64-3.1.5-gentoo

title Gentoo Linux 3.2.0-r1
root (hd0,4)
kernel /boot/bzImage-3.2.0-r1 root=/dev/ram0 real_root=/dev/sda7

Верхний вариант с genkernel второй который собираю сейчас. Все ли верно будет?

ОС: Gentoo/Funtoo

41

Lupo Alberto пишет:
Lupo Alberto пишет:

gentoo-laptop linux # vim Makefile # Не обязательно, но желательно: здесь я чуть переопределяю EXTRAVERSION = -funtoo-r0a

Я так делаю, чтобы проще ядра различать.

Это я не делал. А вобще на будующее зачем это может пригодится. Можно же ядрам просто имена разные давать к примеру bzImage-3.2.0.v1 потом v2 и так далее

ОС: Gentoo/Funtoo

42

tyrnov пишет:

Все ли верно будет?

На компьютере с «обычным» Grub'ом у меня так:

title Gentoo
root (hd0,0)
kernel (hd0,0)/boot/bzImage-3.2.0-gentoo-r1a vga=0x317 root=/dev/sda2
Был, был и весь вышел...

43

tyrnov пишет:

А вобще на будующее зачем это может пригодится. Можно же ядрам просто имена разные давать к примеру bzImage-3.2.0.v1 потом v2 и так далее

Так как вы предлагаете, модули от переименованных ядер будут ставиться в один каталог, IMHO.
В моём случае каждое ядро и каталог с его модулями будут иметь уникальное имя.

Был, был и весь вышел...

44

EXTRAVERSION = -r0a следующее EXTRAVERSION = -r0b
Так чтоли? и где у них будут модули лежать?
bzImage-3.2.0-r1-r0a bzImage-3.2.0-r1-r0b а такие ядра будут?

ОС: Gentoo/Funtoo

45

кернел паник в итоге. Что еще может быть не так?

ОС: Gentoo/Funtoo

46

title Gentoo Linux 3.2.0-r1
root (hd0,4)
kernel /boot/bzImage-3.2.0-r1 root=/dev/ram0 real_root=/dev/sda7
ls /boot/
boot  bzImage-3.2.0-r1  grub  initramfs-genkernel-x86_64-3.1.5-gentoo  kernel-genkernel-x86_64-3.1.5-gentoo  lost+found  System.map-genkernel-x86_64-3.1.5-gentoo
zgrep -i _ahci .config | grep -v '^#'
CONFIG_SATA_AHCI=y
zgrep -i _sata_sil24 .config | grep -v '^#'
CONFIG_SATA_SIL24=y
zgrep -i _ext2 .config | grep -v '^#'
CONFIG_EXT2_FS=y
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT2_FS_POSIX_ACL=y
CONFIG_EXT2_FS_SECURITY=y
zgrep -i _ext4 .config | grep -v '^#'
CONFIG_EXT4_FS=y
CONFIG_EXT4_FS_XATTR=y
CONFIG_EXT4_FS_POSIX_ACL=y
CONFIG_EXT4_FS_SECURITY=y
ОС: Gentoo/Funtoo

47

Нашел ошибку. Подвела невнимательность. Плохо смотрел в хенбук. Было:

title Gentoo Linux 3.2.0-r1
root (hd0,4)
kernel /boot/bzImage-3.2.0-r1 root=/dev/ram0 real_root=/dev/sda7

А надо:

title Gentoo Linux 3.2.0-r1
root (hd0,4)
kernel /boot/bzImage-3.2.0-r1 root=/dev/sda7

Первый способ это так делается для дженкернел

ОС: Gentoo/Funtoo

48

И теперь вопрос. Как лучше оптимизировать ядро. Я бы хотел выкинуть из него весь хлам. Но как не ошибится и не выкинуть нужное. Например к чему там у меня куча звуковух у меня в компе она одна же поменяю пересоберу ядро. Ну и так со всеми компонентами компа. Ну и может еще что можно смело отключать в ядре не шибко нужное.

ОС: Gentoo/Funtoo

49

tyrnov пишет:

EXTRAVERSION = -r0a следующее EXTRAVERSION = -r0b
Так чтоли? и где у них будут модули лежать?
bzImage-3.2.0-r1-r0a bzImage-3.2.0-r1-r0b а такие ядра будут?

gentoo-home lupo # ll /boot/bzImage-*
-rw-r--r-- 1 root root 3874480 нояб. 23 11:34 /boot/bzImage-3.1.1-gentoo-r0a
-rw-r--r-- 1 root root 3874864 дек.   1 14:25 /boot/bzImage-3.1.4-gentoo-r0a
-rw-r--r-- 1 root root 3876656 дек.  12 22:55 /boot/bzImage-3.1.5-gentoo-r0a
-rw-r--r-- 1 root root 3877408 дек.  29 23:30 /boot/bzImage-3.1.6-gentoo-r0a
-rw-r--r-- 1 root root 3884192 янв.  12 10:37 /boot/bzImage-3.2.0-gentoo-r1a
gentoo-home lupo # ll /lib/modules
итого 3
drwxr-xr-x 4 root root 792 нояб. 23 16:48 3.1.1-gentoo-r0a/
drwxr-xr-x 4 root root 792 дек.   1 15:00 3.1.4-gentoo-r0a/
drwxr-xr-x 4 root root 792 дек.  12 22:56 3.1.5-gentoo-r0a/
drwxr-xr-x 4 root root 792 дек.  29 23:31 3.1.6-gentoo-r0a/
drwxr-xr-x 4 root root 792 янв.  12 10:43 3.2.0-gentoo-r1a/
Был, был и весь вышел...

50

tyrnov пишет:

И теперь вопрос. Как лучше оптимизировать ядро. Я бы хотел выкинуть из него весь хлам. Но как не ошибится и не выкинуть нужное. Например к чему там у меня куча звуковух у меня в компе она одна же поменяю пересоберу ядро. Ну и так со всеми компонентами компа. Ну и может еще что можно смело отключать в ядре не шибко нужное.

Прежде всего: оптимизация ядра в настоящее время — это больше «хобби», чем насущная необходимость. При неумелой «оптимизации» эффект может быть прямо противоположным.
Не претендуя на истину:
1. Загрузившись с SystemRescueCD или любого другого «живого» диска, выполняю

lspci -k | tee -a lspci.txt

...чтобы при настройке ядра было на что равняться  wink
1а. Если лениво, можно сразу зайти на  сюда или сюда  wink
2. Всё (за редким исключением), что может включиться из этого списка не модулем — включаю в ядро.
3. Выбираю соответствующий тип и семейство процессора.
4. Отключаю все фреймбуфферы кроме vesa — мне хватает.
5. По непонятным пунктам читаю справку, если всё равно не понятно — читаю Google, если и это не помогло — значит выбираю default-значение.

Как-то так.

Был, был и весь вышел...

51

Сейчас чистил папку с модулями и случайно удалил всю папку так:

rm -rf /lib/modules/

Что теперь сделать. Достаточно пересобрать ядро и все? Или надо еще что то сделать. Например до создать эту самую папку

ОС: Gentoo/Funtoo

52

tyrnov пишет:

Что теперь сделать. Достаточно пересобрать ядро и все? Или надо еще что то сделать.

Должно хватить

cd /usr/src/linux
make modules_install
Был, был и весь вышел...

53

Ага помогло. -r0a а это наверн не спроста выбранно и они что то значат

gentoo-home lupo # ll /lib/modules
итого 3
drwxr-xr-x 4 root root 792 нояб. 23 16:48 3.1.1-gentoo-r0a/
drwxr-xr-x 4 root root 792 дек.   1 15:00 3.1.4-gentoo-r0a/
drwxr-xr-x 4 root root 792 дек.  12 22:56 3.1.5-gentoo-r0a/
drwxr-xr-x 4 root root 792 дек.  29 23:31 3.1.6-gentoo-r0a/
drwxr-xr-x 4 root root 792 янв.  12 10:43 3.2.0-gentoo-r1a/

И почему у ядра 3.1.1-gentoo   -r0a, а у 3.2.0-gentoo   -r1a По какому принципу расставляется цифра и буква

ОС: Gentoo/Funtoo

54

tyrnov пишет:

По какому принципу расставляется цифра и буква

Внутреннее чувство прекрасного  :rolleyes:
Как версия и ревизия ядра меняются, так я буковку добавляю, иногда и -gentoo- на -funtoo- меняю.
Отредактируйте переменную EXTRAVERSION = в /usr/src/linux/Makefile, как вам нравится.

Был, был и весь вышел...

55

Да это сделал теперь выкидываю потихоньку хлам. А то там было с поддержкой всего и вся собрано

ОС: Gentoo/Funtoo

56

для этих целей есть app-portage/eclean-kernel. Но пользоваться надо осторожно.

57

Похоже наконец разобрался с ручной сборкой ядра. Раньше удавалось только через дженкернел. Собрал сегодня 3.2.1 удаленно и ребутнул все загрузилось работает. Спасибо Lupo Alberto

ОС: Gentoo/Funtoo

58

tyrnov пишет:

Собрал сегодня 3.2.1 удаленно и ребутнул все загрузилось работает.

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

Был, был и весь вышел...

59

Ядро предыдущее у меня всегда остается. Даже по три бывает старых удалять наоборот их забываю

ОС: Gentoo/Funtoo

60

tyrnov, я больше внимание на опцию fallback обращал, она позволяет загрузиться с заранее выбранным ядром, если «дефолтное» не сможет загрузиться.

Был, был и весь вышел...