Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
-
ding280
- Beiträge: 324
- Registriert: 15.04.2005 18:31:18
Beitrag
von ding280 » 06.01.2006 22:04:21
Hallo,
ich habe sun-j2se5.0 von debian-unofficial installiert und habe das Installationsverzeichnis in die /etc/profile aufgenommen. Ein java -version bringt bei einem "normalen" user eine richtige ausgabe, bei root jedoch "command not found". Die PATH-Zeilen in der /etc/profile:
Code: Alles auswählen
if [ "`id -u`" -eq 0 ]; then
PATH="/usr/lib/sun-j2se5.0-jdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11"
else
PATH="/usr/lib/sun-j2se5.0-jdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11:/usr/games"
fi
Hoffe, es weiß jemand Rat.
Gruß Tom
-
gms
- Beiträge: 7798
- Registriert: 26.11.2004 20:08:38
- Lizenz eigener Beiträge: MIT Lizenz
Beitrag
von gms » 06.01.2006 22:34:59
vielleicht wird die PATH Environmentvariable für root nachher wieder überschrieben.
z.B. in /root/.profile, /root/.bash_profile, /root/.bashrc
was ergibt denn "echo $PATH" ausgeführt als root ?
Gruß
gms
-
ding280
- Beiträge: 324
- Registriert: 15.04.2005 18:31:18
Beitrag
von ding280 » 06.01.2006 22:36:53
Mir ist aufgefallen, mit login-shell funktioniert es, mit su aber nicht. Keine Ahnung, woran das liegt.
Code: Alles auswählen
root@Laptop:~# java -version
bash: java: command not found
root@Laptop:~# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11
root@Laptop:~# bash -l
root@Laptop:~# java -version
java version "1.5.0_06"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_06-b05)
Java HotSpot(TM) Client VM (build 1.5.0_06-b05, mixed mode)
root@Laptop:~# echo $PATH
/usr/lib/sun-j2se5.0-jdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11
-
gms
- Beiträge: 7798
- Registriert: 26.11.2004 20:08:38
- Lizenz eigener Beiträge: MIT Lizenz
Beitrag
von gms » 06.01.2006 23:44:13
kannst entwerder "su -" verwenden, oder du beachtest folgendes:
man su hat geschrieben:
Unless the -m or -p options are used, the current environment is passed
to the new shell with alterations. The value of $PATH is reset to
/sbin:/bin:/usr/sbin:/usr/bin for the super user. This may be changed
with the ENV_PATH and ENV_SUPATH definitions in /etc/login.defs.
Gruß
gms
-
ding280
- Beiträge: 324
- Registriert: 15.04.2005 18:31:18
Beitrag
von ding280 » 07.01.2006 21:13:34
Danke, da wär ich ja nie draufgekommen. Dann verwende ich jetzt wohl immer ein "su -", oder leg mir einfach ein alias an