Wie kann man unter Ubuntu 16.04 wirklich langsames Booten beschleunigen?


39

Ich versuche zu verstehen, was ich tun muss, um meinen Start mit Ubuntu 16.04 zu beschleunigen. Ich habe dmesg ausgeführt und die Ausgabe hier gespeichert . Nach etwa 10 Sekunden scheint alles schief zu gehen.


Wenn Sie sich Ihr dmesg ansehen, finden Sie möglicherweise einen Eintrag wie "Neue Mount-Optionen stimmen nicht mit dem vorhandenen Superblock überein". Wenn ja, Google für diesen String und es wird Sie zu einem Linux-Fehler führen, der noch nie behoben wurde
NickT

Ich glaube nicht, dass ich diesen Fehler oder ähnliches sehe.
Packwood

Warum fühlen Sie sich nach 10 Sekunden schlecht? Welche Botschaft ist Ihrer Meinung nach besonders besorgniserregend?
Ciro Santilli 事件

Antworten:


44

Sie können versuchen herauszufinden, was mit systemd am meisten Zeit in Anspruch nimmt

systemd-analyze blame

31
Ja na und danach Muss ich einige Dienste am Laufen halten?
Mohammed Amin Bourkadi

29

Das Bearbeiten der UUID von / etc / fstab für den Swap-Bereich (entsprechend der Ausgabe von sudo blkid) hat wie ein Zauber funktioniert!

Hinweis : Wenn sich danach Swap-Einträge in der /etc/crypttabDatei befinden, sollten Sie den zweiten Parameter so ändern, dass er mit Ihrem Swap-Bereich übereinstimmt, entweder über die UUID oder über den Pfad (dh UUID = etwas oder / path / to / swap).

Auf meiner SSD ging der Bootvorgang von 2 Minuten auf weniger als 10 Sekunden zurück.

Die Sache ist, ich habe gerade ein normales Upgrade von 14.04 auf 16.04 durchgeführt, ohne mit Partitionen herumzuspielen, als dieses Problem begann. Offensichtlich gibt es einige Probleme mit dem Upgrade-Verfahren.


Vielen Dank, das hat mir sehr geholfen: Zu Testzwecken hatte ich einen Swap auf einen Wechseldatenträger gelegt, kein Bootproblem, wenn die Festplatte am 14.04 nicht vorhanden war, am 16.04 dauerte das Booten 1 oder 2 Minuten länger. Es scheint, dass Kernel 3 schneller war als Kernel 4, als der Swap nicht gegründet wurde.
Emmanuel

Vielen Dank. Du hast mir viel Zeit gespart. Ich habe auch das System von 14.04 aufgerüstet, sodass dieses Problem aufgetreten ist.
PaladiN

Danke, ich hatte das gleiche Problem mit der falschen Swap-UUID. Nachdem ich sie auf blkid geändert hatte, dauerte der Startvorgang lange, von etwa 60 Sekunden auf nur 5 Sekunden
Brandon Søren Culley,

2
Weitere Informationen finden Sie unter askubuntu.com/questions/38533/… answer. Es reduzierte meine
Dmitry

Ja, aktualisieren Sie auf 17.10, aber mein Swap-UUID-Match mit dem Ergebnis von "blkid"
Vasil Valchev

10

Ich habe nach dem Upgrade ein ähnliches Problem mit einer längeren Startzeit.

Was war das Problem? Ich hatte meinen Auslagerungsbereich gelöscht, sodass in meiner / etc / fstab-Datei und meinem neuen Dateisystem Konflikte auftraten. Der Bootloader wartete fast 1:30 Minuten, bis er es fand.

Wie ich das Problem gelöst habe Führen Sie sudo blkid aus

Öffnen Sie die Datei / etc / fstab und vergleichen Sie die Übereinstimmung der UUID mit den vorhandenen Partitionen. Sollte dies nicht der Fall sein, ändern Sie dies und starten Sie den Computer neu.


Die dmesgAusgabe in der Frage zeigt, dass OP ein anderes Problem hat.
Byte Commander

9

Es ist eine Problemumgehungslösung, aber dies hat meine Startzeit erheblich verkürzt (von 1 Minute 24 Sekunden auf 16 Sekunden).

sudo vim /etc/systemd/system.conf

Kommentieren Sie diese beiden Parameter aus und stellen Sie das gewünschte Zeitlimit ein:

DefaultTimeoutStartSec=10s
DefaultTimeoutStopSec=10s

