Je suis à la recherche d’une liste des modules indispensables au boot de Debian. Je trouve que j’en ai un peu beaucoup au démarrage, des cron et anacron qui font sûrement doublon & co., donc j’aimerais bien savoir ce qu’il faut comme strict minimum.
Je suis à peu près sûr d’avoir vu passer ça quelque part mais impossible de remettre la main dessus…
Ok,
je jetterai un oeil ce soir sur ce que me dit lsmod (sur mon pc sous Debian).
Edit: j’en ai identifié quelques uns:
[ul]
thermal/thermal_sys/core_temp : modules qui lisent les températures du processeur, du disque dur, etc…
fan : c’est le module qui gère le ventilo.
ohci1394/ieee1394 : modules pour le firewire
ehci_hcd : gestion des ports USB 2.0
uhci_hcd : gestion des ports USB 1.0
modules en snd_XXX et soundXXX: modules de gestion des cartes son (et des logiciels qui vont avec)
modules en rt2X et autres en rtXXX: modules pour les cartes réseau
[/ul]
Salut,
Dans ton premier post tu parlais de cron, anacron (qui sont complémentaire, voir fcron) sont des daemons.
Si c’est bien ça que tu cherches, il existe sysv-rc-conf qui permet de gérer facilement les daemons.
Cron et anacron ne sont pas des modules du noyau, ce sont des services, des “démons” (programmes tournant en tâche de fond) lancés par les scripts d’initialisation figurant dans /etc/rc*.d/ et installés par des paquets. Ce sont deux choses très différentes.
Un module peut être chargé soit parce qu’ils sert à piloter un élément matériel présent qui a été détecté par udev, soit parce qu’ils figurent dans /etc/modules, soit parce qu’il fournit une fonctionnalité qui a été demandée par un programme, comme iptables pour créer des règles, mount pour monter un système de fichiers (ext3)… ou bien par dépendance d’un autre module.
Quant à savoir lesquels sont “indispensables”, tout dépend de ce que tu veux faire.
Bon, donc je me suis embrouillé entre modules et daemons. En fait l’idée de base c’était d’alléger un peu le boot. Dans cette optique, il faut élaguer daemons, modules ou les deux ? Parce que avahi (un daemon), par exemple, si j’ai tout bien compris étant donné que je ne fais pas partie d’un LAN, je n’en ai pas besoin. Mais niveau module j’ai vu des gens dont le lsmod était bien plus court aussi…
Donc par “indispensables”, j’entends daemons et modules minimums pour pouvoir booter. Je pense que j’ai déjà plus ou moins identifié ce qui est spécifique à mon matériel, mais ça laisse quelques inconnues.
[quote=“PascalHambourg”]
Quant à savoir lesquels sont “indispensables”, tout dépend de ce que tu veux faire.[/quote]
Tout à fait, et pas se tromper de cible non plus.
Ames sensibles et amis du bon gout s’abstenir (edit, en rouge: une utilisation inappropriée des recommandations ci dessous est DANGEREUSE, peut rendre votre ordinateur instable, voire non-bootable)
Au minimum, t’as besoin d’un kernel, d’un /dev peuplé et d’un shell, mais t’iras pas loin avec ça
Après tout dépend de ce que TU veux, ce qui n’est pas forcément ce que nous voulons, c’est pour ça que tu ne trouveras pas de guide pré fabriqué. Je te dirais qu’il n’y a pas que les daemons et les modules.
Par exemple le PC sur lequel je t’écris avec une configuration “desktop”, caché en NAT derrière un routeur qui fait aussi pare feu (i386, mono proc):
Déjà ça commence par une ligne de boot adaptée à ton matériel:
(isapnp prend un temps fou alors que ca m’est pas utile).
PAS de framebuffer, ni de bootsplash, ni de message inutiles - quand t’es sur une stable t’es sur de jamais avoir d’ennuis de toute manière
Oui, je suis vraiment un rapace, pas de syslog ni de cron rien. Oui je suis un fou de lancer un serveur HTTP sans avoir syslog… ce serveur n’écoute que sur localhost - Tu commences à comprendre le “ça dépend” je pense
J’ai viré certains script qui étaient lents (cpufreq par exemple) pour mettre les modules à charger directement dans /etc/modules. Après j’ai pris des risques, par exemple:
(Attention, je ne recommande pas !)
/etc/init.d/rc:32:CONCURRENCY=startpar
/etc/init.d/rc:112: # startpar do not work properly at the start of rcS.d/. Avoid it.
Mais mon plus gros risque reste (Ca c’est vraiment dangereux je ne recommande pas du tout):
$ mount
/dev/sda3 on / type ext2 (rw,noatime,errors=remount-ro)
/dev/sda5 on /home type ext2 (rw,noatime)
/dev/sda7 on /media/sda7 type ext2 (rw,noatime)
(l’ext2 est bien plus rapide que l’ext3, même en mode writeback, mais tu le payes plus tard par des fdisk à rallonge voire des pertes de données en cas de crash ou de coupure de courant… )
Aussi udev est accusé de tout les maux. Même s’il est vrai que le “udevadm settle” est long, je fais tout par udev, lancement de cups au branchement de l’imprimante, automount des clés USB etc. - le jeu en vaut la chandelle, et le temps de lancement d’udev est compensé par le temps et les ressources gagnées par le lancement de services pas toujours utiles.
Mais quand t’en seras arrivé à mon point, tu te rendras compte que c’est ridicule, tu mets moins de temps à booter que de sortir d’hibernation
Et pourtant j’utilise un kernel bien lourd « d’usine » (2.6.30-bpo), et je rogne pas sur les modules, y a un moyen simple de pas faire charger le module X, c’est de désactiver le périphérique qui provoque le chargement de X dans ton bios - ça c’est très souvent oublié !
Ouaw, merci pour les infos détaillées J’ai pris note, ça va me servir à comprendre et à ne pas faire la même chose !
Ceci dit j’ai déjà viré avahi, kerneloops et timidity qui m’em**** plus qu’autre chose. Résultats des courses : 15s de temps de boot en moins et 5Mb de RAM économisés au démarrage.
Maintenant je me pose la question de tous ces processus de planification : cron, anacron et atd. Est-ce que par défaut ils servent à quelque chose, parce que moi j’y ai jamais touché donc… J’ai vu quand même que cron a certaines tâches planifiées : des apt, des aptitude, exim4-base, logrotate, scrollkeeper et autres joyeusetés.
Qu’est-ce que je peux virer raisonnablement “sans” risques ?
Comme le dit alxx, anacron et cron sont complémentaires, anacron effectue les taches au boot seulement, et quitte une fois les taches terminées, alors que cron effectue les taches en permanence.
De plus, utiliser anacron seul, ça signifie devoir booter tout les jours, un vrai boot - pas de retour d’hibernation ou autre, sinon anacron est inefficace. Cron prend alors le relai d’anacron. Voila pourquoi on dit qu’ils sont complémentaires.
Donc si on reste prudent, on garde les 2
Concernant atd, tu peux l’enlever de la séquence de boot, a moins que tu n’utilises at pour programmer une commande à une heure précise.
Bon ben merci à tous, j’aurai appris des tas de trucs sur le boot et ses runlevels
Tout ce qu’il me reste de lent au chargement, c’est hald et preload, mais ça je garde. Ah, je perds aussi quelques secondes à cause de mon disque dur externe, quand udevd passe dessus, mais je garde aussi.
Juste pour satisfaire ma curiosité, Knucky, est-ce que tu pourrais détailler un peu ta ligne de boot (isapnp, smp, mce, lp : késako ?) et m’informer sur où je peux en apprendre plus sur les différentes options possibles ?
noisapnp : ne pas s’embeter avec des cartes ISA (j’en ai pas donc…) (isa plug n pray par expérience personnelle ) lp=0 : pas de pilote pour l’impression via port parrallèle nosmp : forcer l’utilisation d’un seul processeur (j’en ai qu’un seul) nomce : pas de vérification d’erreur matérielle (olé olé celui la) quiet : pas de message d’information de la part du kernel