Bill Horne wrote:
> moder8@telecom:~/bin$ ls -lh /home/moder8/bin/entities
> -rwxrwxr-x 1 moder8 telecom 8.8K Jan 27  2012 /home/moder8/bin/entities
> 
> moder8@telecom:~$ strace /home/moder8/bin/entities 
> /var/www/html/archives/back.issues/recent.single.issues/I125
> execve("/home/moder8/bin/entities", ["/home/moder8/bin/entities", 
> "/var/www/html/archives/back.issu"...], [/* 21 vars */]) = -1 ENOENT (No such 
> file or directory)
> write(2, "strace: exec: No such file or di"..., 40strace: exec: No such file 
> or directory
> ) = 40

Have you examined /home/moder8/bin/entities with 'file', strings, and less?

I would guess that it is a shell script with a missing interpreter, but
the error message is not right for that.

Actually, that might be it:

% touch foo
% chmod u+x foo
% echo #\!/bin/bogus > foo
fringe:/tmp% strace ./foo
execve("./foo", ["./foo"], [/* 54 vars */]) = -1 ENOENT (No such file or
directory)
[...]
write(3, "strace: exec: No such file or di"..., 40strace: exec: No such
file or directory
) = 40

It's a misleading error message. The "No such file" is not referring to
./foo, but to the specified interpreter, /bin/bogus, but because the
bang-path magic is embedded in execve(), and it only returns an error
code (it doesn't generate the error message to STDERR), you're left with
a generic error and no object being identified.


I assume the above was on the new server. What happens when you strace
it on the old server?

 -Tom

-- 
Tom Metro
The Perl Shop, Newton, MA, USA
"Predictable On-demand Perl Consulting."
http://www.theperlshop.com/
_______________________________________________
Discuss mailing list
Discuss@blu.org
http://lists.blu.org/mailman/listinfo/discuss

Reply via email to