Führen Sie IMMER Befehle mit niedriger Priorität unter Unix aus.

2148
laramichaels

Ich frage nicht, wie man einen Befehl unter UNIX anspricht .

Was passiert, ist, dass ich auf einer bestimmten Maschine, in die ich mich häufig einlogge, nur lang laufende Prozesse mit niedriger Priorität ausführen darf (nice 19). Gibt es eine Möglichkeit für alle meine Befehle auf dieser Maschine so zu laufen, als ob ich sie "geklickt" hätte?

Ich vergesse zwangsläufig, den Befehl mit "nice 19" vorzustellen, wenn ich ihn starte. Dann muss ich in ps / top herumgehen, um die PID meines Ressourcen-Hogging-Prozesses zu finden und ihn dann neu zu erstellen. Zu viel Ärger, und ich riskiere, den Sysadmin zu ärgern. Gibt es eine Möglichkeit, dies standardmäßig zu tun?

Danke vielmals! ~ l

3
Es klingt wie eine sysadmin-artige Frage, ob ein Betriebssystem verwendet werden sollte, anstatt zu programmieren. Es ist möglicherweise besser für superuser.com geeignet. JAL vor 14 Jahren 2

4 Antworten auf die Frage

3
Dennis Williamson

Wenn Bash vorausgesetzt, wenn Ihr System diese Funktion unterstützt, platzieren Sie diese in Ihrer ~/.bashrcoder ~/.profile:

ulimit -e 19 

Sie können es zunächst als Test von einer Befehlszeile aus testen.

2
JAL

Sie können Ihren sysadmin bitten, die Einstellung von limits.conf zu überprüfen, eine Konfigurationsdatei, die Teil von PAM ist und sich (auf meinem Ubuntu-System) in / etc / security befindet.

Eine Linie wie

@users hard priority 19 

Legt die Standardeinstellung für Prozesse fest, die von Benutzerkonten gestartet werden.

0
Phil Miller

Diese Antwort setzt voraus, dass Ihre Shell ist bash.

Anstatt in psoder herumzuspielen top, halten Sie einfach den oder die Prozesse mit Ctrl-z an, wenn sie nicht auf diese Weise gestartet wurden (via &), und führen Sie dann jobs -leine pid, renicediese pid aus, und setzen Sie dann die Ausführung des Jobs über bg(for BackGround) oder fg(ForeGround).

0
Janne Pikkarainen

Hast du verynice probiert ? Es ist ein bisschen alt, scheint aber immer noch ein Programm zu sein, das für Ihre Bedürfnisse geeignet sein könnte.