Собираю gentoo. Опыт сборки на виртуальной машине с genkernel all был успешный. Решила собрать на настоящей машинке в минимально возможной конфигурации ядра.
Вот такая машинка:
(chroot) livecd linux # lspci
00:00.0 Host bridge: VIA Technologies, Inc. VT8375 [KM266/KL266] Host Bridge
00:01.0 PCI bridge: VIA Technologies, Inc. VT8633 [Apollo Pro266 AGP]
00:08.0 Ethernet controller: 3Com Corporation 3c905C-TX/TX-M [Tornado] (rev 74)
00:09.0 Ethernet controller: VIA Technologies, Inc. VT6105/VT6106S [Rhine-III] (rev 86)
00:10.0 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 80)
00:10.1 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 80)
00:10.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 80)
00:10.3 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 82)
00:11.0 ISA bridge: VIA Technologies, Inc. VT8235 ISA Bridge
00:11.1 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (rev 06)
00:11.5 Multimedia audio controller: VIA Technologies, Inc. VT8233/A/8235/8237 AC97 Audio Controller (rev 50)
00:12.0 Ethernet controller: VIA Technologies, Inc. VT6102 [Rhine-II] (rev 74)
01:00.0 VGA compatible controller: S3 Inc. VT8375 [ProSavage8 KM266/KL266]
Собирала строго по хэндбуку
Ядро конфигурировала по "Ядерная физика для домохозяйки"
.config
Старалась исключить все лишнее и оставить только самое-самое нужное (машинка планируется под домашний маршрутизатор)
В результате система загружается, но не работает. Насколько я поняла не может смонтировать /dev/hda3 и не понимает файловую систему. Конфигурировала ядро дважды: один раз
genkernel --oldconfig --menuconfig --symlink all
другой раз просто make menuconfig, а потом make && make modules_install
При команде make выдает несколько таких предупреждений
scripts/kconfig/conf.c: In function 'conf_askvalue':
scripts/kconfig/conf.c:105: warning: ignoring return value of 'fgets', declared with attribute warn_unused_result
С LiveCD все работает, разделы разбиты и файловые системы размещены как в хэндбуке.
livecd ~ # fdisk -l
Disk /dev/hda: 20.0 GB, 20019314176 bytes
255 heads, 63 sectors/track, 2433 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xa1f2792e
Device Boot Start End Blocks Id System
/dev/hda1 * 1 5 40131 83 Linux
/dev/hda2 6 71 530145 82 Linux swap / Solaris
/dev/hda3 72 2433 18972765 83 Linux
livecd ~ # mount
tmpfs on / type tmpfs (rw)
/dev/hdc on /mnt/cdrom type iso9660 (ro,relatime)
/dev/loop0 on /mnt/livecd type squashfs (ro,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
udev on /dev type tmpfs (rw,nosuid,relatime,size=10240k,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620)
tmpfs on /mnt/livecd/lib/firmware type tmpfs (rw)
tmpfs on /mnt/livecd/usr/portage type tmpfs (rw)
usbfs on /proc/bus/usb type usbfs (rw,noexec,nosuid,devmode=0664,devgid=85)
/dev/hda3 on /mnt/gentoo type ext3 (rw)
/dev/hda1 on /mnt/gentoo/boot type ext2 (rw)
fstab
# /etc/fstab: static file system information.
#
# noatime turns off atimes for increased performance (atimes normally aren't
# needed; notail increases performance of ReiserFS (at the expense of storage
# efficiency). It's safe to drop the noatime options if you want and to
# switch between notail / tail freely.
#
# The root filesystem should have a pass number of either 0 or 1.
# All other filesystems should have a pass number of 0 or greater than 1.
#
# See the manpage fstab(5) for more information.
#
#
# NOTE: If your BOOT partition is ReiserFS, add the notail option to opts.
/dev/hda1 /boot ext2 defaults 1 2
/dev/hda3 / ext3 defaults 0 1
/dev/hda2 none swap sw 0 2
/dev/cdrom /mnt/cdrom auto auto,ro 0 0
proc /proc proc defaults 0 0
none /tmp tmpfs defaults 0 0
#/dev/fd0 /mnt/floppy auto noauto 0 0
# glibc 2.2 and above expects tmpfs to be mounted at /dev/shm for
# POSIX shared memory (shm_open, shm_unlink).
# (tmpfs is a dynamically expandable/shrinkable ramdisk, and will
# use almost no memory if not populated with files)
shm /dev/shm tmpfs nodev,nosuid,noexec 0 0
make.conf
# These settings were set by the catalyst build script that automatically
# built this stage.
# Please consult /usr/share/portage/config/make.conf.example for a more
# detailed example.
CFLAGS="-O2 -march=i686 -pipe"
CXXFLAGS="-O2 -march=i686 -pipe"
MAKEOPTS="-j2"
# WARNING: Changing your CHOST is not something that should be done lightly.
# Please consult http://www.gentoo.org/doc/en/change-chost.xml before changing.
CHOST="i686-pc-linux-gnu"
GENTOO_MIRRORS="ftp://mirror.yandex.ru/gentoo-distfiles/ "
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="-gtk -gnome -qt -kde -X -dvd alsa cdr"
Выкладываю фотки с монитора, так как лог загрузки мне взять не удалось: все каталоги пустые. Команды не работают: fdisk -l , ifconfig, mount - ничего не выводят.
Кто понимает - подскажите пожалуйста, что именно я сделала не так.
UPD. Всем большое спасибо. Из полученных комментариев узнала очень много про linux, про ядро и про Gentoo в частности. Причины проблем были:
1. Не включены inotify в ядре. Еще в ядре должны быть включены и Device Drivers ---> ATA/ATAPI/MFM/RLL support и Device Drivers ---> Serial ATA (prod) and Parallel ATA (experimental) drivers (Одновременно!) с указанием нужного драйвера
2. Потом неправильные настройки grub.conf и загрузка со старого неправильного ядра
3. Также была проблема в неправильной настройке даты и часов в BIOS
4. После того, как система встала, не монтировалась флэшка, написано было "не распознана кодировка". Пришлось дособирать модуль с нужной кодировкой.
Сейчас полный порядок. Еще раз всем спасибо.
-
в генте разделы пишутся как sda*
-
-
совет: попробуйте собирать ядро вручную(без genkernel) без изменений в конфигурации. добавьте только поддержку файловых систем
-
-
sda - насколько мне известно, обозначает sata. А у меня ide. Обратите внимание на вывод fdisk -l - мои разделы обозначаются именно как hda
Вручную я собирала, но без изменений конфигурации мне не интересно - я же хочу сконфигурировать ядро под свою систему. Я сейчас (в данный момент) компилирую без изменений конфигурации, чтобы методом исключения понять в чем проблема и будет ли работать на дефолтной конфигурации. Однако, при этом все же хочу научиться конфигурировать вручную.
-
-
Насколько мне известно и IDE и SATA теперь обозначаются как sd*, хотя при загрузке с minimal-cd они видны как hd*. Почему так не знаю. Но сам вот сижу устанавливаю и у меня так.
Однако, при этом все же хочу научиться конфигурировать вручную.
Попробуйте сначала хотя бы загрузить систему, потом будете опыты над ней ставить, убирая некоторые параметры. Так вы хотя бы будете знать из-за чего у вас что-то отвалилось
-
-
Видимо так и придется сделать. Поставить, а потом отключать по одному параметру - так и выясню отчего у меня не работает. Но уж больно долгий и муторный путь получается :( так сказать "методом тыка"
-
у нее все правильно прописано, иначе бы не загрузилось так делока, мне кажется ошибка в другом, или диск не так сделала или файловые системы перепутала. и да хда и сда звисит от какой тип жесткого и какой модуль обрабатывает его в ядре.
-
Как /dev/hd[x] разделы должны быть видны только при использовании очень старого livecd, в современных снапшотах - /dev/sd[x].
Если винчестеры в свежесобранной системе определяются как /dev/hd[x] необходимо отключить Device Drivers ---> ATA/ATAPI/MFM/RLL support. Насколько я помню он должен быть пометить как Deprecated. Должен быть включен раздел Device Drivers ---> Serial ATA (prod) and Parallel ATA (experimental) drivers (там же нужно выбирать и драйвера для IDE контроллеров).
И напоследок ядерная физика для домохозяйки уже очень устарела.
-
-
Хендбук на русском языке тоже устарел. Установка по нему только запутывает и приводит вот к таким ошибкам. Если английский хотя бы на уровне технического нужно ставить по англоязычному хендбуку.
-
Есть что-то лучше и новее по этой теме?
-
-
Думаю только англоязычные источники.
Есть конечно еще Ядерная физика для домохозяйки. Версия 2.0.
Но и она уже весьма устарела. По этой статье стоит смотреть разве что только разделы: General setup, Loadable module support, Processor type and features, Executable file formats и Kernel hacking. Все остальные рекомендации уже устарели. Единственно что можно глянуть описание той или иной опции на русском, если с анлийским туго.
Со знанием же английского при выборе опции в make menuconfig достаточно нажать H (help) там всегда все подробно разжевано чему служит эта опция, вплоть до рекомендаций если вы не разобрались нужно ли это вам лучше оставте включенной (или выключенной).
-
недавно появился вот этот проект - http://kernel.open-club.ru вики по параметрам ядра.
-
-
Наполнение еще крошечное чтобы его можно было рекомендовать :(
-
Попробуйте chroot'нуться в свежую систему и сделать
grep -v rootfs /proc/mounts > /etc/mtab
Ну и да, как говорят выше, может быть и hda -> sda, хотя это зависит от того, как ядро сконфигурировано, вполне возможно что hda как раз правильно для вашего конфига.
В любом случае mtab нужен, а у вас его нет :)
-
-
Только что увидел. Вы же отключили inotify и похоже без него не работет udev, который заполняет /dev, который нужен чтобы смонтировать диски и создать mtab =)
-
-
Не туда ответил =(
-
И создание mtab не помогло :( вывод такой же
-
-
ниже про inotify уже ответили, я тоже не сразу на скринах рассмотрел :)
-
/sys и /dev вроде смонтировались,
затык происходит при старте udevd, он отвечает за наполнение /dev, а раз нет /dev
соответсвенно система не может обращаться к устройствам.
вот здесь http://www.gentoo.ru/node/17475 вроде решеноа
судя по .config inotify выключен
-
-
Кажется поняла в чем проблема - буду пробовать пересобирать с inotify - а что это такое в двух словах?
-
-
inotify — это подсистема ядра Linux, которая позволяет получать уведомления об изменениях в файловой системе.
-
Сделала make mrproper, make menuconfig, включила inotify, скомпилировала,установила - та же история. Ничего не изменилось
-
-
А вы в курсе, что make mrproper уничтожает .config ?
-
-
В курсе. Уничтожает старый конфиг. Потом я там make menuconfig и создаю новый конфиг, по которому и компилируюсь. Кстати компиляция и установка прошла гладко - ни одной ошибки или предупреждения не было
-
Что вы там включали, если он уже должен быть включен.
-
попробуйте включить все 4 пункта
# CONFIG_FSNOTIFY is not set
# CONFIG_DNOTIFY is not set
# CONFIG_INOTIFY is not set
# CONFIG_INOTIFY_USER is not set
-
еще такой вариант. собрали новое ядро, вы точно уверены что грузитесь с нового? :-)
-
-
эммм. Не уверена... А разве make mrproper не уничтожает старое ядро?
-
-
он очищает папку /usr/src/linux. a /boot он не трогает.
можно в menuconfig задать свой постфикс в разделе Gneral Setup -> Local vercion (append to kernel release). узнасть версию ядра командой uname -r
-
-
ну если на то пошло то лучше еще проверить симлинк eselect kernel list
-
-
а как удалить старые ядра из списка?
-
-
emerge -C =gentoo-sources и версиию, можно --depclean сделать но не советую
-
А что означают такие предупреждения при запуске make
scripts/kconfig/conf.c: In function 'conf_askvalue':
scripts/kconfig/conf.c:105: warning: ignoring return value of 'fgets', declared with attribute warn_unused_result
scripts/kconfig/conf.c: In function 'conf_choice':
scripts/kconfig/conf.c:307: warning: ignoring return value of 'fgets', declared with attribute warn_unused_result
In file included from scripts/kconfig/zconf.tab.c:2451:
scripts/kconfig/confdata.c: In function 'conf_write':
scripts/kconfig/confdata.c:508: warning: ignoring return value of 'fwrite', declared with attribute warn_unused_result
-
ignoring return value of 'fwrite', declared with attribute warn_unused_result
здесь говорится о том что возвращаемое значение функции не проверяется. в общем ничего важного.
-
.config на pastebin пожалуйста, ибо бороться с капчей с качать на локальный диск этот кусок текста явно излишне.
-
-
http://pastebin.com/N2tpNNz6
-
-
Так будет лучше
-
-
это из Вашего конфига:
# CONFIG_INOTIFY is not set
-
-
Уже включила - ничего не изменилось.
-
-
В хендбуке написано
Нам нужно создать файл /etc/mtab, перечислив в нем все смонтированные файловые системы. К счастью, для этого есть очень легкий способ: просто скопируйте содержимое /proc/mounts поверх /etc/mtab, исключив строку rootfs, если вы не создавали отдельный загрузочный раздел. Следующая команда подойдет в обоих случаях:
# grep -v rootfs /proc/mounts > /etc/mtab
делали?
-
-
я уже выше писал, сказала что не помоголо
-
да. Прочитала комментарии здесь (см выше) и сделала. Сначала скомпилировала ядро с включением inotify, потом сделала grep -v rootfs /proc/mounts > /etc/mtab, потом переустановила grub (без grub-install, а вручную), потом перезагрузилась
-
-
Всё ещё та же ошибка с отсутствующим mtab или что-то другое?
И покажите пожалуйста /boot/grub/grub.conf и lspci -k
-
-
Ошибка точно такая же. Эти файлы покажу завтра - устала уже на сегодня монитор переставлять (он у меня один на два компа). Установку делала через ssh, но каждая такая неправильная загрузка и по новой монитор подключать и liveCD ставить :(
-
-
ещё это можно попробовать включить
# CONFIG_MVIAC3_2 is not set
# CONFIG_MVIAC7 is not set
# CONFIG_SENSORS_VIA_CPUTEMP is not set
# CONFIG_SENSORS_VIA686A is not set
# CONFIG_SENSORS_VT8231 is not set
-
такое бывает, когда например удаляешь раздел, а запись в fstab остается.
проверьте hda3 из под livecd.
разделы именуются как hda в старом minimal, т.к. в старом ядре не осуществлен переход на libata.
категорически советую конфигурировать ядро вручную, можно на базе http://kernel-seeds.org/
-
-
ещё можно fstab оформить в виде
1
2
3
|
UUID=03116d10-c7c0-47fb-9c61-9be22a16c27f /boot ext2 noauto 1 2
UUID=a6fad5f9-3a94-4011-ba70-d2b4997bd263 none swap sw 0 0
UUID=975ac0a8-6e54-46fa-b9c4-58ca9a115efb / ext4 defaults 0 1 |
тогда будет глубоко по*уй как там ядро думает о разделах
-
-
/dev/hdX понятнее не для ядра, а для пользователя)
-
-
кусок из моего fstab:
1
2
3
|
UUID=c0a82da5-0d55-4fbe-8c63-64ba9649bf11 /boot ext2 noauto,noatime 1 2 #/dev/sdb1
UUID=b1415d80-619d-442c-acb1-89e5a668e4fd / reiserfs noatime 0 1 #/dev/sdb3
|
понятно как пользователю, так и ядру)
-
-
и все же, комментарии имеют свойство устаревать)
-
А где такие имена своих разделов узнать?
-
-
Команда uuidgen.
-
-
Ой, бред сказал. Это для генерации новых.
Посмотреть можно командой blkid
-
а что у тебя в fstab?
-
другой раз просто make menuconfig, а потом make && make modules_install
Судя по действиям ядро не обновляется, только модули
делай так:
# make menuconfig
# make bzImage
# make modules
# make modules_install
# make install
После чего проверить дату/время создания ядра # ls -la /boot и уйти в reboot
-
-
и тогда заодно проверить примантирован ли бут и правильно ли он прописан в граб. иначе make install поставит его не в ту папку, у меня такое как-то раз было
-
-
кстати как вариант скопировать с лайфсиди ядро, и сделать make oldconfig && make && make modules_install && make install .как запуститься, начать по кусочкам убирать с ядра не нужное и под себя подгонять.
-
А может, все-таки Арч? Дженту все-таки для красноглазиков %)
-
-
Глупый миф.
-
-
Ну, если бы я не был сам джентушником около 3-х лет, я бы, наверное, поверил бы... Но увы.
-
-
Я пользователь разных дистрибутивов Linux, включая и Gentoo. И не понимаю, где тут можно красноглазить. Один раз установил, раз в месяц проверил обновления, разрешил проблемы за 15 минут, если они есть(в стабильной ветке, если не использовать ~архитектуру, проблем не бывает), поставил обновляться - занимаюсь своими делами/пью пиво/бегаю по инету/гуляю с женой. Где здесь красноглазие? Или вы 3 года медитировали на пробегающую консоль и процесс компиляции? Ну, это ваш выбор. Остальные люди просто работают.
-
-
Ну давайте не будем меряться ентим местом... Я 8 лет на Линуксах/Юниксах (в том числе БСД), и очень многое перепробовал.
Обновить КДЕ на ноутбуке под Gentoo - это оставить его минимум на ночь, а то и на две, работать. Ноутбук для этого не предназначен, особенно учитывая, что то же самое я могу например на Арче сделать за 15 минут.
Про разрешение конфликтов я бы вообще промолчал бы...
Пересобирать ядро руками - онанизм еще тот, пусть даже это делается один раз при установке.
Список могу продолжать дальше. Да. оптимизация, да, все такое, да, мне очень был полезен этот опыт для изучения устройства линукса... Но как рабочая система (особенно на ноутбуке) - ИМХО, не лучший выбор для не-красноглазиков.
Так что давайте оставим холивар...
-
-
Мой знакомый держит Gentoo на нетбуке. Собирает он её на основном двухядерном компе в компании с домашним роутером. Полная пересборка мира, которую ему делать пришлось после смены мажора компилятора, у него заняла примерно полтора-два часа. При этом комп и роутер продолжали работать в штатном режиме.
Я в процессе обновления системы на своём компе тоже продолжаю на нём работать. На не самом современном железе с двумя ядрами даже на 50% компиляция не грузит проц, а 2-ух гигов оперативы хватает с головой. Firefox ест больше памяти, чем два процесса cc(я в два потока собираю).
Про устройство системы изнутри и во всех подробностях я начал узнавать ещё до Gentoo в мандраке, а потом в debian'е и разных других дистрах. Поставил Gentoo себе на десктоп я чуть больше года назад. Красноглазить больше, чем с Debian'ом и Slackware я после этого не стал. Параллельно с этим я постоянно пробую различный дистрибутивы просто для того, чтобы быть в курсе происходящего.
На нетбуке у меня крутится Debian. Потому что я просто считаю, что для ноутов более правильно держать бинарные дистры.
Повторяю, что если у вас неудачный опыт знакомства с Gentoo, это не значит, что всем приходилось, как и вам красноглазить. Я на настройку и обслуживание своих трёх домашних компов трачу в разы меньше времени, чем ушло бы на то же самое с виндой. Или даже с бубунтой.
Я бы не стал ставить Gentoo на сервер, потому что считаю, что там намного удобнее себя чувствует себя Debian. Но это не значит, что Gentoo там не выживет. И уж точно я никогда на сервер не поставлю Арч. Вот в этом дистре уж точно несколько неподходящее для стабильной безпроблемной работы устройство системы.
И это не холивара ради. Просто не надо вводить людей в заблуждение из-за того, что вы не смогли нормально работать с Gentoo.
-
-
Видимо, у вас проблемы с чтением... Где у меня написано про неудачный опыт работы/знакомства? Gentoo был 3 года моим любимым рабочим дистром. И именно поэтому я имею вполне четкое мнение об этом дистре.
Я ни разу не пытаюсь сказать, что он плох, или неудобен.
То, что я хотел сказать - я сказал.
А фанатики - такие не фанатичные...
Обидели мышку, написали в норку - вон какой срач поднялся.
-
Использую дженту на ноуте. Вполне доволен, даже если не сказать больше. ЧЯДНТ?
-
Сборка KDE 4 на моем не самом мощном ноуте с Pentium Dual Core 1.8 Ghz и 3Gb RAM занимает максимум 2,5 часа. Через distcc соберется за полчаса. Ночью тут и не пахнет. Не надо дезинформации.
Насчет конфликтов - неоднократно собирал на совершенно разные машины Gentoo Stable - (повторю слова cppmm) конфликтов и проблем с зависимостями в стабильной ветке не было и нет. На моей домашней машинке где стоит ~amd64 - конфликты гость частый, если не пообновлятся с недельку. Но это я сам лично выбрал нестабильную ветку для своего удовольствия и винить могу только себя ;)
Некоторые линуксоиды и арч посчитают красноглазым, т.к. установка из консоли. Для меня же нет красноглазых дистрибутивов - каждый выбирает то что ему хочется и соответствует поставленным перед собой задачам. Вот только срач в сторону чужого дистрибутива не допустим.
-
Я ставлю gentoo на будущий маршрутизатор. Ядро с нужными мне функциями собирается за 1,5 часа на моем слабеньком компе (см lspci). Если я сейчас найду ошибку и мне не придется ставить дефолтный конфиг - то все будет круто. Грузится он у меня при включении на все про все 3 сек
-
Обновить КДЕ на ноутбуке под Gentoo - это оставить его минимум на ночь, а то и на две, работать. Ноутбук для этого не предназначен
лол, тогда зачем там кде4 изначально?
-
-
Так что давайте оставим холивар...
бум, и не прошло 5 секунд он поставил мне минус, все тут ясно.
-
-
Не знаю, что там вам ясно, но это был не я...
-
Я пользуюсь КДЕ. Почему я должен от этого отказываться?
-
-
ну как бы сказать, то что то, что собирается дольше всего и есть тяжелые программы.
-
-
Не очень понял смысла фразы...
Но предположу: если речь о том, что "тяжелые программы долго собираются, значит, просто не надо их использовать" - то я сторонник другого подхода: "если программы долго собираются - не надо их собирать".
-
Пересобирать ядро руками - онанизм еще тот, пусть даже это делается один раз при установке.
в чем онанизм? взял базовый конфиг, добавил своих железяк, profit.
потом при обновлении make oldconfig.
да что вы вообще знаеье об онанизме :)
-
-
Сказал
pacman -S kernel26/
yaourt -S kernel26-bfs/
etc...
profit!
Разницу не видите? :)
Я уже молчу про отсутствие необходимости вообще ставить ядро на менее красноглазых дистрах типа федоры, ебунты и иже с ними...
-
-
когда времени нет, да,
некоторые собирают ядро из соображений минимализма, чтобы убрать все лишнее.
у меня вот lsmod выдает только nvidia, ядро весит полтора метра, все кроме всяких вкусностей iptables в ядре.
-
-
некоторые собирают ядро из соображений минимализма, чтобы убрать все лишнее.
Вот именно они и зовутся красноглазыми %) И это только подтверждает мое изначальное утверждение :)
И да, я не говорю, что это плохо... Каждому свое %)
-
-
Впервые сидеть на самосборном ядре мне пришлось в Debian Sarge - там моя wi-fi карта не работала.
Потом был опыт сборки в мандраке и редхате по разным причинам. Следующей была Slackware - не работала dlink'овская сетевая pcmcia-карта.
Вот здесь я описывал сборку ядра для установки необычных драйверов опять же на Debian Sarge.
Это тоже всё красноглазые дистры? А я красноглазый линуксоид, которого хлебом не корми - дай покомпилять чего-нибудь?
Кстати, вы там про опыт работы с FreeBSD упоминали. Фряшники тоже все красноглазые? Они ведь тоже и ядро и всё остальное компилят?
-
-
Ну а я, кроме как в дженту, БСД и пару раз в арче (zen-git) нигде ядра не компилял. ЧЯДНТ?
Фряшники таки да, красноглазые ;) И они бы посмеялись над вашей фразой по поводу "все компилят":
- Бинарные обновления
- FreeBSD packages system
-
-
Ну а я, кроме как в дженту, БСД и пару раз в арче (zen-git) нигде ядра не компилял. ЧЯДНТ?
8 лет пользуетесь Linux'ом из параллельной вселенной, у которого в ядре включено абсолютно всё. Включая все типы процессоров, все даже взаимоисключающие драйверы и всё, существующее в мире железо. :))
Или как бы вы, например, без перекомпиляции ядра подключили функционал по моей ссылке?
Фряшники таки да, красноглазые ;) И они бы посмеялись над вашей фразой по поводу "все компилят":
- Бинарные обновления
- FreeBSD packages system
А теперь почитайте хендбук фряшный полностью и подумайте, зачем и в каких случаях там рекомендуют пользоваться пакетами, а зачем и когда портами. Например, зачем любые серверные приложения рекомендуют собирать из портов в зависимости от потребностей(поддержка соответсвующих бд, настройка sasl и ssl). В генту тоже можно сделать абсолютно всё, не собрав ни одного пакеты из сырцов. Точно так же в debian'е можно без проблем перекомпилить абсолютно все пакеты.
-
-
Ну не пользуюсь я не стандартным железом!
Более того - прежде чем покупать ноут/железо, я смотрю, поддерживается ли оно без проблем...
И я сказал же - я компилял ядро, например, для zen-патчей.
Речь-то о том, что нормальному сферическому юзеру (без всяких там извращенных протоколов - он не знает о них - это ответ по поводу ссылки) на СЕГОДНЯШНИЙ день (для танкистов - с учетом того, что сейчас почти все железо поддерживается ядром) НЕ НУЖНО без крайней на то необходимости компилять/перекомпилять ядро.
Даже для некоторых юзеров с корявым железом (например, Aspire One) в AUR'e (для Арча) или еще где (для других дистров) есть сборки/скрипты сборок для того, чтобы юзеру не пришлось лезть в конфиги ядра, а просто сказать - yaourt -S kernel26-one - и подождать 5 минут. ВСЕ!
А теперь почитайте хендбук фряшный полностью
Почитайте, почитайте.
Я, во-первых, сам решу, что читать, а во-вторых, уже не раз читал. Полностью.
В арче тоже можно все пересобрать из сырцов. Но не надо подменять собственные слова:
Фряшники тоже все красноглазые? Они ведь тоже и ядро и всё остальное компилят?
Это отнюдь не тоже самое, что
зачем и в каких случаях там рекомендуют пользоваться пакетами, а зачем и когда портами
Не противоречьте себе. Другие люди умеют читать :)
И да, флейм окончен. Если вы и теперь не можете прочитать и ПОНЯТЬ то, что вам пишут - это клиника... Дальнейший разговор бесполезен.
-
Дело не в генту, а в ядре. Я с тем же успехом могла собирать ядро для любого дистрибутива.
-
-
Genkernel есть уже в любом дистрибутиве? :)
По мне - костыль еще тот, за 3 года на дженту ни разу им не пользовался.
Да, я видел, что вы так же пробовали его собрать вручную, видел.
Но это не отменяет кривости того, что в livecd одни настройки (путей, времени etc), а в системе - другие...
-
Решил проблему или нет ?
-
-
Еще не успела. Как все советы попробую, обязательно напишу что получилось. Это же не одного часа дело.
-
-
Если ничего не поможет пиши в личку разберемся )
-
у меня схожая проблема была, но решилась установкой clock в UTC, ругалась дескать диски modified in future. А автору сабжа пересобрать ядро с правильными опциями и думаю все заведется :)
-
-
У меня были проблемы с modified in future - это я разобралась и исправила сама :)
-
и да, конфигурять ядро по минимуму, глупая затея, оставить по дефолту и добавить только то что требуется.
-
-
зато я буду знать без чего ядро не заведется, а без чего спокойно будет работать :)
-
Как уже просили выше, покажите конфиг grub'а
-
новый конфиг с учетом поправок.
grub.conf
новый fstab
вывод lspci -k
-
перезагрузилась со всем этим добром - та же ошибка. Может я и правда загружаюсь каким то фантастическим образом со старого ядра?
-
-
так проверь дату создания твоего /boot/kernel-genkernel-x86-2.6.34-gentoo-r1
-
Включите поддержку отображения конфига ядра в /proc и сможете смотреть конфиг действующего ядра в файле /proc/config.gz
Делается это вот этой опцией: CONFIG_IKCONFIG_PROC.
Ну и я привык после любой правки ядра дописывать собственный суффикс в название, чтобы потом по uname -a сразу было видно, в какой версии ядра я сейчас нахожусь.
1
2
|
[cppmm@damned ~]# uname -a
Linux damned 2.6.32-zen6-cppmm-v4 #3 ZEN SMP Wed Mar 24 22:09:31 NOVT 2010 x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 5600+ AuthenticAMD GNU/Linux |
Вот тут видно, что у меня ядро 2.6.32, модификация ядра из zen-sources 6-ой версии, моей собственной сборки и четвёртая версия с момента установки(во время установки я добавляю cppmm-v0).
-
помимо .config там еще лежат .config.old и config.bak - удалить их что ли? чтобы не мешались... И заново перекомпилироваться.. включить
# CONFIG_MVIAC3_2 is not set
# CONFIG_MVIAC7 is not set
# CONFIG_SENSORS_VIA_CPUTEMP is not set
# CONFIG_SENSORS_VIA686A is not set
# CONFIG_SENSORS_VT8231 is not set
(кстати, что это такое?)
а потом сделать
# make menuconfig
# make bzImage
# make modules
# make modules_install
# make install
(я делала только make menuconfig && make && make modules_install)
а как удалить полностью и бесповоротно уже собранное предыдущее ядро, чтобы с него уже точно не загружалось? make mrproper это делает?
-
-
make - собирает ядро
make modules_install - собирает модули и устанавливает их в /lib/modules/версия_ядра/*
make install - устанавливает ядро, конфиг и ещё какой-то файл =) в /boot
ядро будет с именем vmlinuz-2.6.33-gentoo-r2, если такое ядро уже есть к его имени будет добавлен суффикс .old и на его вместо поставится новое.
вместо make install можно сделать
# cp arch/x86_64/boot/bzImage /boot/какое-нибудь-имя-ядра
или
# cp arch/x86/boot/bzImage /boot/какое-нибудь-имя-ядра
в зависимости от архитектуры системы
-
-
make modules_install - собирает модули и устанавливает их в /lib/modules/версия_ядра/*
Уверен что модули собираются (если не собраны) и устанавливаются по этой команде? У меня есть определенная уверенность, что они только устанавливаются.
-
-
Зря. Они действительно сначала собираются.
В make есть такое понятие как зависимости...
-
а как удалить полностью и бесповоротно уже собранное предыдущее ядро
удалить его из /boot/ и удалить его модули из /lib/modules/%kernel_name%
make mrproper это делает
нет, mrproper чистит /usr/src/linux от файлов, оставшихся после предыдущей компиляции и удаляет конфиг.
make install копирует его в /boot , возможно правит конфиг загрузкика и шаманит с initrd, если есть. (я всегда делаю cp вручную, так спокойнее :) )
# make bzImage
# make modules
это можно уже не делать
-
-
AFAIR конфиг загрузчика таки не правит - надо ручками...
-
В Gentoo в загрузчике обычно прописывается не полное имя ядра vmlinuz-version, а просто vmlinuz и vmlinuz.old. При make install новое ядро копируется в /boot, на старое делается симлинк vmlinux.old, на новое делается симлинк vmlinuz. Поэтому править конфиг загрузчика не надо. Ядро там будет уже новое. Единственное, если в имени соответсвующего пункта указана версия ядра(я у себя так делаю), надо подправить имя. Но, насколько я помню, подефолту там версия не пишется.
-
make prepare && make && make modules && make modules_install && make install
100% работает, ну руками поправить конфиг grub
-
Извините, если торможу, но..
я делала только make menuconfig && make && make modules_install
и
kernel /boot/kernel-genkernel-x86-2.6.34-gentoo-r1 root=/dev/hda3
как-то не соотносятся. (Особенно бросается в глаза упоминание genkernel при выполнении make)
После сборки ядра вы его скорировали в /boot/ и прописали в grub.conf?
И, собственно, почему kernel /boot/kernel..., если /boot на отдельном разделе?
-
Добавлю и свои 5 копеек. Можно попробовать следующие действия (вычитал тут - самый последний комент, правда там другую проблему решали...):
1. Загрузка с LiveCD
2. chroot
3. Проверка конфига ядра [которое предполагается к использованию]: читаем используемые модули (lspci -k и сравниваем с src/linux/.config)
4. Включение нужного и выключение ненужного.
5. Пересборка ядра
6. rebbot.
-
сначала надо почитать. знать что и как работает.
|
|
|
Последние посты
|
|
Последние комментарии
|
|
Изменения
|
|
Черновики (все)
|
|
Избранное (всё)
|
|
|