Problème runlevel GDM redhat

johnhappy -  
mamiemando Messages postés 33772 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Je travaille sur une machine tournant sur redhat 5.5 enterprise fournie en entreprise.
En résumé il y a 2 utilisateurs, 1 master et slave utilisant gdm qui tournent sur des runlevel différents. La master tourne en init 5 et la slave en init 4.
Le problème est que je ne peux pas basculer du 4 au 5 sans tuer manuellement l'interface graphique de la slave ( ctrl+alt+backspace ). L'interface X du runlevel 4 n'est pas tuée et lorsque la master est lancée il me dit ceci:

There already appears to be an X server running on display:0. Should another display number by tried? Answering GDM to attempt starting the sever
on :0... yes no

et en mode console on voit bien que le gdm n'est pas tué (pas de stop enclenché mais que les script start du master) et que le master est lancé directement aussi.
En ce qui concerne les script du master et du slave, il y en a 1 qui copie k*gdm de rc0 vers les rc multi-users. Lorsque je vais dans rc0, Je ne vois pas de k*gdm!!!



1 réponse

mamiemando Messages postés 33772 Date d'inscription   Statut Modérateur Dernière intervention   7 882
 
Bah en fait le truc c'est que sur une distribution moderne, tu n'es pas sensé géré qu'est ce qui est lancé / coupé à tel ou tel runlevel.

Concrètement c'est implémenté par une série de liens symboliques dans /etc/rc1.d à rc6.d et rcS.d, correspondant à chacun des runlevel décrits dans /etc/inittab. Ces liens se gèrent avec une commande qui dépend de la distribution (par exemple update-rc.d sous debian) ou directement avec la commande ln -s. Ces liens symboliques pointent vers les scripts de lancement stockés dans /etc/init.d

Le nom du lien n'est pas anodin : K signifie kill, S start. Le numéro qui suit est un numéro de séquence (pour déterminer dans quel ordre lancer les différents services, car certains dépendent d'autres services). La fin de la chaîne est le nom du service.

Les chaînes de lancement récentes de linux (upstart...) fonctionne sur un mécanisme différent mais normalement les commandes sont les mêmes (à vérifier).

Théoriquement et peu importe la chaîne de lancement utilisée (upstart ou sysvinit), c'est au moment où tu installes un paquet que celle-ci est corrigée en conséquence. Ainsi tu n'es jamais sensé aller charcuter dedans.

Ainsi le problème que tu rencontres laisse entendre que quelqu'un est aller dedans ou a fait une installation sale.

À ta place voici ce que je ferais :
- je ferais une mise à jour globale du système via le gestionnaire de paquet (up2date ?)
- je dégagerais gdm puisque manifestement il est mal intégré dans la chaîne de lancement
- je vérifierais que la chaîne de lancement est clean (plus de lien gdm dans /etc/rc*.d)
- je réinstallerais enfin gdm

Bonne chance
0