GNU/Linux >> LINUX-Kenntnisse >  >> Linux

schönes sudo oder sudo nice?

Lösung 1:

Es gibt einen Unterschied, einen entscheidenden.

Wenn Sie verringern möchten Priorität des Prozesses, die Reihenfolge spielt keine Rolle. Andererseits, wenn Sie erhöhen möchten Sie müssen sudo eingeben vor nice .

Da Sie den Befehl als normaler Benutzer ausführen (sonst würden Sie sich überhaupt nicht um sudo kümmern), können Sie die Priorität Ihres Befehls nur verringern. Aber wenn Sie sudo verwenden Zuerst können Sie es erhöhen, wenn Sie möchten.

Lösung 2:

Wenn Sie nice sudo ausführen dann wird auch die Eingabeaufforderung für Ihr Passwort nett sein, aber da Sie viel mehr Zeit damit verbringen werden, es einzugeben, spielt es wirklich keine Rolle.

Wie ThoriumBR angemerkt hat, 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) sudo nice verwenden .

Ansonsten kann ich mir keinen wirklichen Unterschied vorstellen.

Lösung 3:

Unter Verwendung des 'Prinzips der geringsten Rechte' sollten Sie ein Programm nur dann mit Root-Rechten 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 Rechten wie das nice-Programm ausführen.

Außerdem setzt sudo Ihre Umgebung zurück, daher kann es Nebenwirkungen haben, versuchen Sie es

$ echo 'echo $PATH' | sh
/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/home/jens/.local/bin:/home/jens/bin:/home/jens/.local/bin
$ echo 'echo $PATH' | sudo sh
[sudo] password for jens: 
/sbin:/bin:/usr/sbin:/usr/bin

Der „nette“ Befehl, den Sie über sudo ausführen, könnte also tatsächlich eine andere Binärdatei sein.

$ which ash
~/.local/bin/ash
$ sudo which ash
[sudo] password for jens: 
which: no ash in (/sbin:/bin:/usr/sbin:/usr/bin)

Lösung 4:

Späte Antwort:

Wenn Ihr sudo-Zugriff auf bestimmte Programme beschränkt ist (foo und bar , zum Beispiel), dann haben Sie keine Berechtigung, sudo nice foo auszuführen , darf aber nice sudo foo ausführen .


Linux
  1. Wie man `alias Sudo !!`?

  2. Winterschlaf am 18.04?

  3. sudo:Befehl nicht gefunden

  4. Installieren Sie Qt unter Ubuntu

  5. npm-Update brach npm

Sudo-Befehl unter Linux

Cortex-Installationsanleitung

Starten Sie Nginx in Ubuntu neu

Wie aktualisiere ich R unter Linux?

sudo -k vs. sudo -K

su - Benutzer Vs sudo su - Benutzer