web-dev-qa-db-fra.com

Comment accélérer un démarrage très lent sur Ubuntu 16.04?

J'essaie de comprendre ce que je dois faire pour accélérer mon démarrage avec Ubuntu 16.04. J'ai exécuté dmesg et enregistré la sortie ici . Tout semble aller mal après environ 10 secondes.

39
Packwood

Vous pouvez essayer de savoir ce qui prend le plus de temps avec systemd

systemd-analyze blame
42
user536489

L'édition de UUID de/etc/fstab de l'espace de permutation (pour correspondre au résultat de Sudo blkid) a fonctionné à merveille!

Note: Après cela, s'il y a des entrées d'échange dans le fichier /etc/crypttab, vous devez modifier le second paramètre pour qu'il corresponde à votre espace d'échange, soit par UUID, soit par chemin (par exemple, UUID = quelque chose ou/chemin/en /échanger).

Sur mon SSD, le démarrage est passé de 2 minutes à moins de 10 secondes.

Le fait est que je viens de faire une mise à niveau normale du 14.04 au 16.04, sans déconner avec les partitions, lorsque ce problème a commencé. Il est clair que la procédure de mise à niveau pose certains problèmes.

29
M Dub

C'est une solution de contournement, mais cela a considérablement réduit mon temps de démarrage (de 1 min 24 à 16 s).

Sudo vim /etc/systemd/system.conf

Décommentez ces deux paramètres et définissez le délai d'expiration souhaité:

DefaultTimeoutStartSec=10s
DefaultTimeoutStopSec=10s

Remarque: optimisez ces valeurs pour répondre aux besoins de votre matériel ~ 5 - 60s.

Comme indiqué dans ici , ces paramètres configurent les délais par défaut pour le démarrage et l’arrêt des unités, ainsi que le temps de veille par défaut entre les redémarrages automatiques des unités, comme configuré par unité dans TimeoutStartSec=, TimeoutStopSec= et RestartSec= services, voir systemd.service (5) pour plus de détails sur les paramètres par unité).

DefaultTimeoutStartSec= définit le TimeoutSec= value par défaut. DefaultTimeoutStartSec= et DefaultTimeoutStopSec= ont la valeur 90 par défaut. DefaultRestartSec= par défaut à 100ms.


Edit - Plus en détail:

J'ai analysé la séquence de démarrage avec systemd-analyze plot > sequence.svg qui montrait que les services ne pouvaient pas démarrer sur mon système d'exploitation fraîchement mis à niveau. Il y en avait trois - un était un démon mal configuré sendmail puis powerd.service & NetworkManager-wait-online.service . Comme ce n'est pas une bonne idée de désactiver complètement le service NetworkManager, je le laisse simplement expirer au bout de 10 secondes et appliquer cette règle globalement.

9
Mirek

J'ai rencontré un problème similaire de temps de démarrage plus long après la mise à niveau.

Quel était le problème? J'avais supprimé mon espace d'échange, donc mon fichier/etc/fstab et mon nouveau système de fichiers avaient des conflits. Le chargeur de démarrage a attendu près de 1m 30s pour le trouver.

Comment j'ai résolu le problème Exécutez Sudo blkid

Ouvrez votre fichier/etc/fstab et comparez la correspondance de uuid avec les partitions que vous avez. S'il y a incompatibilité, changez-le et redémarrez.

9
Gokul Palwe

Cela pourrait être lié à des problèmes de système de fichiers. Vous pouvez vérifier ce lien pour voir si la réparation de votre système de fichiers améliore le temps de démarrage: https://help.ubuntu.com/community/FilesystemTroubleshooting

1
Chris J Arges

J'ai eu un problème similaire que je viens de résoudre: je lance Ubuntu 16.04 sur un SSD. J'utilise un lecteur flash comme partition d'échange. Le lecteur avait accidentellement été légèrement déplacé et il a fallu plus de 3 minutes pour démarrer. Je l'ai remis correctement et maintenant tout va bien. Si vous avez essayé smartctl ou fsck et que votre système de fichiers est o.k, essayez de supprimer les lecteurs flash (ou d’autres périphériques?) Et voyez comment cela se passe. Bonne chance!

0
joham34

En fonction de votre sortie Pastebin, deux choses me sautent aux yeux:

EXT4-fs (sda5): re-mounted

Vous voudrez peut-être fsck ce volume et jeter un oeil à Smart Data pour ce lecteur.

et

[   31.022220] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   45.720952] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   45.761548] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready

Vous pouvez essayer en désactivant IPV6 sur vos connexions réseau si votre connexion ne le prend pas en charge.

0
Elder Geek

Après l'allusion de user536489:

systemd-analyse blâme

Vérifiez s'il existe un service dont le démarrage est long et définissez un délai d'expiration inférieur:

Sudo vim /lib/systemd/system/networking.service

Remplacez TimeoutStartSec par quelque chose comme 10s. page de manuel États Prend une valeur sans unité en secondes, ou une valeur telle que "5min 20s". Passez "infinity" pour désactiver la logique de délai d'attente.

0
max