Hinweis: Bitte optimieren Sie diese Werte, um sie Ihren Hardwarebedürfnissen anzupassen ~ 5 - 60s.

Wie hier erläutert , konfigurieren diese Parameter die Standard-Zeitüberschreitungen für das Starten und Stoppen von Einheiten sowie die Standard- Ruhezeit zwischen automatischen Neustarts von Einheiten, wie pro Einheit in konfiguriert TimeoutStartSec=, TimeoutStopSec=und RestartSec=(für Dienste siehe systemd.service (5) für Angaben zu den Einstellungen pro Einheit).

Legt für Nicht-Service-Einheiten DefaultTimeoutStartSec=die Standardeinstellung fest TimeoutSec= value. DefaultTimeoutStartSec=und DefaultTimeoutStopSec=standardmäßig auf 90s. DefaultRestartSec=Standardeinstellung ist 100ms.


Bearbeiten - Ausführlicher:

Ich analysierte die Startsequenz mit dem Ergebnis, systemd-analyze plot > sequence.svgdass die Dienste auf meinem frisch aktualisierten Betriebssystem nicht gestartet werden konnten. Es gab drei - einer war ein falsch konfigurierter sendmail- Daemon, dann powerd.service & NetworkManager-wait-online.service . Da es keine gute Idee ist, den NetworkManager-Dienst vollständig zu deaktivieren, habe ich das Timeout nach 10 Sekunden eingestellt und diese Regel global angewendet.


2
Könnten Sie erläutern, wie diese Lösung Ihre Startzeit um 68 Sekunden verkürzt hat?
Elder Geek

Keine Probs, viel Spaß!
Mirek

Das funktioniert bei mir nicht, da meine Startzeit nach dem Anwenden der Änderungen von 52 auf 57 Sekunden gesunken ist.
Woeitg

1
10s ist zu niedrig. Es kann den Start in den Wiederherstellungsmodus versetzen. Ich benutze 30s
Anwar

10s brachen meinen Boot am 18.04. Repariert jetzt Ubuntu im Wiederherstellungsmodus.
Pasupathi

1

Dies könnte mit Problemen mit dem Dateisystem zusammenhängen. Sie können diesen Link überprüfen, um festzustellen, ob das Reparieren Ihres Dateisystems die Startzeit verkürzt: https://help.ubuntu.com/community/FilesystemTroubleshoot


Hmm. Jetzt scheint es [länger zu sein!] ( pastebin.com/a5g4wHvA ) Sieht so aus, als würde es nach ungefähr 30 Sekunden schief gehen. "eth0: Link ist nicht bereit" "nf_conntrack: Automatische Helferzuweisung ist veraltet und wird bald entfernt. Verwenden Sie stattdessen das CT-Ziel iptables, um Helfer anzuhängen"
Packwood,

0

Ich hatte ein ähnliches Problem, das ich gerade gelöst habe: Ich habe Ubuntu 16.04 auf einer SSD ausgeführt. Ich benutze ein Flash-Laufwerk als Swap-Partition. Das Laufwerk wurde versehentlich leicht bewegt und das Booten dauerte mehr als 3 Minuten. Ich habe es richtig zurückgesetzt und jetzt ist alles in Ordnung. Falls Sie es mit smartctl oder fsck versucht haben und Ihr Dateisystem in Ordnung ist, versuchen Sie, Flash-Laufwerke (oder andere Peripheriegeräte?) Zu entfernen und zu sehen, wie es funktioniert. Viel Glück!


0

Basierend auf Ihrer Pastebin-Ausgabe fallen mir ein paar Dinge auf:

EXT4-fs (sda5): re-mounted

Möglicherweise möchten Sie dieses Volume überprüfen und sich Smart Data für dieses Laufwerk ansehen .

und

[   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

Sie können versuchen, IPV6 für Ihre Netzwerkverbindungen zu deaktivieren, wenn Ihre Verbindung dies nicht unterstützt.


0

Folgender Hinweis von user536489:

systemd-analyse schuld

Überprüfen Sie, ob es einen Dienst gibt, dessen Start lange dauert, und stellen Sie ein niedrigeres Zeitlimit ein:

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

Ändern Sie TimeoutStartSecin etwas wie 10s. In der Manpage heißt es: Nimmt einen Wert ohne Einheit in Sekunden oder einen Zeitspannenwert wie "5min 20s". Übergeben Sie "unendlich", um die Timeout-Logik zu deaktivieren.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.