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

Warum unterscheiden sich Pfadvariablen beim Ausführen über Sudo und Su?

Auf meiner Fedora-VM habe ich beim Ausführen mit meinem Benutzerkonto /usr/local/bin auf meinem Weg:

[[email protected] ~]$ env | grep PATH
 PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/justin/bin

Und ebenso beim Ausführen von su :

[[email protected] ~]$ su -
Password: 
[[email protected] justin]# env | grep PATH
PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/justin/bin

Allerdings beim Ausführen über sudo , dieses Verzeichnis befindet sich nicht im Pfad:

[[email protected] justin]# exit
[[email protected] ~]$ sudo bash
[[email protected] ~]# env | grep PATH
PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/sbin:/bin:/usr/sbin:/usr/bin

Warum sollte der Pfad anders sein, wenn er über sudo ausgeführt wird ?

Akzeptierte Antwort:

Sehen Sie sich /etc/sudoers an . Die Standarddatei in Fedora (sowie in RHEL und auch Ubuntu und ähnlichem) enthält diese Zeile:

Defaults    secure_path = /sbin:/bin:/usr/sbin:/usr/bin

Dadurch wird sichergestellt, dass Ihr Pfad sauber ist, wenn Binärdateien unter sudo ausgeführt werden. Dies trägt zum Schutz vor einigen der in dieser Frage genannten Bedenken bei. Es ist auch praktisch, wenn Sie /sbin nicht haben und /usr/sbin auf deinem eigenen Weg.


Linux
  1. Wann und warum sollte ich Apt-get Update verwenden?

  2. Pkgproblemresolver-Fehler beim Ausführen des Paket-Managers und Aktualisieren von 12.04?

  3. Benutzerumgebungsvariablen Mit „su“ und „sudo“ unter Linux

  4. Was ist der Unterschied zwischen root und sudo?

  5. Warum habe ich keine Syntaxhervorhebung, wenn ich sudo vi <Dateiname> drücke?

Wann ist Dd zum Kopieren von Daten geeignet? (oder wann sind Read() und Write() partiell)?

Linux – Warum sind wahr und falsch so groß?

Warum sind einige Emoji B&W und andere zu groß?

Wann wird ein Signal behandelt und warum frieren einige Informationen ein?

Warum sind wahr und falsch so groß?

IP-Forwarding =Wann und warum ist dies erforderlich?