command not found - er existiert aber trotzdem

Post Reply
Message
Author
no_one
Posts: 6
Joined: 25. Jul 2002 17:38

command not found - er existiert aber trotzdem

#1 Post by no_one »

Hi erstmal,
bin mit Linux in dieser Hinsicht noch nicht lange unterwegs.
Aber ich weiß, dass es geht.
Wenn ich traceroute z.B. aufrufe (auch andere Befehle...),
krieg ich nur 'Command not found' zurück.
Mit 'whereis' findet er den Befehl aber.
gebe ich dann den absoluten Pfad an, klappts.
Ich muss doch irgendwie bekannt machen können, dass der Befehl/die Befehle
in dem Ordner /usr/sbin... liegen.

Danke schonmal für euren Rat.

by no one

andre

Re: command not found - er existiert aber trotzdem

#2 Post by andre »

hi,
commandos die unter "/sbin" und "/usr/sbin" liegen, sind fuer user "root" vorgesehen. linux definiert in der "$PATH"-variable die pfade in denen ausfuehrbare dateien gesucht werden.
"echo $PATH" zeigt diese pfade an. wenn root den pfad "/usr/sbin" nicht eingetragen hast kannst du dies in der "/root/.bashrc" (moeglichst weit unten) nachholen:

-> export PATH="$PATH:/usr/sbin"

nach erneutem einloggen sollte der befehl als root funktionieren...
wenn du als user auf diesen befehl zugreifen willst empfehl ich dir das programm "sudo". wenn es installiert ist, traegst du als root mit "visudo"

-> USERNAME ALL=NOPASSWD: /usr/sbin/...

ein. danach brauch der lokale user noch einen eintrag in die "~/.bashrc"

-> alias traceroute='sudo /usr/sbin/...'

nach einem erneutem einloggen des users sollte "traceroute" funktionieren <img src="http://www.pl-forum.de/UltraBoard/Images/Wilk.gif" border="0" align="middle">

gruss,
andre

no_one
Posts: 6
Joined: 25. Jul 2002 17:38

Re: command not found - er existiert aber trotzdem

#3 Post by no_one »

Hm, werde mal schauen, ob ich das hinkriege.
Aber brauche ich wirklich noch ein zusätzliches
Programm dazu? Das sollte aber doch auch anders gehen, oder nicht?
So mit Linux-Hausmitteln.

Aber so weit sag ich mal danke =)

by no one

andre

Re: command not found - er existiert aber trotzdem

#4 Post by andre »

hi,
sudo dient dazu root-programme fuer user freizugeben. du koenntest auch einfach einen symbolischen link (vergleichbar mit verknuepfungen unter windows) erstellen:

cd /usr/bin
ln -s /usr/sbin/traceroute traceroute

bei traceroute mag das noch egal sein, aber spetestens wenn du "reboot" und "halt" fuer alle user freigeben willst, solltest du sudo nutzen...

gruss,
andre

Jochen

Re: command not found - er existiert aber trotzdem

#5 Post by Jochen »

Nun, traceroute (und ping) tragen typischerweise ein SUID-Bit und gehören root, d.h. traceroute ist auch für User ausführbar, solange sie /usr/sbin in ihrem Pfad haben. sudo sollte also wirklich nicht nötig sein. Packe in Deine $HOME/.bash_profile (falls es die nicht gibt, $HOME/.profile) folgende Zeilen ein:

PATH=$PATH:/usr/sbin:/sbin
export PATH

Wenn Du Dich neu anmeldest, sollte er traceroute finden und ausführen können.

Jochen

no_one

Re: command not found - er existiert aber trotzdem

#6 Post by no_one »

Das werd ich heute Nachmittag zu Hause direkt mal ausprobieren.
Dank an Euch =)

cu

by no one

Post Reply