Superuser

Autor Thema: Wo kommt eigentlich $PATH her?  (Gelesen 2526 mal)

Offline signal_15

  • Sobl Master
  • ****
  • Beiträge: 426
    • Rechenzentrum Amper
Wo kommt eigentlich $PATH her?
« am: 30. Januar 2007, 17:09:06 »
Hi,

mal ne dumme frage: wenn ich nicht via .profile oder .bashrc einen suchpfad setze, wo kommt er dann her? nach einem login und freundlichem 'set | grep -i path' bekomme ich ein 'PATH=/usr/bin:'.
in der datei /etc/default/login ist die zeile bezueglich suchpfad aber auskommentiert.

ct,

sonnenblen.de - Das unabhängige Sun User Forum

Wo kommt eigentlich $PATH her?
« am: 30. Januar 2007, 17:09:06 »

pressy

  • Gast
Re: Wo kommt eigentlich $PATH her?
« Antwort #1 am: 30. Januar 2007, 17:23:24 »
beim login wird die datei /etc/profile vor deinem .profile oder .bashrc für jeden user geladen. (bei der csh wärs die /etc/.login) dort wird erstmals die $PATH exportiert. als user bekommst du von "nur" /usr/bin
im /etc/default/login könnte man hierzu zu /usr/bin weitere verzeichnisse hinzufügen, welche im $PATH enthalten sein sollen. allerdings würde ich empfehlen erweiterungen durch /etc/profile einzupflegen.... mir persönlich gefällt es im .profile noch am besten, aber bei mehreren usern wird das mühsam...

gP
« Letzte Änderung: 30. Januar 2007, 17:28:56 von pressy »

Offline signal_15

  • Sobl Master
  • ****
  • Beiträge: 426
    • Rechenzentrum Amper
Re: Wo kommt eigentlich $PATH her?
« Antwort #2 am: 31. Januar 2007, 08:59:47 »
ueber die /etc/profile bin ich auch schon gestolpert. aber wie du schon sagst, da wird die variable nur exportiert. wo kommt aber die anweisung 'PATH=/usr/bin:' her?

ct,

Offline Drusus

  • Sobl Master
  • ****
  • Beiträge: 424
  • Intentionally left blank
Re: Wo kommt eigentlich $PATH her?
« Antwort #3 am: 31. Januar 2007, 14:24:57 »
Moin,

wenn der $PATH nicht per .profile oder /etc/profile gesetzt wird, so werden die defaults aus /etc/default/login genutzt. Dort steht der $PATH auskommentiert drin aber dieses zeigt lediglich den Default an, der in dem /usr/bin/login Programm hardcoded enthalten ist. Wenn nichts anderes in der /etc/default/login vorgegenben wird, so setzt /usr/bin/login den $PATH selber.

Siehe dazu z.B. Zeile 307 im Source-Code vom login Programm: http://cvs.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/cmd/login/login.c
Dort findest du ds #define fuer den default Path (DEF_PATH).

Tschau,
  Drusus.

Offline signal_15

  • Sobl Master
  • ****
  • Beiträge: 426
    • Rechenzentrum Amper
Re: Wo kommt eigentlich $PATH her?
« Antwort #4 am: 31. Januar 2007, 14:47:53 »
super erklaert. bin voll befriedigt.-) danke.

ct,