View previous topic :: View next topic |
Author |
Message |
yolcu n00b
Joined: 30 May 2012 Posts: 33
|
Posted: Wed Nov 06, 2013 6:54 pm Post subject: [Kernel] Mise a jour de noyau et Grub. [Resolu] |
|
|
Bonjour,
J'ai installer la Gentoo a partir d'une CD de ''install-86-minimal-20131029.iso''.
Après installation de systeme de base Gentoo j'ai installer Xorg et Xfce.
J'ai fait un mise a jour de l'arbre de portage avec ''#emerge –sync'' et/ou ''emerge-webrsync'' et j'ai fait un mise a jour complète de système entier avec ''#emerge –update –deep –with-bdeps=y –newuse world''et j'ai continuer par un ''#emerge --depclean'' et ''#revdep-rebuild'' .
Le noyau utiliser par le CD d'installation c’était ''Linux-3.10.7-gentoo-r1'', mais pendent un mise a jour j'ai vue que il y a un nouveau noyau ''Linux-3.10.17-gentoo'', j'ai vue ''emerge'' a installer le nouveau noyau et désinstaller ancienne, mais au démarrage de PC j'ai que ancienne noyau dans Grub, en plus au démarrage de PC, Grub bascule vers une autre fenêtre de Grub et encore vers une autre fenêtre sans Grub qui ressemble a un démarrage de Grub mais dans cette fenêtre aussi c'est l'ancienne noyau qui apparais.
Voici le comportement de système et grub au démarrage:
Fenetre 1:
GNU GRUB version 2.00
Gentoo GNU/Linux
*Options avancée pour Gentoo GNU/Linux
Basculement vers une nouvel fenêtre
Fenetre 2:
GNU GRUB version 2.00
*Gentoo GNU/Linux, avec Linux x86-3.10.7-gentoo-r1
Gentoo GNU/Linux, avec Linux x86-3.10.7-gentoo-r1 (mode de dépannage)
Basculement vers une nouvel fenêtre
Fenetre 3:
Démareage de <<Gentoo GNU/Linux>>
Chargement de Linux x86-3.10.7-gentoo-r1...
Chargement du disque mémoire initial...
....
....
Mais la plus par de temps la fenêtre 2 n'apparais pas. Elle apparais que au démarrage a froid (si on peut dire).
Dans /usr/src j'ai un dossier de /linux un dossier de /linux-3.10.7-gentoo-r1 un dossier de /Linux-3.10.17-gentoo et un fichier de .keep qui est vide. Ce que ce trouve a l’intérieur de dossier /linux et /linux-3.10.7-gentoo-r1 sont identique.
Dans le répertoire /boot j'ai absolument rien, il est vide ? Et pour tant a l’étape d'installation de grub2 j'ai bien lancer ces commandes:
#emerge sys-boot/grub:2 (pour installer Grub2)
#grub2-install /dev/sda (pour installons des fichiers de Grub2 dans MBR)
#grub2-mkconfig -o /boot/grub/grub.cfg (pour générer le fichier ''grub.cfg'' sous /boot/grub/).
Je ne comprend pas pourquoi le répertoire /boot est vide, pourquoi ils n'y a pas un dossier /grub, ni un fichier ''grub.conf'', ou ils se trouve les fichier de configuration du au Grub ?
A l’installation de Gentoo, a l’étape d'installation et configuration d'un noyau j'ai fait :
#emerge gentoo-sources
#emerge genkernel
#genkernel all
Je me demande, puisque je passe par genkernel, est ce que installation de noyau gentoo-sources est il nécessaire, ou gengernel est suffisant?
Mon système fonctionne plus au moins correctement, mais comment résoudre ce problème de nouveau noyaux qui n'est pas pris en charge et inexistence de répertoire /grub et son fichier de configuration grub.conf dans /boot et ce démarrage anormale de Grub au démarrage de PC ?
Cordialement
Last edited by yolcu on Fri Nov 08, 2013 11:05 pm; edited 2 times in total |
|
Back to top |
|
|
nutsi n00b
Joined: 13 Jul 2012 Posts: 38
|
Posted: Thu Nov 07, 2013 7:26 am Post subject: |
|
|
Bonjour,
Pour ton /boot vide, peut-être est-il sur une autre partition qui ne serait pas monté? En tout cas, si ton /boot n'est pas sur une partition séparée... il ne devrait pas être vide.
Quote: | Dans /usr/src j'ai un dossier de /linux un dossier de /linux-3.10.7-gentoo-r1 un dossier de /Linux-3.10.17-gentoo et un fichier de .keep qui est vide. Ce que ce trouve a l’intérieur de dossier /linux et /linux-3.10.7-gentoo-r1 sont identique. |
Si tu fais un ls -l dans /usr/src, tu devrais voir que /usr/src/linux n'est qu'un simple lien symbolique vers /usr/src/linux-3.10.7-gentoo-r1. C'est donc on ne peut plus normal que les 2 répertoires soient identiques.
Lorsque tu fais un Code: | emerge gentoo-sources | , tu vas juste installer les sources d'un nouveau kernel si nécessaire. Tu auras donc un nouveau répertoire dans /usr/src. Pour changer le lien symbolique dont je te parlais plus haut, tu peux utilisé eselect (eselect kernel), et c'est seulement à partir de ce moment là que tu pourras utilisé genkernel sur ton nouveau noyau.
Par contre, ton problème de /boot vide et de grub je n'ai pas trop d'idée sur le coup.
Cordialement, |
|
Back to top |
|
|
ayame99 n00b
Joined: 07 Oct 2013 Posts: 20
|
Posted: Thu Nov 07, 2013 3:57 pm Post subject: |
|
|
Pour la syntaxe de eselect je te conseille de lire http://www.gentoo.org/proj/fr/eselect/user-guide.xml
dans ton cas ca donne
Code: | eselect kernel list |
dans mon cas ca me retourne:
Code: | Available kernel symlink targets:
[1] linux-3.2.12-gentoo
[2] linux-3.6.11-gentoo
[3] linux-3.8.13-gentoo *
[4] linux-3.10.7-gentoo-r1
|
l étoile te signale vers quel kernel le lien symbolique pointe.Pour choisir ton kernel il suffit de faire
Code: | eselect kernel set 4 | à adapter a ta configuration exemple set 1
Une autre option pour eviter de faire cette sélection à chaque fois est de travailler avec la variable "symlink" du paquet gentoo-sources pour se faire rajoute dans ton fichier package.use (/etc/portage/package.use) la ligne
Code: | sys-kernel/gentoo-sources symlink |
SI tu veus des info pour genkernel
http://wiki.gentoo.org/wiki/Genkernel/fr
Quote: | Bonjour,
Pour ton /boot vide, peut-être est-il sur une autre partition qui ne serait pas monté? En tout cas, si ton /boot n'est pas sur une partition séparée... il ne devrait pas être vide. |
Pour vérifier ca regarde dans ton fichier fstab (/etc/fstab)
exemple:
Code: | /dev/sda1 /boot ext2 noauto,noatime 1 2 |
on remarque que la partition est est sur une partition séparée (/dev/sda1 /boot) et qu il n est pas monté par défaut ( noauto)
si tu as le même genre de ligne monte ton /boot avant de lancer genkernel et grub2-mkconfig -o /boot/grub/grub.cfg
je ne sais pas si le script genkernel (jamais utilisé genkernel) et grub2-mkconfig vérifie si /boot est monté.
Par contre méfie toi si tu utilise les drivers nvidia :chaque recompilation, mise à jour du kernel doit se suivre par la recompilation du drivers nvidia. _________________ "Parfois je me demande si la meilleure preuve qu'il existe des espèces intelligentes quelque part dans l'Univers c'est qu'aucune d'entre elles n'a encore essayé de nous contacter."
(extrait de Calvin et Hobbes) |
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8706 Location: ~Brussels - Belgique
|
Posted: Thu Nov 07, 2013 6:09 pm Post subject: |
|
|
Tip of the day: après chaque compilation/installation du kernel, ne pas oublier un petit Code: | emerge @module-rebuild | _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
yolcu n00b
Joined: 30 May 2012 Posts: 33
|
Posted: Thu Nov 07, 2013 10:53 pm Post subject: |
|
|
Quote: | nutsi dit:
Pour ton /boot vide, peut-être est-il sur une autre partition qui ne serait pas monté? En tout cas, si ton /boot n'est pas sur une partition séparée... il ne devrait pas être vide. |
Effectivement j'ai une partition /sda1 pour /boot qui n'est pas été monter automatiquement, j'ai modifier ''fstab'', depuis /boot/grub est présent.
Quote: | nutsi dit:
Lorsque tu fais un ''emerge gentoo-sources'' tu vas juste installer les sources d'un nouveau kernel si nécessaire. Tu auras donc un nouveau répertoire dans /usr/src. Pour changer le lien symbolique dont je te parlais plus haut, tu peux utilisé eselect (eselect kernel), et c'est seulement à partir de ce moment là que tu pourras utilisé genkernel sur ton nouveau noyau. |
J'ai pas fait ''emerge gentoo-source'', le seul ''emerge gentoo-source'' que j'ai fait, c’était pendent installation de Gentoo. Mais la il s'agit d'un mise a jour. Mais si je comprend bien, même après une mise a jour de kernel (fait automatiquement) par ''#emerge –sync'' ou par ''#emerge –update –deep –with-bdeps=y –newuse world'', utilisateur doit intervenir pour la compilation/installation de kernel et modules, et relancer un ''grub2-mkconfig -o /boot/grub/grub.cfg'' pour que le nouveau kernel soit pris en charge par grub2 ?
Mais alors pourquoi a chez moi un ''[b]#eselect kernel list[/b]'' dit ''[1] linux-3.10.17-gentoo*'', est rien d'autre ? Ou est ''linux-3.10.7-gentoo-r1'' ? Si il est désinstaller pendent la mise a jour alors pourquoi c'est toujours lui qui apparais au démarrage ?
Merci pour tes remarque, ça été utile.
@ayame99, merci beaucoup pour ton message précis, détaillé est avec des exemples. J'ai ajouter ''sys-kernel/gentoo-sources symlink'' dans ''/etc/portage/package.use''.
Quote: | ayame99 dit:
Par contre méfie toi si tu utilise les drivers nvidia :chaque recompilation, mise à jour du kernel doit se suivre par la recompilation du drivers nvidia. |
J'utilise le pilote "nouveau"pour la carte graphique. Mais j’ai du faire quelle que modifications dans kernel quoi même.
Quote: | ayame99 dit:
je ne sais pas si le script genkernel (jamais utilisé genkernel) et grub2-mkconfig vérifie si /boot est monté. |
Comme je disais a @nutsi, je ne savais pas que après une mise a jour de kernel (fait automatiquement) par ''#emerge –sync'' ou par ''#emerge –update –deep –with-bdeps=y –newuse world'', utilisateur doit intervenir pour la compilation/installation de kernel et modules, et relancer un ''grub2-mkconfig -o /boot/grub/grub.cfg'' pour que le nouveau kernel soit pris en charge par grub2 ?
Moi j'utilise genkernel, dans mon cas doit je me placer dans "/usr/src/linux-3.10.17-gentoo" et faire "#genkernel --menuconfig all" une fois dans menuconfig, vérifier et faire quelle que modifications si nécessaire, sortir et continuer a l’installation de kernel et modules?
@XavierMiller, merci pour astuce. |
|
Back to top |
|
|
nutsi n00b
Joined: 13 Jul 2012 Posts: 38
|
Posted: Fri Nov 08, 2013 9:33 am Post subject: |
|
|
Tu peux utilisé pour savoir quel kernel est utilisé. Il est possible que l'entrée du GRUB ne soit pas modifié, mais qu'il n'y ait que l'image kernel de remplacée. |
|
Back to top |
|
|
ayame99 n00b
Joined: 07 Oct 2013 Posts: 20
|
Posted: Fri Nov 08, 2013 1:09 pm Post subject: |
|
|
Quote: | Effectivement j'ai une partition /sda1 pour /boot qui n'est pas été monter automatiquement, j'ai modifier ''fstab'', depuis /boot/grub est présent. |
personnellement je préfère laisser la partition /boot non montée en effet si tu fais une mauvaise manip avec un fichier sur cette partition tu ne pourra plus démarrer.
Quote: | emerge –update –deep –with-bdeps=y –newuse world |
Quote: | 'ai pas fait ''emerge gentoo-source'', le seul ''emerge gentoo-source'' que j'ai fait, c’était pendent installation de Gentoo. Mais la il s'agit d'un mise a jour. |
en fait le paquet gentoo-source se comporte pas comme tous les autres paquets
exemple :
si tu fais un vlc sera mis a jour et au prochain lancement du logiciel il utilisera la nouvelle version dans le cas de gentoo-source c est different les sources du kernel seront installées et prete a etre compiler mais le système ne sais pas si tu veus utiliser genkernel ou compiler à la main, donc il a installé les sources.
Quote: | Si il est désinstaller pendent la mise a jour alors pourquoi c'est toujours lui qui apparais au démarrage ? |
en fait c est pas le noyau compilé qui est désinstallé mais les sources du noyau.Quand tu utilise genkernel il te copie tous seul le noyau compilé dans /boot. Ceci te donne un gros avantage imagine tu as compilé ton kernel mais il marche pas (exemple tu as oublié le support de ton systeme de fichier) tu auras toujours la possibilité de démarrer sur l ancien kernel.
Quote: | Mais alors pourquoi a chez moi un ''#eselect kernel list'' dit ''[1] linux-3.10.17-gentoo*'', est rien d'autre ? Ou est ''linux-3.10.7-gentoo-r1'' ? |
En faite il faut bien comprendre la difference entre les sources du noyau et le noyau compilé.Eselect te permet de choisir le lien vers les sources du noyau
voici dans mon cas le resultat de eselect et le lien vers les sources
Code: | ayame@shibusen ~ $ eselect kernel list
Available kernel symlink targets:
[1] linux-3.2.12-gentoo
[2] linux-3.6.11-gentoo
[3] linux-3.8.13-gentoo *
[4] linux-3.10.7-gentoo-r1
ayame@shibusen ~ $ ls -l /usr/src/linux
lrwxrwxrwx 1 root root 19 29 juil. 18:48 /usr/src/linux -> linux-3.8.13-gentoo
|
maintenant je vais changer de sources par exemple pour utiliser le nouveau kernel
Code: | shibusen ~ # eselect kernel set 4
ayame@shibusen ~ $ eselect kernel list
Available kernel symlink targets:
[1] linux-3.2.12-gentoo
[2] linux-3.6.11-gentoo
[3] linux-3.8.13-gentoo
[4] linux-3.10.7-gentoo-r1 *
ayame@shibusen ~ $ ls -l /usr/src/linux
lrwxrwxrwx 1 root root 22 8 nov. 13:47 /usr/src/linux -> linux-3.10.7-gentoo-r1
|
En fait a partir de la le nouveau noyau n est pas utiliser il est pret a etre compiler
Quote: | Moi j'utilise genkernel, dans mon cas doit je me placer dans "/usr/src/linux-3.10.17-gentoo" et faire "#genkernel --menuconfig all" une fois dans menuconfig, vérifier et faire quelle que modifications si nécessaire, sortir et continuer a l’installation de kernel et modules?
|
en fait tu peut le faire depuis /usr/src/linux vu que soit par eselect ou par la variable USE symlink ton lien symbolique vers les sources du noyau est à jour.
Rien a voir avec ton problème/question mais un conseil quand tu installes un paquet ou quand tu fais une mise à jour si tu as
Code: | * IMPORTANT: 4 news items need reading for repository 'gentoo'.
* Use eselect news to read news items. |
lit les bien, des informations très très très importantes s y trouve.Par exemple lors du passage a udev 200 ou supérieur les cartes réseaux ne sont plus nommé eth0
Pour ce faire eselect est notre ami
Code: |
ayame@shibusen ~ $ eselect news list
News items:
[1] N 2009-04-18 Generation 1 Java Setup Deprecated
[2] 2010-08-01 (2010-08-01-as-needed-default - removed?)
[3] 2011-04-27 Upgrade to GLIB 2.28
[4] 2011-08-28 Mesa r600 driver now defaults to gallium
[5] 2011-11-26 Unmasking of and Upgrade to GNOME 3.2
[6] 2012-03-16 (2012-03-16-udev-181-unmasking - removed?)
[7] 2012-05-21 Portage config-protect-if-modified default
[8] 2012-09-09 make.conf and make.profile move
[9] 2012-11-06 PYTHON_TARGETS deployment
[10] 2013-01-23 (2013-01-23-udev-upgrade - removed?)
[11] 2013-02-10 New 13.0 profiles and deprecation of 10.0 profiles
[12] 2013-03-29 Upgrading udev to version >=200
[13] 2013-06-07 Portage preserve-libs default
[14] N 2013-06-30 Printer browsing in net-print/cups-1.6
[15] 2013-08-23 Language of messages in emerge logs and output
[16] N 2013-09-27 Separate /usr on Linux requires initramfs
[17] N 2013-10-14 GRUB2 migration
|
et pour lire une news
Code: |
ayame@shibusen ~ $ eselect news read 17
2013-10-14-grub2-migration
Title GRUB2 migration
Author Mike Gilbert <floppym@gentoo.org>
Posted 2013-10-14
Revision 1
A newer version of GRUB (sys-boot/grub) is now stable. There are now
two available slots:
sys-boot/grub:0 - Known as "GRUB Legacy"
sys-boot/grub:2 - Known as "GRUB2"
GRUB2 uses a different configuration format, and requires a manual
migration before your system will actually use it. A guide [1] is
available on the gentoo.org website, and the Gentoo wiki [2][3] has
additional information.
If you would prefer not to migrate at this time, you do not need to
take any action: GRUB Legacy will remain functional in /boot. To
prevent any associated files (documentation) from being removed, add
sys-boot/grub:0 to your world file. For example:
emerge --noreplace sys-boot/grub:0
References:
[1] http://www.gentoo.org/doc/en/grub2-migration.xml
[2] https://wiki.gentoo.org/wiki/GRUB2_Quick_Start
[3] https://wiki.gentoo.org/wiki/GRUB2
|
_________________ "Parfois je me demande si la meilleure preuve qu'il existe des espèces intelligentes quelque part dans l'Univers c'est qu'aucune d'entre elles n'a encore essayé de nous contacter."
(extrait de Calvin et Hobbes) |
|
Back to top |
|
|
yolcu n00b
Joined: 30 May 2012 Posts: 33
|
Posted: Fri Nov 08, 2013 11:02 pm Post subject: |
|
|
J'ai compiler le nouveau noyau (3.10.17-gentoo) avec ''#genkernel --menuconfig all'', plus un ''#emerge @module-rebuild'', un ''#emerge --update --deep --with-bdeps=y --newuse world'', un ''#emerge --depclean'', un ''#revdep-rebuild'' et un ''#grub2-mkconfig -o /boot/grub/grub.cfg'', et au redémarrage le nouveau noyau est pris en charge.
Maintenant je sais que, si il y a un mise a jour de noyau, il faut intervenir soit même.
Merci pour votre aide et pour vos conseilles.
Sujet noyau et grub2 résolu. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|