mjb Posted August 19, 2008 Report Posted August 19, 2008 "/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
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now