Hardened Gentoo vs nVidia
Gentoo x86, nvidia.
Установил hardened-gentoo, как написано здесь. При установке отказался собираться mplayer (сменил gcc4.3.4 на gcc4.3.4-vanilla, mplayer встал ), а также gtk+ (выдал ошибку при сборке gtk.immodules)- нашел, что нужно сначала сделать:
eselect opengl set xorg-x11
а потом ставить gtk+. Все сработало. Далее перезагрузился в новое ядро, X11 не загружается (черный экран и ничего не происходит, компьютер не отвечает, выход- перезагрузка reset). При просмотре Xorg.log заканчивается на загрузке модуля nvidia. Меняю в xorg.conf dirver nvidia на vesa. Пробую startx - эффект тот же. При просмотре Xorg.log заканчивается на загрузке модуля glx. Убираю из xorg.conf load glx. Перезагружаюсь, стартую X11, опять то же самое. Перекомпилирую ядро, убираю все опции из Security options. Перезагружаюсь, меняю в xorg.conf driver vesa на nvidia - загружаются X11. Но при этом большинство программ (audacious2, xchat, chromium, stardict, pidgin etc.) не запускаются, выдавая segmentation fault. Работает только chromium-bin, mplayer, urxvt. Если же сменить gcc4.3.4 на gcc4.3.4-vanilla и скомпилировать, например xchat, то программа начинает работать. Вопрос, что я сделал не так и как это исправить?
- Для комментирования войдите или зарегистрируйтесь
РЕШЕНО
После обшения на gentoo-hardened выяснилось, что проблема в установленных nvidia-drivers. Если сделать eselect opengl set xorg-x11, то все работает отлично. Однако о 3d ускорении придется забыть на время. Вот что сказали на gentoo-hardened:
anything mask on hardened is masked for a reason :) just like everything in gentoo, devs try to prevent breakage your unmasking without knowning the consequense was your fault not ours.
nvidia-drivers НЕ ПОДДЕРЖИВАЮТСЯ вообще (это я к тому, что в документации нашел максимум "некоторые программы не уживаются с hardened"). Однако есть пара хороших новостей:
a few more kernel releases and you will see nouveua or something like that that supports nvidia cards with 3d acceleration partially working.
И еще, мне 3d нужен был в основном для игр. Причем если сделать так
то игры можно спокойно запускать, не забыв потом обратно сменить opengl.
лучше тогда уж eselect
лучше тогда уж
так как если игрушка некорректно завершится (или wine упадет), переключения на xorg-x11 не произойдет
paxctl -m /usr/bin/Xorg echo
P.S. mplayer и Ooo собираются только gcc-vanilla
P.P.S. в опциях ядра нужно обратить внимание на нижеследующие опции (если планируется работа с X)
CONFIG_GRKERNSEC_IO:Disable privileged I/O – Отключить привилегированный ввод/вывод.
Если включить эту опцию, все вызовы iopl и ioperm будут возвращены с ошибкой. Ioperm и iopl могут использоваться для модификации запущенного ядра. К несчастью некоторые программы нуждаются в такой необходимости, такие как XFree86 и hwclock. Hwclock может быть исправлен благодаря встроенной поддержке RTC в ядре, включенная опция CONFIG_RTC сделает так что hwclock будет работать коректно. XFree86 не будет работать в полном объеме при включенной опции. так что ненадо ее включать если у вас работает XFree86. Если есть необходимость защищать ядро при запущенном XFree86 используйте RBAC систему.
CONFIG_PAX_SOFTMODE:Support soft mode – Поддержка легкого режима работы.
Позволяет задействовать PaX в “легком режиме”, это значит что функции PaX, будут задействованы по умолчанию, только на исполняемых файлах которые отмечены явно. Легкий режим может быть запущен при загрузке ядра если подгрузить опцию “pax_softmode=1″ В дальнейшем функциями PaX можно управлять через /proc/sys/kernel/pax.
Боян. http://linuxforum.ru/in
Боян.
http://linuxforum.ru/index.php?showtopic=69882
sspphheerraa
Аккордеон :)
Тонкости настройки ядра типа CONFIG_GRKERNSEC_IO (если это можно назвать тонкостями ибо описано в хэндбуке) там не обсуждались, собственно на эти "грабли" и наступил топикстартер.
P.S. эта единственная отключенная опция в моем конфиге не считая CONFIG_GRKERNSEC_NO_RBAC