Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

/usr/bin/runexec: Permission denied #232

Open
ffrohn opened this issue Jan 18, 2019 · 3 comments
Open

/usr/bin/runexec: Permission denied #232

ffrohn opened this issue Jan 18, 2019 · 3 comments

Comments

@ffrohn
Copy link

ffrohn commented Jan 18, 2019

Currently, all my jobs fail with status run script error, apparently due to permission problems:

01/18/19 02:10:05 AM CST: Running runexec.
runexec --no-container --memlimit 128874000000 --timelimit 1200 --walltimelimit 300  --cores 0-3 --output /export/starexec/sandbox/output/stdout.txt /export/starexec/sandbox/solver/bin/starexec_run_fake /export/starexec/sandbox/benchmark/theBenchmark.koat /export/starexec/sandbox/output/output_files  
/var/tmp/sclWY7qzy: line 8: /usr/bin/runexec: Permission denied

This even happens for a trivial solver that just echos a string. I'm using the setting profile Termination. Here's an example:

https://www.starexec.org/starexec/secure/details/pair.jsp?id=412403391

@jwaldmann
Copy link

jwaldmann commented Feb 14, 2019

I am seeing the very same problem. Any ideas?

What is the literal meaning of /usr/bin/runexec: Permission denied ?
a) the file /usr/bin/runexec cannot be run (by the OS)
b) runexec is running, but it fails to start my shell script? which is supposed to start my prover?

I am guessing that runexec is (or should be) this file https://github.com/sosy-lab/benchexec/blob/master/bin/runexec , which has no meaningful line 8 (mentioned in the error message). So it must be a)?

In a second experiment, I picked the TPTP profile. There it's different, but I still don't see my job's output:

02/14/19 08:38:19 AM CST: Running runsolver.
  /export/starexec/sandbox/solver/bin/runsolver   --cores 0-3 -C 300 -W 600  -M 131072  -w /export/starexec/sandbox/output/watcher.out -v /export/starexec/sandbox/output/var.out -o /export/starexec/sandbox/output/stdout.txt /export/starexec/sandbox/solver/bin/starexec_run_std.sh /export/starexec/sandbox/benchmark/theBenchmark.xml
02/14/19 08:38:19 AM CST: User whose job will be killed if it exceeds it's runtime = sandbox

Oh, and (in that last line above) it's "its", not "it's", isn't it.

@jwaldmann
Copy link

I submitted a test script and executed it with runsolver I am at least seeing something. The script did an ldd for my executable, which gives

0.00/0.03	./MB.exe: /lib64/libm.so.6: version `GLIBC_2.27' not found (required by ./MB.exe)
0.00/0.03	./MB.exe: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by ./MB.exe)
0.00/0.03	./MB.exe: /lib64/libm.so.6: version `GLIBC_2.27' not found (required by ./liblapack.so.3)
0.00/0.03		linux-vdso.so.1 =>  (0x00007ffd97587000)
0.00/0.03		libm.so.6 => /lib64/libm.so.6 (0x00002b22e67fb000)
0.00/0.03		libz.so.1 => /lib64/libz.so.1 (0x00002b22e6afd000)
0.00/0.03		libglpk.so.40 => ./libglpk.so.40 (0x00002b22e661f000)
0.00/0.03		libblas.so.3 => ./libblas.so.3 (0x00002b22e6701000)
0.00/0.03		liblapack.so.3 => ./liblapack.so.3 (0x00002b22e6d13000)
0.00/0.03		libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00002b22e73b0000)
0.00/0.03		librt.so.1 => /lib64/librt.so.1 (0x00002b22e76b7000)
0.00/0.03		libutil.so.1 => /lib64/libutil.so.1 (0x00002b22e78bf000)
0.00/0.03		libdl.so.2 => /lib64/libdl.so.2 (0x00002b22e7ac2000)
0.00/0.03		libpthread.so.0 => /lib64/libpthread.so.0 (0x00002b22e7cc6000)
0.00/0.03		libgmp.so.10 => /lib64/libgmp.so.10 (0x00002b22e7ee2000)
0.00/0.03		libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00002b22e815a000)
0.00/0.03		libc.so.6 => /lib64/libc.so.6 (0x00002b22e8370000)
0.00/0.03		/lib64/ld-linux-x86-64.so.2 (0x00002b22e65d7000)
0.00/0.03		libamd.so.2 => /lib64/libamd.so.2 (0x00002b22e873d000)
0.00/0.03		libcolamd.so.2 => /lib64/libcolamd.so.2 (0x00002b22e8947000)
0.00/0.03		libgfortran.so.5 => not found
0.00/0.03		libgfortran.so.5 => not found
0.00/0.03	./MB.exe: error while loading shared libraries: libgfortran.so.5: cannot open shared object file: No such file or directory

Well yes, I was sort of expecting that. Now I have to go find some nice old machine for building, or use Starexec's VM image, of figure out how to do dockerize this.

It's still not clear whether this would solve the original issue (runexec not working).

@jwaldmann
Copy link

jwaldmann commented Feb 18, 2019

I am now pretty sure that benchexec/runexec is broken. I can get something working with runsolver, see https://gitlab.imn.htwk-leipzig.de/waldmann/pure-matchbox/issues/143

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants