Eigentlich hatte ich tagelang ein Linux-System (mit Ubuntu 12.04.3) ohne Neustart. Ich bin auf einige Fehler gestoßen, zum Beispiel, dass der Schlaf hängen bleibt und dass ein im Netzwerk eingehängtes Dateisystem nicht einmal in der Lage ist, einen Ping-Befehl zu senden.
Wollte überprüfen, ob Linux nach einiger Zeit auch einen Neustart des Computers erfordert, um solche unerwünschten Fehler zu vermeiden, die nicht reproduzierbar sind.
Wie lange können wir den PC maximal warten? Gibt es einige andere Probleme, die auftreten können, wenn ein System für ein Jahr oder länger ohne Neustart läuft?
Antworten:
Als Systemadministrator sehe ich Linux-Server für mehr als 700 bis 800 Tage ohne Neustart, sodass es keine Verfügbarkeitsbeschränkungen gibt. Die aufgetretenen Fehler beziehen sich nicht auf Linux (den Kernel).
Viele Dienste können neu gestartet und die meisten Fehler auf Produktionssystemen behoben werden.
quelle
Es ist technisch nicht erforderlich, den Computer nach einer bestimmten Zeit neu zu starten. Ich habe meine seit Monaten laufen lassen (inkl. Kernel-Modul-Updates) mit einigen Suspensionen (auf RAM und Festplatte) dazwischen.
Es gibt Fälle, in denen
Es kann einige Probleme geben, die mit der Zeit "schlimmer" werden (z. B. Probleme mit Hardwaretreibern, undichte Prozesse), die jedoch als Fehler angesehen werden und häufig durch ein Software-Upgrade behoben oder durch ein erneutes Laden / Neustarten des jeweiligen Subsystems (auch) behoben werden können siehe oben).
quelle
Obwohl ich mir sicher bin, dass es Server mit einer höheren Verfügbarkeit gibt, präsentiere ich Folgendes von einem meiner Server als Beispiel für das, was möglich ist:
Dieser Server wurde kurz nach dem Start des DC installiert und seitdem nicht mehr ausgeschaltet. Bisher hat es glücklich weitergemacht, wofür es ursprünglich gedacht war, und wenn dieser Zweck auf einen anderen Server verlagert wird, werde ich dort etwas anbringen, um die Betriebszeit zu überwachen, und es wird wahrscheinlich so lange am Leben bleiben, bis ich es nicht rechtfertigen kann, es am Leben zu halten länger.
Daher denke ich, dass "Es gibt kein Maximum" mit Sicherheit die richtige Antwort ist.
quelle
Ich weiß nicht, ob sich dies auf die Stabilität des Systems auswirkt, aber die in Ubuntu mit Kernel 3.19-xx angezeigte maximale Betriebszeit beträgt
68,0962597349822
Jahre auf einer 32-Bit-Maschine und292471208677,8627
Jahre auf einer 64-Bit-Maschine.Dies liegt daran, dass die aktuelle Verfügbarkeit des Systems, die vom
sysinfo()
syscall zurückgegeben wird, als__kernel_long_t
Typ zurückgegeben wird , der alslong
in einem 32-Bit-Kernel und alslong long
in einem 64-Bit-Kernel deklariert ist .Ein
long
auf einem 32-Bit-Computer hat einen Maximalwert von2147483647
;Ein
long long
auf einem 64-Bit-Computer hat einen Maximalwert von9223372036854775807
;Mathe machen,
2147483647s
=68,0962597349822
Jahre und9223372036854775807s
=292471208677,8627
Jahre.Sobald dieser Wert die Kapazität seines Typs übersteigt, findet ein arithmetischer Überlauf statt, und er wird auf den kleinsten Wert gesetzt, der von seinem Typ zugelassen wird (in beiden Fällen eine negative Zahl). Dies kann ein Problem für Programme sein, die darauf angewiesen sind.
quelle
Ich war einmal in einer Klasse mit einem Systemadministrator, der behauptete, er habe einen Linux-Server, der über ein Jahrzehnt ohne Neustart lief. Es gibt keinen inhärenten Grund, warum ein System regelmäßig neu gestartet werden muss. Dies ist nur in begrenzten Fällen erforderlich, z. B. bei Kernel-Updates.
FWIW, normalerweise lasse ich meinen Windows-Heimcomputer laufen. Normalerweise läuft es wochenlang einwandfrei, ohne dass ein Neustart erforderlich ist.
quelle
Linux (der Kernel) ist sehr gut darin, Ressourcen freizugeben, wenn Programme beendet werden. GNU / Linux, das gesamte Betriebssystem, kann im Allgemeinen auf unbestimmte Zeit ausgeführt werden. Das Neustarten von User-Space-Programmen nach dem Aktualisieren ist im Allgemeinen eine gute Idee. Oft
glibc
ist ein Neustart des Systems der einfachste Weg, alles mithilfe eines aktualisierten Programms zu erhalten .Auf Systemen mit Treiber-Bugs (normalerweise Grafik-Treiber-Bugs, alles andere ist in der Regel sehr solide) tritt manchmal ein seltsames Verhalten auf, das seltsamer wird, wenn Sie nicht bald neu starten. Wenn in Ihrer
dmesg
Ausgabe ein Kernel-OOPS angezeigt wird, sollten Sie den Computer so schnell wie möglich neu starten und dies melden (oder bei anderen Personen mit ähnlichen Problemen auf ähnlicher Hardware nachsehen, falls es sich um ein bekanntes Problem handelt). Distros liefert nicht die neuesten Entwicklerversionen des Grafikstapels aus, daher ist der Fehler manchmal bereits im Original behoben, und Ihre Grafikkarte ist einfach zu neu für die Treiber der von Ihnen verwendeten Distributionsversion, um stabil zu sein. Suchen Sie in diesem Fall nach einem PPA mit aktualisierten Builds von mesa / drm / xorg. (Ich bin mir nicht sicher, was die beste Wahl ist, um Ubuntu mit einem Grafikstapel auf dem neuesten Stand zu betreiben).Abgesehen von Treibern oder anderen Kernel-Fehlern kann Linux auf unbestimmte Zeit ausgeführt werden, ohne dass ein Neustart erforderlich ist, um die Speicherfragmentierung oder ähnliches zu beheben.
Ich habe eine Linux-Router / Firewall / Mailserver / Shell-Box (P3 450MHz, OCed bis 500MHz), die routinemäßig Betriebszeiten von Hunderten von Tagen sieht. Ich starte nur neu, um die Netzkabel neu anzuordnen oder ein fehlerhaftes Netzteil zu ersetzen. Es ist wahrscheinlich seit 15 Jahren stabil mit der gleichen CPU / RAM / Festplatte. Ich musste noch nie neu starten, "weil es instabil wurde". Es gab immer einen bestimmten Grund, z. B. einen Stromausfall, ein Kernel-Upgrade oder einen Stromausfall, und meine USV-Batterie war fast leer (wodurch das automatische Herunterfahren mit ausgelöst wurde
apcupsd
).Wenn Ihr System seltsam reagiert, suchen Sie
dmesg
nach Problemen. Wenn es sich nur um Ihren Desktop handelt, müssen Sie sich abmelden / anmelden (oder neu starten, wenn Sie nur einige Nicht-Kernel-Paket-Updates installiert haben, müssen Sie dies jedoch nicht tun). Ich habe festgestellt, dass Kubuntu 15.04 nach Paketaktualisierungen leicht auf Probleme stoßen wird. Ich denke, dass dies auf die Inkompatibilität von Binärdateien zwischen aktualisierten und nicht aktualisierten Versionen derselben Bibliothek zurückzuführen ist, die in derselben Binärdatei ausgeführt werden. (Siehe Diskussion zu diesem Fehler ).Um nach Hardwareproblemen zu suchen, muss ich memtest86 + booten. (
aptitude install memtest86+
) Lassen Sie das einen vollen Durchlauf laufen, oder laufen Sie über Nacht. Dies garantiert kein stabiles System, da heutzutage bei CPUs Spannungsabfälle bei Spitzenlasten auftreten können und memtest dies nicht ausschließt. Auch wird Ihre CPU nicht heiß wie bei Prime95.quelle
Meine Maschine wurde erst heute für den 15.04 neu gestartet, nachdem sie 11 Tage lang ohne merkwürdige Fehler gelaufen war, an die ich mich erinnern kann. Wenn Sie viel Arbeit und Entwicklung auf einem System erledigen, kann es manchmal die einzige Option sein, einen Neustart durchzuführen, dies erfolgt jedoch immer nur auf Bedarfsbasis.
quelle
Technisch gibt es keine Grenzen. Sie müssen es nur so einstellen, dass es nicht schläft oder herunterfährt.
quelle
you just have to set it to not sleep or shut down
.Persönlich möchte ich meinen Laptop oder PC nicht tagelang laufen lassen, ohne ihn neu zu starten oder herunterzufahren.
Nur weil die Hauptkomponenten Wärme erzeugen, kann dies den Verschleiß des MB beschleunigen.
(Das ist, wenn Sie nicht die richtige Kühlung und Belüftung haben)
quelle
Nicht Ubuntu-spezifisch, aber ich habe einen 1997er-Jahrgang-Laptop (300 MHz, 288 MB RAM), auf dem eine Debian-basierte Distribution läuft, die eine Betriebszeit von über 60 Tagen hatte, während ein einzelnes Programm (plus Systemmaterial und conky) und ausgeführt wurden Starten und Stoppen anderer Software mit Ausnahme eines Terminals zum wöchentlichen Laden von Updates. Letztendlich stürzte es beim Laden der Updates nach etwa 63 Tagen ab. Im Gegensatz dazu friert mein Kubuntu 14.04-Desktopsystem nach etwa zwei Wochen in der Bildschirmsperre ein. Ich stimme anderen Antworten zu. Es geht mehr darum, welche Software Sie ausführen und wie oft Sie andere Programme starten und stoppen, als um Linux als solches.
quelle
startx
den X-Server neu starten? Oder muss ich einen speziellen Befehl verwenden, um den Dienst neu zu starten? Mir ist das alte Linux-Sprichwort bekannt, dass "Neustarts für Kernel-Upgrades und Hardwareinstallationen vorgesehen sind".