Gibt es einen Unterschied zwischen dem Ausführen einer intensiven Aufgabe über sudo mit den folgenden Befehlen ?:
- nice sudo [intensiver Befehl hier]
- sudo nice [intensiver Befehl hier]
Übrigens ist dies für Linux 3.x.
linux
root
process-priority
Nicolas Laplante
quelle
quelle
nice bash -c 'ps -p $$ -o pid,ni,comm'
, undsudo nice bash -c 'ps -p $$ -o pid,ni,comm'
, undnice sudo bash -c 'ps -p $$ -o pid,ni,comm'
. Alle drei sollten Ihnen den netten Wert für die Prozess-ID ($$) der erzeugten Shell anzeigen.Antworten:
Es gibt einen entscheidenden Unterschied.
Wenn Sie die Priorität des Prozesses verringern möchten , spielt die Reihenfolge keine Rolle. Auf der anderen Seite, wenn Sie es erhöhen möchten , müssen Sie
sudo
vor setzennice
.Da Sie den Befehl als normaler Benutzer ausführen (andernfalls würden Sie sich überhaupt nicht um sudo kümmern), können Sie die Priorität Ihres Befehls nur verringern. Aber wenn Sie
sudo
zuerst verwenden, können Sie es erhöhen, wenn Sie möchten.quelle
Wenn Sie ausführen,
nice sudo
wird die Aufforderung zur Eingabe Ihres Kennworts ebenfalls beeinträchtigt, aber da Sie viel mehr Zeit damit verbringen, es einzugeben, spielt es wirklich keine Rolle.Wie ThoriumBR feststellte, ist die Reihenfolge irrelevant, wenn Sie die Priorität verringern, aber wenn Sie die Priorität erhöhen möchten, müssen Sie (da dies als root erfolgen muss) verwenden
sudo nice
.Ansonsten kann ich mir keinen wirklichen Unterschied vorstellen.
quelle
Wenn Sie das Prinzip der geringsten Rechte verwenden, sollten Sie ein Programm mit Root-Rechten nur dann ausführen, wenn es diese benötigt, und sie dann wieder löschen, sobald Sie sie nicht mehr benötigen.
Also ja, es gibt einen Unterschied, wenn es einen Exploit für nice gibt, könnte ein Angreifer Code mit den gleichen Berechtigungen wie das nice-Programm ausführen.
Außerdem setzt sudo Ihre Umgebung zurück, sodass es möglicherweise zu Nebenwirkungen kommt. Versuchen Sie es
Der 'nice'-Befehl, den Sie über sudo ausführen, ist möglicherweise eine andere Binärdatei.
quelle
Späte Antwort:
Wenn Ihr sudo-Zugriff auf bestimmte Programme (
foo
undbar
z. B.) beschränkt ist, haben Sie keine Berechtigung zum Ausführensudo nice foo
, können diese jedoch ausführennice sudo foo
.quelle