$ ls
bash: no more processes
Oh oh. Sieht aus wie jemand eine Gabelbombe gemacht. Wo ich früher gearbeitet habe, bedeutete dies so ziemlich, dass der gemeinsam genutzte Server aus- und wieder eingeschaltet werden musste, da selbst die Sysadmins mit root das Problem oft nicht bereinigen konnten. Oft bekamen sie nicht einmal eine Aufforderung.
Ich habe ein paar Tricks gehört (insbesondere, um STOP-Signale anstelle von KILL-Signalen zu senden, da letztere es den verbleibenden Threads ermöglichen würden, die getöteten Threads sofort zu ersetzen), aber ich habe noch nie eine umfassende Anleitung mit dem Titel So, You Have Yourself gesehen eine Gabelbombe?
Lass uns einen machen.
0
und-1
, laut opengroup.org/onlinepubs/009695399/functions/kill.html opengroup.org/onlinepubs/000095399/utilities/kill.htmlIch bin mir nicht sicher, wie Sie überhaupt ein STOP-Signal senden könnten, da für das Laichen
kill
ein verfügbares Prozesshandle erforderlich wäre. Außerdem werden Systeme meiner Erfahrung nach überlastet und unbrauchbar, lange bevor die Prozesse ausgehen.Haben Sie schon einmal darüber nachgedacht, Prozesslimits pro Benutzer durchzusetzen
ulimit
? Das würde Ihre Benutzer daran hindern, Gabelbomben abzufeuern (versehentlich oder nicht).quelle
Einige BSD-Systeme können die letzten fünf Prozesse für root reservieren. Vielleicht hat Ihr System diese Fähigkeit.
quelle