Zu PATH hinzugefügte Ordner können mit sudo nicht gefunden werden

Zu PATH hinzugefügte Ordner können mit sudo nicht gefunden werden

Mögliches Duplikat:
Umgebungsvariablen bei Ausführung mit „sudo“

Ich habe meinem Pfad einen neuen Ordner hinzugefügt, aber wenn ich die Programme (in diesem Ordner) mit „sudo“ ausführe, funktioniert es nicht.

Wenn ich tippe

sudo <command-name>

es gibt zurück:

sudo: <command-name>: command not found

Wie mache ich es für sudo verfügbar?

Antwort1

Das ist seltsam. Jedenfalls denke ich, dass

sudo /FULL_PATH/program_name

wird funktionieren.

Eine weitere gute Idee ist es, einen symbolischen Link dazu im Verzeichnis /sbin/ hinzuzufügen mit

sudo ln -s /FULL_PATH/program_name /sbin

Antwort2

Der Pfad befindet sich in Ihrer Datei ~/.profile, ~/.bashrc oder ~/.bash_profile. Diese Datei ist nur für Ihr Konto bestimmt.

Als Sie Ihren Pfad festgelegt haben, haben Sie wahrscheinlich /home/IhrName/.profile bearbeitet, richtig? Sudo verwendet (wie man vielleicht denken könnte) nicht den Pfad von /root/.profile anstelle von /home/IhrName/, noch verwendet es immer Ihren eigenen Pfad.

Das Problem ist, dass einige Variablen von sudo überschrieben werden. Welche das sind, hängt von Ihrem System ab. Führen Sie als Root Folgendes aus:

sudo -V

Es wird Ihnen sagen, ob Ihr PATH verwendet wird oder nicht. Sie können dann die Option sudo -E verwenden, um die Verwendung des Standard-PATHs zu überschreiben. Siehe die Beschreibung in der Manpage zur Datei /etc/sudoers.

verwandte Informationen