Marian Hettwer <MH(at)kernel32.de> wrote:
> ich habe hier grade ein Linux System gefunden, was sich selbstständig
> ins Nirvana geschossen hat.
> Nachzulesen (und zu lachen) hier:
> http://crivens.unixoid.de/~rabauke/death-of-a-linuxbox.txt
>
> Mir stellt sich nun die Frage, wie würde sich ein FreeBSD (5.x, 6.x)
> verhalten? Ich habe in den letzten 5 Jahren FreeBSD Benutzung so ein
> sinnloses verhalten noch nicht gesehen.
Wenn kein Speicher (d.h. RAM + Swap) mehr verfügbar ist, um
eine Anforderung des VM-Systems zu erfüllen, beginnt auch
FreeBSD, Prozesse zu killen. Das ist natürlich doof, und
es gibt Leute, die der Meinung sind, daß es in so einem
Fall sinnvoller wäre, eine Panic und/oder einen Reboot aus-
zulösen. Aber eine richtig gute Lösung für so eine Situa-
tion gibt es leider nicht.
Die Auswahlstrategie, welche Prozesse gekillt werden, hat
sich im Laufe der Zeit mehrfach leicht geändert -- wie es
aktuell gehandhabt wird, weiß ich nicht, aber es war lange
Zeit so, daß zuerst die Prozesse mit dem größten Speicher-
bedarf gekillt wurden. Das erwischt dann halt meistens
fette Teile wie Mozilla, Gimp oder den X-Server selbst.
Aber jedenfalls nicht init(8), wie in dem Linux-Beispiel.
Das wäre nun wirklich ziemlich bekloppt. :-)
Als Admin sollte man natürlich dafür sorgen, daß so eine
Situation gar nicht erst entsteht. Dazu gehört:
1. Ausreichend Swap-Space einrichten. Dies wird leider
häufig unterschätzt, oder mit fadenscheinigen Begrün-
dungen abgetan. (»Die Kiste hat doch genug RAM. Die
soll gar nicht swappen.«) So eine Einstellung zeugt
von Unkenntnis darüber, was Swappen bzw. Pagen über-
haupt ist.
2. Prozeßlimits einrichten (datasize, vmemoryuse usw.),
insbesondere für solche User oder Prozesse, die dazu
neigen, viel zu verbrauchen.
3. Eine Überwachung einrichten, die eine Alarmierung her-
beiführt, wenn der freie Swap unter eine gewisse Grenze
sinkt.
Gruß
Olli
-- Oliver Fromme, secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing Dienstleistungen mit Schwerpunkt FreeBSD: http://www.secnetix.de/bsd Any opinions expressed in this message may be personal to the author and may not necessarily reflect the opinions of secnetix in any way. "I made up the term 'object-oriented', and I can tell you I didn't have C++ in mind." -- Alan Kay, OOPSLA '97 To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org with "unsubscribe de-bsd-questions" in the body of the messageReceived on Fri 18 Nov 2005 - 18:13:55 CET