Wenn Bash vorausgesetzt, wenn Ihr System diese Funktion unterstützt, platzieren Sie diese in Ihrer ~/.bashrc
oder ~/.profile
:
ulimit -e 19
Sie können es zunächst als Test von einer Befehlszeile aus testen.
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
Wenn Bash vorausgesetzt, wenn Ihr System diese Funktion unterstützt, platzieren Sie diese in Ihrer ~/.bashrc
oder ~/.profile
:
ulimit -e 19
Sie können es zunächst als Test von einer Befehlszeile aus testen.
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.
Diese Antwort setzt voraus, dass Ihre Shell ist bash
.
Anstatt in ps
oder 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 -l
eine pid, renice
diese pid aus, und setzen Sie dann die Ausführung des Jobs über bg
(for BackGround) oder fg
(ForeGround).
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.