Kann mir jemand sagen, wie der Standardwert nice
(wie von angezeigt top
) eines Benutzers festgelegt wird? Ich habe festgestellt, dass /etc/security/limits.conf der richtige Ort ist, aber wenn ich beides sage:
username_of_a_guy - nice 19
username_of_a_guy soft nice 19
username_of_a_guy hard nice 19
Es funktioniert nicht (solange es sollte, oder?).
Beachten Sie, dass ich seitdem neu gestartet habe.
Vielen Dank sehr viel im Voraus für jede Hilfe. Ich benutze Debian instabil (aktuell).
Kontext:
Bei meiner Arbeit haben wir ein lokales Netzwerk: Jeder hat seinen eigenen Computer und jeder kann ein Konto auf dem Computer eines anderen erstellen, wenn er möchte. Die Faustregel lautet einfach: Wenn Sie an einem anderen Computer arbeiten, können Sie Ihre Prozesse verbessern ( nice 19
).
Ich möchte den Standardwert für einen bestimmten Benutzer ein für alle Mal auf 19 setzen.
Antworten:
Ich glaube, das richtige Format ist:
Dies ist ein Beispiel für die Einstellungen, die ich in der Produktion verwende (offensichtlich bei echten Benutzern / Gruppen).
Die
nice
Einstellung dient dazu, den minimalen Nizza-Wert (dh die maximale Priorität) zu bestimmen, auf den jemand seinen Prozess einstellen kann, nicht seine Standardpriorität.quelle
priority
. Dies ist die Standardpriorität aller Prozesse für diesen Benutzer / diese Gruppe, wenn sie sich anmelden. Sie können diesen Wert nur auf -20 bis 20 einstellen. Der 'PR'-Wert oben ist die tatsächliche Scheduler-Priorität, die von mehreren bestimmt wird Faktoren durch den Scheduler des Kernels.and
odercgroup
) ausprobiert, die in anderen Situationen als meinen besser sein könnten (Notwendigkeit einer kontinuierlichen Überprüfung oder Verwaltung vieler Benutzer - was in meinem Fall etwas zu viel ist).Ich kann bestätigen, dass dies auch auf meinem System nicht funktioniert. Die Dokumente sagen "Kernel 2.6.11 und höher" und ich bin auf Fedora Rawhide mit Kernel 2.6.38-rc6. Ich frage mich, ob es vom Scheduler abhängig ist und nicht mit dem in 2.6.23 eingeführten CFQ ("Completely Fair Scheduler") funktioniert.
Etwas, das jedoch funktionieren wird, ist das Unmögliche, nach dem man wegen seines schrecklichen Namens suchen kann
and
- der automatisch nette Daemon. Siehe http://and.sourceforge.net/ . Dies ist bei Fedora mit erhältlichyum install and
, scheint aber leider nicht in EPEL zu sein. Und es ist auch in Debian :apt-get install and
.Wenn Sie jedoch eine moderne Distribution verwenden, gibt es einen noch besseren Weg. Mit den Tools von libcgroup können Sie eine cgroup auf Kernelebene einrichten, die die CPU-Freigaben begrenzt, und die Prozesse dieses Benutzers automatisch in diese cgroup "klassifizieren". Auf diese Weise können Sie auch E / A priorisieren und die Speichernutzung (einschließlich der Freigabe des Festplatten-Cache) begrenzen.
quelle