Jonathan Berry wrote:
On Mon, 31 Jan 2005 06:07:02 +0400, Steve Sykes <ssykes@xxxxxxxxxxxxxxx> wrote:
[reorder]
On Mon, 2005-01-31 at 06:35, Krzysztof Kujawski wrote:
I am logged as `su' and I can't detect SCSI host AHA1542.
After command `modprobe aha1542' I got `command not found'.
When I am logged as `root' it works.
Chris
You need to use the path, which is '/sbin/modprobe aha1542'.
Steve
You have gotten correct responses, but just to explain things fully:
The "su" command does not change the path environment variable. This
variable tell the shell where to look for a particular command (ie
program) if no path is given for the command. For normal users, this
usually includes directories such as /usr/bin/, /usr/local/bin/, etc
(run "echo $PATH" to see them all). Commands usually only allowed by
root are stored in /sbin/ or /usr/sbin/. modprobe for one is in
/sbin/ as indicated by Steve. So when you use the "su" command, the
system does not update the path to include /sbin/, so it won't look
there for modprobe and needs the full path to it to run. You can also
use "su -" which will update the path to include /sbin/. Thus, you
don't need to have the /sbin/ in your modprobe command, just like you
were logged in as root.
Jonathan
Jonathan, thanks for the explanation of the difference between su and su -.