Jump to content

Recommended Posts

Posted

"/bin/ls cannot access *" isn't referring to "/bin/ls" not being accessible, it is the "install" app trying to execute "/bin/ls *" and the "*" is not expanding as it would on the shell.

i.e. when you type "ls *" from a shell (or run "ls *" from a shell script), the "*" is expanded by the shell to all non-hidden (i.e. not starting with a ".") files. since it appears "install" is an executable, it is probably doing a 'system("/bin/ls *");' in the C code, which would not be expanded, so "ls" is literally looking for a file named "*", which it can't find. so, because it's presumably being called to do a check of the current directory's contents, but is erroring out, the "install" app is just giving the error you're seeing based on the call to "ls" which is failing for it.

if you run "strace /tmp/install >install.out 2>&1" (without the quotes) it will give you the gory details of exactly what that app is doing, down to the kernel level system calls, in a file called "install.out" in the current directory.

mjb

  • Replies 50
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.