Après la mise à jour vers Ubuntu 16.04. le temps de démarrage est un peu plus long (plus de 10-15 secondes). J'ai regardé la sortie "dmesg" et trouvé ceci:
[ 23.882674] audit: type=1400 audit(1461650474.108:10): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/bin/evince" pid=644 comm="apparmor_parser"
**[ 23.882682]** audit: type=1400 audit(1461650474.108:11): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/bin/evince//sanitized_helper" pid=644 comm="apparmor_parser"
**[ 32.162714]** cgroup: new mount options do not match the existing superblock, will be ignored
[ 32.777477] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 32.777480] Bluetooth: BNEP filters: protocol multicast
J'ai supposé que le nombre à gauche de la sortie "dmesg" est time. Si je perds 9 secondes sur cette étape, que puis-je faire pour améliorer le temps de démarrage?
Systemd
est responsable du processus de démarrage. Vous pouvez l’améliorer en désactivant certains services ou en essayant de corriger votre configuration. Pour vérifier combien de temps les services prennent dans votre processus de démarrage, vous pouvez exécuter:
systemd-analyze blame
Pour une vue graphique détaillée de votre procédure de démarrage, vous pouvez générer une image de tracé:
systemd-analyze plot > bootimage
Maintenant vous pouvez ouvrir bootimage avec par exemple. eog
ou une visionneuse d'image différente et vérifiez le temps pris par les services (et, par exemple, le moment où le système s'arrête lors du démarrage). Il ressemblera à ceci:
Comme nous pouvons le voir, par exemple, virtualbox.service
prend 62 ms , ce qui est très agréable, mais monter mon disque F3 n’est pas si rapide. Je peux envisager de désactiver le montage automatique (c'est un peu un mauvais exemple car systemd propose des services en mode parallèle et que ce service ne ralentit pas le démarrage, rien n'en dépend mais c’est comme ça que ça marche). (Dans votre sortie dmesg
il y a quelque chose qui cloche avec les options de montage. Vous pouvez archiver /etc/fstab
)
Si vous souhaitez désactiver n'importe quel service, il est bon de savoir si quelque chose d'autre n'utilise pas ce service en tant que dépendance. Vous pouvez le vérifier par exemple sur virtualbox.service:
systemctl list-dependencies virtualbox.service --reverse
La sortie montre qu'il n'y a pas de fichiers de service associés. Donc, si je n'en ai pas besoin, je peux l'arrêter et le désactiver sans complications:
Sudo systemctl disable virtualbox.service --now
Si certains services de votre système prennent beaucoup de temps à se charger, lisez ce qu’il fait exactement, puis essayez de réparer les fichiers de configuration associés ou si vous n’avez pas besoin de le désactiver.