Forum Astuces.divers [Debian] Faire démarrer une Debian plus vite

Posté par  .
Étiquettes :
0
21
déc.
2003
L'astuce ne demande pas de compétence particulière, de recompiler le noyau ou de modifier des fichiers critiques.

On va par contre supposer deux choses : vous utilisez GDM et votre système démarre en runlevel 2. Mais même si c'est n'est pas le cas, les adaptations sont triviales.

Vous trouverez dans /etc/rc2.d/ des liens vers les programmes que init doit démarrer en runlevel 2. Nous allons tout simplement faire démarrer GDM en premier, car on ne peut pas dire que ce dernier a besoin de SSH, Alsa ou Cups pour fonctionner.

Pour cela, renommez le fichier S99gdm en S05gdm. Au prochain démarrage, init lancera GDM, qui lancera Xfree. Pendant que tout ce petit monde fait son affaire, init continue de lancer les services un à un.

Sur deux configurations, le temps que GDM me donne la main, tous les services lancés par init étaient démarrés, le système reste donc tout ce qu'il y a d'opérationnel.

Ceci peut évidemment s'adapter à d'autres distributions.
  • # Re: Faire démarrer une Debian plus vite

    Posté par  . Évalué à 1.

    humm oui pourquoi pas .. ne pas oublier le serveur de font avant alors ?...
    • [^] # Re: Faire démarrer une Debian plus vite

      Posté par  . Évalué à 1.

      Je ne l'utilise pas, j'ai viré le maximum de polices moches et il ne reste que xfonts-base-transcoded géré par XF86Config-4.

      Je suppose que c'est fontconfig qui s'occupe des belles polices anti-aliasées de Gnome et KDE.
      • [^] # Re: Faire démarrer une Debian plus vite

        Posté par  (site web personnel) . Évalué à 1.

        Testé avec une Sid, ça marche pas.
        gdm refuse de lancer la session en disant « bootup in progress, please wait ». Donc on est quand même obligé d'attendre.

        La vraie solution serait de modifier légèrement le script rc pour qu'il lance en parallèle les services dont le numéro est le même ; puis de modifier ces numéros d'ordre pour que le maximum de services aient le même.
        J'avais testé ça sur une mandrake et ça marchait bien sauf que l'affichage des [ OK ] était évidemment devenu incohérent.
  • # Re: Faire démarrer une Debian plus vite

    Posté par  (site web personnel) . Évalué à 2.

    pour le renomage du fichier s99gdm en s05gdm pour faire + propre il y a un petit utilitaire debian qui fait ca :)

    update-rc.d

    la commande doit etre pour ce cas mm
    update-rc.d -f gdm start 05 2

    enfin un man update-rc.d vous dira tout comme d'hab :)


    pm
  • # Re: Faire démarrer une Debian plus vite

    Posté par  . Évalué à 1.

    en faisant bien attention on peut aussi virer des trucs inutiles de /etc/rcS.d

    et recompiler un noyau minimal avec uniquement les trucs dont on a besoin maintenant (ce qui accélère aussi la compilation)
  • # Re: Faire démarrer une Debian plus vite

    Posté par  . Évalué à 1.

    Il est bon de rappeller que ça ne fait pas démarrer « Debian » plus vite, ni même le serveur graphique plus vite, mais uniquement le serveur graphique plus tôt.

    Inutile d'espérer ici le moindre gain de performances. C'est valable uniquement si vous désirez que la session graphique démarre pendant l'initialisation du système.

    Si votre ordi n'est pas récent, il est probable que vous ne bénéficiez que d'un X pas franchement utilisable confortable tant que le système s'initialise. Si votre ordi est récent vous gagnerez quelques secondes à tout casser.

    Ca pèse pas lourd, considérant que si toutes les distribs s'accordent à faire démarrer X vers la fin, de même qu'aucun shell n'est donné tant que l'init n'est pas finie, c'est parce que ceci a différentes implications.

    A mon sens, c'est une fausse bonne idée ; mais chacun fait ce qu'il veut en la matière :)
  • # Re: Faire démarrer une Debian plus vite

    Posté par  (site web personnel) . Évalué à 1.

    Et pourquoi ne pas démarrer certain services en parallèle plutôt que séquentiellement? C'est vrai, laissons la gestion de processus limiter les temps mort pendant le demarrage. Il faudrait juste s'assurer que certains services sont démarrer avant certains autre (il vaut mieux monter la partition racine avant de demarrer apache). Ce qu'il faudrait, c'est juste un petit système de dependance sur les service pour savir ce qui peut être demarrer en parrallèle.... Ca serait merveilleux, non?
    eh bien ca existe! Ca s'appelle simple init: http://www.atnf.csiro.au/people/rgooch/linux/boot-scripts/(...)
    Malheureusement, pour passer sur simple init, il faut refaire tous les script de /etc/init.d :-(
    • [^] # Re: Faire démarrer une Debian plus vite

      Posté par  . Évalué à 1.

      C'est apparemment ce que fait runit (cf. paquets Debian runit et runit-run), avec d'autres avantages sur le papier : http://smarden.org/runit/benefits.html(...)

      Quelqu'un a sauté le pas et installé ce remplaçant du sysV init ?
      • [^] # Re: Faire démarrer une Debian plus vite

        Posté par  . Évalué à 1.

        Je viens de sauter le pas il y a une semaine, et c'est pas vraiment la joie :)

        Heureusement, par défaut, runit exécute tous les scripts de /etc/rcS.d, et lance des gettys, ce qui assure que ton système reste à peu près fonctionnel. Ensuite, il faut rajouter des scripts de démarrage pour tes démons, ce qui est très simple, mais long...

        Le plus dur c'est les logs. J'ai pas bien compris comment les logs d'un démons étaient gérés. J'ai installé socklog à la place de syslog, et j'ai utilisé la méthode recommandé par le site web pour générer les logs. Je n'en suis pas encore satisfait.

        Il me reste l'arrêt de l'ordinateur qui mets trop de temps (mais on peut réduire le temps d'attente), et ca devrait aller !

        Si tu veux des infos, n'hésite pas à me demander.
        • [^] # Re: Faire démarrer une Debian plus vite

          Posté par  . Évalué à 1.

          Est-ce qu'il y aurait sous debian d'autres solutions que runit ou simple init?
          Faudrait ptet autre chose si runit est pas génial.

          Sous Gentoo, il est possible par défaut de gérer les dépendances sur les services qui sont lancés au démarrage. Un autre avantage de gentoo est que seuls les services lancés au démarrage seront désactivés lorsqu'on éteint le pc (on lance pas un init 6 ou init 0 qui va désactiver tous les Kxx de debian je crois).
          C'est le init à la façon bsd je crois.

          J'avais trouvé ce système excellent, surtout très pratique pour un ordi portable.
        • [^] # Re: Faire démarrer une Debian plus vite

          Posté par  . Évalué à 1.

          Est-ce qu'il y aurait sous debian d'autres solutions que runit ou simple init?
          Faudrait ptet autre chose si runit est pas génial.

          Sous Gentoo, il est possible par défaut de gérer les dépendances sur les services qui sont lancés au démarrage. Un autre avantage de gentoo est que seuls les services lancés au démarrage seront désactivés lorsqu'on éteint le pc (on lance pas un init 6 ou init 0 qui va désactiver tous les Kxx de debian je crois).
          C'est le init à la façon bsd je crois.

          J'avais trouvé ce système excellent, surtout très pratique pour un ordi portable.
  • # Rebooter plus vite

    Posté par  . Évalué à 0.

    Pour redémarrer le kernel (le même ou un autre) rapidement sans rebooter et attendre l'initialisation du bios, voir le patch kexec :

    http://www.xmission.com/~ebiederm/files/kexec/(...)

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.