Site perso : Emmanuel Branlard
Système avec beaucoup de mémoire vive : diminuer la valeur pour limiter les accès disques et la charge processeur, au prix d'une utilisation de la mémoire plus importante. La valeur par défaut est 60, si vous disposez de plus de 1Go de mémoire n'hésitez pas à descendre à 20, voir aussi bas que 5 au-dessus de 2Go. De toute façon même si la valeur 0 est utilisée et que du swapping soit nécessaire, le noyau outrepassera le réglage, simplement il ne le fera qu'en dernier recours et non systématiquement en avance. J'utilise la valeur 10 qui me donne satisfaction, la mémoire vive est plus utilisée et je n'ai jamais de swap, les applications et l'environnement de bureau sont plus réactifs, en particulier après une courte période d'inutilisation. Pour changer ce réglage éditez le fichier /etc/sysctl.conf en root et ajoutez à la fin du fichier les lignes : #swappiness perso vm.swappiness=10 pour choisir une valeur de 10. Pour rendre le changement effectif utilisez : # /sbin/sysctl -p
Pour ce qui est des options propres au système d'exploitation, avec un système journalisé comme ext3 ou reiserfs le système va enregistrer l'heure précise d'accès à un fichier lors de sa création, modification ou simplement de son ouverture. Ce dernier point est un gâchis de ressources sur un poste de travail (sur un serveur il peut se justifier par la nécessiter de pouvoir effectuer des contrôles sur les accès à un fichiers donné, mais le premier pirate venu modifiant ce paramètre d'un simple " touch " on peut douter de son efficacité...). Pour supprimer ce comportement ajoutez l'option noatime dans votre fichier / etc/fstab. Un exemple de lignes modifiées : /dev/sda1 / ext3 defaults,noatime,errors=remount-ro 0 1 Cette option est applicable à la partition root et /home, mais également aux autres partitions contenant des données si vous avez un partitionnement plus élaboré (/usr ; /tmp ; ...), l'option n'est pas utile sur /boot, et pas utilisable sur /swap. Comme alternative, l'option relatime est un bon compromis.Certains programmes comme "mutt" (client de courriel en ligne de commande) peuvent être perturbés par "noatime", ce qui ne sera pas le cas de "relatime".
Readahead est un programme conçu pour accélérer le chargement d'autres programmes, plus particulièrement pendant la séquence de démarrage. À noter que le paquet "readahead" semble être en voie d'abandon dans Debian et Ubuntu. Sur Debian il est remplacé par "readahead-fedora" à partir de Squeeze. Pour que "readahead[-fedora]" fonctionne votre noyau doit être compilé avec le support du système d'audit. C'est le cas des noyaux par défaut Debian. Si vous compilez vous même votre noyau vérifiez avec : $ grep CONFIG_AUDIT= /boot/config-$(uname -r) Après son installation, il faut lui permettre de "profiler" la séquence de démarrage. Sur grub2 : * Sélectionnez l'entrée correspondant à votre système, et éditez la avec la touche [e]. * Placez vous sur la ligne "linux", et éditez la directement. * Ajoutez en fin de la ligne "linux" l'option profile. * Poursuivez le démarrage avec [ctrl][x] Ceci n'est plus nécessaire avec "readahead-fedora", des tâches "cron" se chargeant de la configuration sans intervention de l'utilisateur (c'est beau le progrès ;-) ) Le démarrage peut être sensiblement plus lent que la normal, ce sera l'unique fois, l'option "profile" que vous avez ajoutez aura disparu au prochain démarrage. Les démarrages suivant devraient être plus rapides. Vous pouvez jeter un oeil aux fichiers de configuration dans /etc/readahead/ (/etc/readahead.conf pour "readahead-fedora"), ils contiennent la liste des exécutables et librairies à pré-charger en cache pour le démarrage (fichier "boot"), et le fonctionnement normal (fichier "desktop"). Readahead ne présente aucun danger pour votre système, il est encore plus efficace utilisé conjointement au options suivantes : %%% makefile concurrency and readahead # aptitude install readahead-fedora # echo CONCURRENCY=makefile >> /etc/default/rcS # aptitude install insserrv # dpkg-reconfigure insserv sysv-rc Cela consiste à réorganiser totalement la séquence d'exécution des scripts "init", et permettre leur exécution parallèle (en particulier sur les processeurs multicoeurs). Si vous constatez des problèmes d'initialisation de certains scripts "init" avec ces réglages (peu probable), faites un rapport de bug au mainteneur du paquet en question. Il lui suffit de corriger les en-têtes des script "init". "readahead" peut être utilisé conjointement à "upstart" présenté ci-dessous, lisez /usr/share/doc/readahead-fedora/README pour les éventuelles précautions (en particulier désinstaller "auditd" si présent).
Preload est un "daemon adaptatif pour readahead", qui se lance en tache de fond sur votre système, qui observe quel programme vous utilisez le plus souvent, et les met en cache en vue d'accélérer le temps de chargement des applications. En utilisant Preload, vous metterez votre mémoire non utilisé au travail (en gros elle sera utilisé utilement), et améliorer les performances général de votre ordinateur de bureau. Installer Preload sur Ubuntu est faisable facilement avec la commande: sudo apt-get install preload
sudo apt-get install prelink sudo gedit /etc/default/prelink Changer l'option: PRELINKING=unknown en PRELINKING=yes Pour lancer Prelink, taper la commande suivante dans la console: sudo /etc/cron.daily/prelink Ceci prendra quelques temps à finir (autour de 10-15 minutes). Si vous voulez lancer Prelink à chaque fois que vos mettez à jour votre système, ajouter un script dans le dossier /etc/apt/apt.conf.d/ (quand il dit script c'est un fichier hein...), appellé le S99prelink, et mettez la ligne suivante à l'intérieur: DPkg::Post-Invoke {"echo Running prelink, please wait...;/etc/cron.daily/prelink";}
Debian squeeze goes towards concurrency boot ie in /etc/default/rcS CONCURRENCY=makefile See "/usr/share/doc/insserv/README.Debian". http://wiki.debian.org/LSBInitScripts/DependencyBasedBoot dpkg-reconfigure insserv sysv-rc ####To see the boot and reboot sequence dependency graph, use aptitude install insserv graphviz /usr/share/insserv/check-initd-order -g > boot.dot /usr/share/insserv/check-initd-order -g -k > reboot.dot dotty boot.dot dotty reboot.dot ### http://www.debian-administration.org/articles/629 http://www.debian-administration.org/articles/620 ### Runlevels (S does not mean service but single!) runlevel directory description of runlevel usage N none system bootup (NONE) level (no "/etc/rcN.d/" directory) 0 /etc/rc0.d/ halt the system S /etc/rcS.d/ single-user mode on boot (alias: "s") 1 /etc/rc1.d/ single-user mode switched from multi-user mode 2 /etc/rc2.d/ multi-user mode 3 /etc/rc3.d/ ,, 4 /etc/rc4.d/ ,, 5 /etc/rc5.d/ ,, 6 /etc/rc6.d/ reboot the system 7 /etc/rc7.d/ valid multi-user mode but not normally used 8 /etc/rc8.d/ ,, 9 /etc/rc9.d/ ,, ### Go back to default: # for squeeze and later insserv anacron # prior to 6.0 (prior to squeeze) update-rc.d anacron defaults man insserv man update-rc.d man init ##Manually : /etc/init.d /etc/rc0.d /etc/rcS.d %%% Nouveau outil, graphique mais bien plus complet : BUM sudo aptitude install bum %%% Install a tool - sysv-rc-conf. It is a perl based boot process adjustment tool. Code: sudo sysv-rc-conf -P switch with sysv-rc-conf to remove old empty entries. %%% List of services acpid (2 3 4 5 -> D?) ??????????? acpi-support support de l'acpi (gestion de l'énergie) alsa serveur de son alsa-utils(S) : ???????? anacron (2 3 4 5 -> D or kept, logrotate useful for instance.. but well) : cron anachronic apmd usefull for battery monitor demon apm (ancien acpi) (gestion de l'énergie) apparmor (D) service, securite) aport (D) (info sur les crash) atd (D) ????? daemon atd (différent de cron dans le principe) aumix(2 3 4 5->D? if different than amixer) : manager son en mode texte avahi-daemon(D?) : permet de découvrir automatiquement les ressources réseau et de s'y connecter binfmt-support(?????????) : pour wine - utiliser d'autres bin format bootclean.sh efface les répertoires /tmp,/var/run et /var/lock bootlogd (S ->D) un des permiers scripts exécuté, lance le daemon bootlogd bootlogs (1 2 3 4 5 ->D) un des permiers scripts exécuté, lance le daemon bootlogd bootmisc.sh effectue diverses tâches, genre sauver le résultat de dmesg dans /var/log/dmesg, afficher le motd, etc) checkfs.sh vérifie si les partitions définies dans /etc/fstab ont besoins d'être vérifiées (fsck) checkroot.sh vérifie si la racine est ok , monte les swap définis dans /etc/fstab, en cas de problème boot en single mode console-screen.sh (S) initialise la console (polices notamment, défini par console-tools) cpid daemon acpi (gestion d'énergie) cpufrequtils (2 3 4 5 -> D see following info) : for cpu freq management check the output of cpufreq-info and cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor If "ondemand", you're good. For laptop: unplug your power cord and check if it gives you "powersave". cron (ON) daemon crond, qui lance des taches de manière périodique cups (D) gestionnaire d'impression cupsys (D) gestionnaire d'impression dbus-1 (2 3 4 5) Important for power management, daemon dbus (http://www.freedesktop.org/Software/dbus) dhcdbd (ON): Interface D-Bus pour le client DHCP ISC discover essaye de détecter tout ton matériel dns-clean efface les fichiers /etc/resolv.conf laissée par ppp evms daemon qui gère le stockage d'une manière avancée exim4 : gestion de mail -> paquets destinstallés fancontrol : (partie du paquet lm-sensors) fam File Alteration Monitor, permet de notifier les programme d'un changement sur les fichiers (genre tu ouvre ton home dans konqueror, dans un console tu efface un fichier dans ton home, konqueror affichera immédiatement la modification, sans besoin de recharger le répertoire), actuellement remplacé par gamin fetchmail mail? récupérer des mails sur des serveurs distants (pop/imap) fuse (S) gdm gestionnaire de connexion graphique (le truc qui vous demande votre login/pass) hal(ON) : gestionnaire des peripheriques (combiné à Udev/Dbus) est un système qui permet d'autodetecter les périphériques) halt (nothing) pour arreter le PC hddtemp (D): used by sensors utils hdparm (S) gestion des DD (réglage des disques dur, genre activer le DMA, mettre en udma5) et état du raid via /proc/mdstat hostname.sh declaration de ton hostname (à partir de /etc/hostname) hotplug lance différents sous-systèmes hotplug (à partir de /etc/hotplug et /etc/hotplug.d) gère tout ce qui est détection du matériel, comme l'insertion d'un matériel, etc), assez complexe) hwclockfirst.sh synchronise l'horloge matérielle avec l'horloge logicielle hwclock.sh ifupdown (S) initialise l'état des interfaces (activées ou non) ifupdown-clean (S) ??? inetd daemon inetd, sert à lancer d'autres services (serveur ftp, http, etc) de manière sporadique initrd-tools.sh s'occupe de l'initrd (libération et récupération de la mémoire utilisée par celui-ci) ivman (ON) : like hal support automount of different media jabber : jackd(D?) : server de son permettant connexions au peripherique audio kbd (S) : ????????? keyboard-(S) : ????????? keymap.sh charge le mappage clavier adéquat killprocs (S) ????????? klogd (D) daemon qui enregistre les messages du noyau laptop-mode (parsing tete de lecture, gestion disque pour economie d'energie, batterie) libdevmapper1.00 gère les fichiers périphériques nécéssaires à libdevmapper lm-sensors(D?) : loadcpufreq (2 3 4 5) ????????? lpd (D): printing service lpnrg( 2 3 4 5-> D) : enhanced lpr/lpd printer spooling system for local or remote printers lvm gestionnaire de stockage avancé makedev crée les fichiers de périphérique dans /dev mdadm monte les arrays raid définies dans /etc/mdadm/mdadm.conf mdadm-raid lance le daemon qui surveille les arrays raid module-init-tools (S) ???????? résoudre les dépendances et charger les modules nécessaires modutils chargement des modules mountover (S) ????????????????? mountall.sh montage des partition (systèmes de fichiers "locaux" ie non réseaux définis dans /etc/fstab) mountnfs.sh monte les système de fichiers nfs et samba figurant dans /etc/fstab mountvirtfs montage fs virtuel (/proc, tmpfs, devpts , /sys, usbfs) networking (S->D) activation des interfaces réseaux définies dans /etc/networking/interfaces et règle quelques autres trucs, genre le forwarding, la protection syn cookies, l'anti-spoofing) nfs-common (2 3 4 5 S-> D?) ???????? ntpdate synchronisation de l'horloge logicielle à l'aide d'un serveur de temps via le protocole ntp nvidia-glx gestion du module propriétaire nvidia saned (D?): scanner et reseau samba daemon samba (partager/voir des fichiers/imprimantes sur un réseau netbios) screen-cleanup efface les "pipes" laissés par le logiciel screen sendsigs (nothing) envoi des signaux KILL pour tuer les processus restants a l'extinction single (1) executé par init quand tu rentre en "single mode" skeleton un exemple de script à mettre ici stop-bootlogd (2-5 : D) stop le daemon bootlogd stop-bootlogd-single (S : D) sudo (2-5-> D) fait le ménage dans les fichiers temporaires de sudo, make sure privileges don't persist across reboots sysklogd lance syslogd, qui sauve les messages du système dans /var/log udev (S) daemon qui crée de manière dynamique et personnalisée des liens dans /dev udev-mtab (S) umountfs (nothing) démonte les swap et tous les systèmes de fichier locaux umountnfs.sh (nothing) démonte tous les système de fichier exceptés la racine urandom (S) sauvegarde/restaure la "graine aléatoire" pour le générateur de nombres aléatoire /dev/urandom, le fichier est /var/lib/urandom/random-seed et est restauré/sauvegardé wicd (2 3 4 5) winbind(D) : utiliser par samba pour se connecter a des machines windows et gerer les droits utilisateurs xfree86-common initiliase le serveur xfree (xorg maintenant) notamment les sockets wpa-ifupd
L'installer, puis ajouter l'option au kernel dans grub : kernel /vmlinuz-2.6.10 ro root=/dev/hda1 init=/sbin/bootchartd Un tarball est generé dans /var/log. en tappant bootchart dasn son home, un png est generé.
La configuration réseau ralentit un peu le démarrage d'Ubuntu. Pour le fixer, éditez votre fichier "/etc/hosts" en tapant la commande: sudo gedit /etc/hosts Vous devriez y voir les lignes suivantes: 127.0.0.1 localhost 127.0.1.1 toto "toto" est le nom de votre machine (votre localhost name) Ajoutez dans la première ligne le nom de votre machine: 127.0.0.1 localhost toto 127.0.1.1 toto Sauvegardez et quittez gedit. Redémarrez votre PC.
le chargement de bcp de polices ralentis le systeme je crois donc si tu veux virer des polices inutiles... style tu fais jamais de traitement de texte... tu peux supprimer des polices alors pour ca tu ouvres synaptic, tu cherches ttf et tu supprimes toutes les polices sauf: ttf-dejavu, ttf-opensymbol, ttf-bitream-vera puis ds un terminal tu tapes : sudo fc-cache -f -v Voilà !
Options -> Memory Cache : 128 Mo Memory per object 32 Java ->disable open office rapide http://forum.ubuntu-fr.org/viewtopic.php?id=130569&p=1