1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167
|
.\" Copyright (c) 1993 Michael Haardt (u31b3hs@pool.informatik.rwth-aachen.de),
.\" Fri Apr 2 11:32:09 MET DST 1993
.\" and Andries Brouwer (aeb@cwi.nl), Fri Feb 14 21:47:50 1997.
.\"
.\" This is free documentation; you can redistribute it and/or
.\" modify it under the terms of the GNU General Public License as
.\" published by the Free Software Foundation; either version 2 of
.\" the License, or (at your option) any later version.
.\"
.\" The GNU General Public License's references to "object code"
.\" and "executables" are to be interpreted as the output of any
.\" document formatting or typesetting system, including
.\" intermediate and printed output.
.\"
.\" This manual is distributed in the hope that it will be useful,
.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
.\" GNU General Public License for more details.
.\"
.\" You should have received a copy of the GNU General Public
.\" License along with this manual; if not, write to the Free
.\" Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139,
.\" USA.
.\"
.\" Modified Sun Jul 25 10:45:30 1993 by Rik Faith (faith@cs.unc.edu)
.\" Modified Sun Jul 21 21:25:26 1996 by Andries Brouwer (aeb@cwi.nl)
.\" Modified Mon Oct 21 17:47:19 1996 by Eric S. Raymond (esr@thyrsus.com)
.\" Translated into German by Mike Fengler (mike@krt3.krt-soft.de)
.\"
.TH ENVIRON 5 "27. Dezember 1998" "Linux" "Dateiformate"
.SH BEZEICHNUNG
environ \- Umgebung des Benutzers
.SH "BERSICHT"
.ad l
.nf
.B #include <unistd.h>
.sp
.B extern char **environ;
.fi
.ad b
.SH BESCHREIBUNG
Zu Beginn eines Prozesses stellt \fBexec\fP(2) ein String (Zeichenketten)
Array zur Verfgung. Dieses Array wird `Umgebung' genannt und enthlt
konventionsgem Zeichenketten in der Form von
.RI ` name = value "'. bliche Beispiele sind:"
.TP
.B USER
Der Name des angemeldeten Benutzers (wird von einigen Programmen
aus der BSD - Welt ausgewertet).
.TP
.B LOGNAME
Der Name des angemeldeten Benutzers (wird von einigen Programmen
aus der System-V - Welt ausgewertet).
.TP
.B HOME
Das Anmeldeverzeichnis eines Benutzers, gesetzt von
.BR login (1)
nach Angaben aus
.BR passwd (5).
.TP
.B LANG
Eine Variable, anhand derer versucht wird, nationale Besonderheiten
(Whrung, Datumsformat...) zu verarbeiten, wenn diese Steuerung
nicht durch
.B LC_ALL
erfolgt oder durch spezifischere Variablen.
.TP
.B PATH
Die Reihenfolge von Verzeichnisnamen, in denen
.BR sh (1)
und viele weitere Programme nach Dateien suchen, deren Pfadname
unvollstndig ist. Die einzelnen Namen werden durch
.RB ` : '
getrennt. (Gleichermaen benutzen einige Shells
.BR CDPATH ,
um das Ziel eines
.B cd
- Kommandos zufinden,
.BR man (1)
sucht in
.B MANPATH
nach Handbuchseiten, usw.)
.TP
.B PWD
Das aktuelle Arbeitsverzeichnis. Wird von einigen Shells gesetzt.
.TP
.B SHELL
Der Dateiname der Login - Shell des Benutzers.
.TP
.B TERM
Der Terminaltyp, fr den Ausgaben aufbereitet werden.
.PP
Der Umgebung knnen weitere Namen hinzugefgt werden. Dazu benutzt
man fr die
.BR sh (1)
das Kommando
.B export
und `Name=Inhalt', fr die
.BR csh (1)
gibt es das
.B setenv
- Kommando. Argumente knnen auch beim Aufruf von
.BR exec (2)
an die Umgebung weitergegeben werden. C - Programme knnen ihre
Umgebung mit den Funktionen
.BR getenv (),
.BR putenv (),
.BR setenv ()
und
.BR unsetenv ()
beeinflussen.
Bitte beachten Sie, da das Vehalten vieler Programme und
Bibliotheks - Routinen vom Vorhandensein oder dem Inhalt bestimmter
Umgebunsvariablen beeinflut wird. Eine Zufallsauswahl:
.LP
Die Variablen LANG, LANGUAGE, NLSPATH, LOCPATH,
LC_ALL, LC_MESSAGES etc. beeinflussen die Verarbeitung
landesspezifischer Daten.
.LP
TMPDIR liefert die Pfadangabe, die
.BR tmpnam ()
beim Anlegen von Dateien benutzt,
.BR sort (1)
benutzt es als bergangsverzeichnis, usw.
.LP
LD_LIBRARY_PATH, LD_PRELOAD und andere LD_* Variablen beeinflussen
das Verhalten der dynamischen Loader / Linker.
.LP
POSIXLY_CORRECT veranlat gewisse Programme und Bibliotheks -
Routinen, sich an die Vorgaben von POSIX zu halten.
.LP
Das Verhalten von
.BR malloc ()
wird von MALLOC_* Variablen gesteuert.
.LP
Die Variable HOSTALIASES enthlt den Namen der Datei, in der die
Alias - Namen fr
.BR gethostbyname ()
stehen.
.LP
TZ und TZDIR geben Zeitzonen - Informationen.
.LP
TERMCAP informiert darber, wie bestimmte Terminals angesteuert werden
mssen (oder enthlt den Namen eine Datei, die diese Informationen
bereitstellt).
.LP
Usw. usw.
Es ist offensichtlich, da es hier ein Sicherheitsproblem gibt.
Schon manches System - Kommando hat den Pfad der Tugend verlassen,
weil ein Benutzer unbliche Werte fr IFS oder LD_LIBRARY_PATH
angegeben hat.
.SH "SIEHE AUCH"
.BR login (1),
.BR sh (1),
.BR bash (1),
.BR csh (1),
.BR tcsh (1),
.BR execve (2),
.BR exec (3),
.BR getenv (3),
.BR putenv (3),
.BR setenv (3),
.BR unsetenv (3).
.
|