BinaryBuilder.jl icon indicating copy to clipboard operation
BinaryBuilder.jl copied to clipboard

At line 288, ABORTED (Operation not permitted)! At line 1171, ABORTED (No error information)!

Open elemeur opened this issue 5 years ago • 5 comments

Hi ,

  1. I am having the same issue as #485. I am on an Ubuntu virtualbox under windows 10, and I am trying to run my first binarybuild (of scs btw). Here is the error log. A lot of thanks for your help!
  2. The faq says : To work around this, you can launch BinaryBuilder.jl in "privileged container" mode. Unfortunately, this involves running sudo every time you launch into a BinaryBuilder session.
  • How do you that part ie run sudo in a BinaryBuilder session?


julia> BinaryBuilder.versioninfo()
[ Info: Julia versioninfo(): 
Julia Version 1.3.1
Commit 2d5741174c (2019-12-30 21:36 UTC)
Platform Info:
  OS: Linux (x86_64-pc-linux-gnu)
  CPU: Intel(R) Core(TM) i5-8400 CPU @ 2.80GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-6.0.1 (ORCJIT, skylake)
Environment:
  JULIA_EDITOR = atom  -a
  JULIA_NUM_THREADS = 1
[ Info: BinaryBuilder.jl version: 0.2.2 (gitsha unavailable)
[ Info: Kernel version: 5.0.0-23-generic
[ Info: pkg dir is NOT encrypted on mountpoint /
[ Info: storage dir is NOT encrypted on mountpoint /
[ Info: Relevant envionment variables:
[ Info:   BINARYBUILDER_RUNNER: "privileged"
[ Info: Preferred runner: BinaryBuilder.UserNSRunner
[ Info: Trying to run `echo hello julia` within a Linux x86_64 environment...
[ Info: Checking to see if /home/elm/proj/20T1/ is encrypted...
[ Info: Checking to see if /home/elm/.julia/packages/BinaryBuilder/4sWut/deps/ is encrypted...
verbose sandbox enabled (running in unprivileged container mode)
Parsed --rootfs as "/home/elm/.julia/artifacts/2e646abe9b45ce5da2884aee574025a8675d7e01"
Parsed --cd as "/workspace/"
Parsed --workspace as "/home/elm/proj/20T1" -> "/workspace"
Parsed --workspace as "/tmp/jl_R1RF3q" -> "/opt/bin"
Parsed --map as "/home/elm/.julia/artifacts/3fe6b223792b49f7d03facbea6c6b72cb1d7e87e" -> "/opt/x86_64-linux-gnu/PlatformSupport-2020.1.7"
Parsed --map as "/home/elm/.julia/artifacts/f2124900465e4fa506f8b1e274074eb92d68d46b" -> "/opt/x86_64-linux-gnu/GCCBootstrap-4.8.5"
Parsed --map as "/home/elm/.julia/artifacts/35dc5ddb1b3037f449fee5771b6c12ebcc4350b8" -> "/opt/x86_64-linux-musl/LLVMBootstrap-9.0.1"
Parsed --map as "/home/elm/.julia/artifacts/8140e5a39b445862e31ddff16addc4539f8cdd1b" -> "/opt/x86_64-linux-musl/PlatformSupport-2020.1.7"
Parsed --map as "/home/elm/.julia/artifacts/2e6f62648ec0497cc25774aa175471ad41b6172a" -> "/opt/x86_64-linux-musl/GCCBootstrap-4.8.5"
Child Process PID is 20660
--> Mapping 1000:1000 to root:root within container namespace
--> Creating overlay workdir at /proc
--> Mounting overlay of /home/elm/.julia/artifacts/2e646abe9b45ce5da2884aee574025a8675d7e01 at /home/elm/.julia/artifacts/2e646abe9b45ce5da2884aee574025a8675d7e01 (modifications in /proc/upper/rootfs, workspace in /proc/work/rootfs)
--> mapping /home/elm/.julia/artifacts/2e6f62648ec0497cc25774aa175471ad41b6172a to /home/elm/.julia/artifacts/2e646abe9b45ce5da2884aee574025a8675d7e01/opt/x86_64-linux-musl/GCCBootstrap-4.8.5
--> mapping /home/elm/.julia/artifacts/8140e5a39b445862e31ddff16addc4539f8cdd1b to /home/elm/.julia/artifacts/2e646abe9b45ce5da2884aee574025a8675d7e01/opt/x86_64-linux-musl/PlatformSupport-2020.1.7
--> mapping /home/elm/.julia/artifacts/35dc5ddb1b3037f449fee5771b6c12ebcc4350b8 to /home/elm/.julia/artifacts/2e646abe9b45ce5da2884aee574025a8675d7e01/opt/x86_64-linux-musl/LLVMBootstrap-9.0.1
--> mapping /home/elm/.julia/artifacts/f2124900465e4fa506f8b1e274074eb92d68d46b to /home/elm/.julia/artifacts/2e646abe9b45ce5da2884aee574025a8675d7e01/opt/x86_64-linux-gnu/GCCBootstrap-4.8.5
--> mapping /home/elm/.julia/artifacts/3fe6b223792b49f7d03facbea6c6b72cb1d7e87e to /home/elm/.julia/artifacts/2e646abe9b45ce5da2884aee574025a8675d7e01/opt/x86_64-linux-gnu/PlatformSupport-2020.1.7
--> Mounting overlay of /home/elm/.julia/artifacts/2e646abe9b45ce5da2884aee574025a8675d7e01/opt/x86_64-linux-gnu/PlatformSupport-2020.1.7:/home/elm/.julia/artifacts/2e646abe9b45ce5da2884aee574025a8675d7e01/opt/x86_64-linux-gnu/GCCBootstrap-4.8.5 at /home/elm/.julia/artifacts/2e646abe9b45ce5da2884aee574025a8675d7e01/opt/x86_64-linux-gnu (modifications in /proc/upper/x86_64-linux-gnu, workspace in /proc/work/x86_64-linux-gnu)
At line 288, ABORTED (Operation not permitted)!
At line 1171, ABORTED (No error information)!
ERROR: failed process: Process(setenv(`/home/elm/.julia/artifacts/2e646abe9b45ce5da2884aee574025a8675d7e01/sandbox --verbose --rootfs /home/elm/.julia/artifacts/2e646abe9b45ce5da2884aee574025a8675d7e01 --cd /workspace/ --workspace /home/elm/proj/20T1:/workspace --workspace /tmp/jl_R1RF3q:/opt/bin --map /home/elm/.julia/artifacts/3fe6b223792b49f7d03facbea6c6b72cb1d7e87e:/opt/x86_64-linux-gnu/PlatformSupport-2020.1.7 --map /home/elm/.julia/artifacts/f2124900465e4fa506f8b1e274074eb92d68d46b:/opt/x86_64-linux-gnu/GCCBootstrap-4.8.5 --map /home/elm/.julia/artifacts/35dc5ddb1b3037f449fee5771b6c12ebcc4350b8:/opt/x86_64-linux-musl/LLVMBootstrap-9.0.1 --map /home/elm/.julia/artifacts/8140e5a39b445862e31ddff16addc4539f8cdd1b:/opt/x86_64-linux-musl/PlatformSupport-2020.1.7 --map /home/elm/.julia/artifacts/2e6f62648ec0497cc25774aa175471ad41b6172a:/opt/x86_64-linux-musl/GCCBootstrap-4.8.5 -- /bin/bash -c 'echo hello julia'`,["HOSTFC=x86_64-linux-musl-gfortran", "HOSTSTRIP=x86_64-linux-musl-strip", "OBJCOPY_BUILD=x86_64-linux-musl-objcopy", "HISTFILE=/meta/.bash_history", "HOSTRANLIB=x86_64-linux-musl-ranlib", "VERBOSE=true", "BUILD_STRIP=x86_64-linux-musl-strip", "RUSTUP_TOOLCHAIN=stable-x86_64-unknown-linux-gnu", "LLVM_TARGET=x86_64-linux-gnu", "BUILD_AS=x86_64-linux-musl-as"  …  "DSYMUTIL_FOR_BUILD=llvm-dsymutil", "BUILD_DSYMUTIL=llvm-dsymutil", "LIPO_FOR_BUILD=x86_64-linux-musl-lipo", "LLVM_HOST_TARGET=x86_64-linux-musl", "READELF_BUILD=x86_64-linux-musl-readelf", "libdir=/workspace/destdir/lib", "BUILD_NM=x86_64-linux-musl-nm", "bb_target=x86_64-linux-gnu", "WORKSPACE=/workspace", "HOSTAS=x86_64-linux-musl-as"]), ProcessSignaled(6)) [0]

Stacktrace:
 [1] pipeline_error at ./process.jl:525 [inlined]
 [2] #run#565(::Bool, ::typeof(run), ::Cmd) at ./process.jl:440
 [3] run at ./process.jl:438 [inlined]
 [4] #run_interactive#251(::Nothing, ::Nothing, ::Nothing, ::Bool, ::typeof(BinaryBuilder.run_interactive), ::BinaryBuilder.UserNSRunner, ::Cmd) at /home/elm/.julia/packages/BinaryBuilder/4sWut/src/UserNSRunner.jl:193
 [5] run_interactive at /home/elm/.julia/packages/BinaryBuilder/4sWut/src/UserNSRunner.jl:160 [inlined]
 [6] versioninfo() at /home/elm/.julia/packages/BinaryBuilder/4sWut/src/BinaryBuilder.jl:189
 [7] top-level scope at none:0

julia> 

elemeur avatar Jan 24 '20 06:01 elemeur

Huh, I'm a little confused; I'm not sure why it recognizes that BINARYBUILDER_RUNNER is set to "privileged", but then it says that it's running in unprivileged container mode. That shouldn't be happening. Can you verify that the following values are the same for you:

julia> BinaryBuilder.runner_override
"privileged"

julia> r = BinaryBuilder.preferred_runner()("/tmp")
Linux x86_64 (glibc) UserNSRunner

julia> r.sandbox_cmd
`sudo -E HOSTFC=x86_64-linux-musl-gfortran ....`

staticfloat avatar Jan 25 '20 07:01 staticfloat

Hi, I can see a similar problem. The error message says (please see the attached file for the complete log):

[ Info: No hash cache found
[ Info: Calculated hash 8f33ef35ef6bd7fc5079b54cc0ba928d7a63c71973b1510c702e7115e10bbbae for file /tmp/jl_cK3ujL-download.g
z
[ Info: Unpacking /tmp/jl_cK3ujL-download.gz into /root/.julia/artifacts/jl_ybiqev...
mount: /tmp/jl_AXtm9e/mounts/Rootfs.v2020.2.6.x86_64-linux-musl.squashfs: mount failed: Operation not permitted.
failed process: Process(`mount /root/.julia/artifacts/c2229c7ece9773146f9cfc236db7a16aba82356f/Rootfs.v2020.2.6.x86_64-linu
x-musl.squashfs /tmp/jl_AXtm9e/mounts/Rootfs.v2020.2.6.x86_64-linux-musl.squashfs -o ro,loop`, ProcessExited(1)) [1]
Stacktrace:
 [1] pipeline_error at ./process.jl:525 [inlined]
 [2] #run#565(::Bool, ::typeof(run), ::Cmd) at ./process.jl:440
 [3] run at ./process.jl:438 [inlined]
 [4] #mount#241(::Bool, ::typeof(BinaryBuilder.mount), ::BinaryBuilder.CompilerShard, ::String) at /root/.julia/dev/BinaryB
uilder/src/Rootfs.jl:249
 [5] #mount at ./none:0 [inlined]

I ran it on a Google Cloud Platform instance using the staticfloat/binarybuilder.jl image today, but I can see the same problem on a Docker container on macOS.

log.txt

bicycle1885 avatar Feb 21 '20 05:02 bicycle1885

For people passing by this issue: for me running Docker with --privileged works on julia:1.6.0-rc2-buster. With that flag, BinaryBuilder.jl#master is correctly able to spawn further docker images for Linux, MacOS and Windows from inside the docker.

rikhuijzer avatar Mar 16 '21 14:03 rikhuijzer

Does BinaryBuilder work for you on Windows?

giordano avatar Mar 16 '21 14:03 giordano

No, I'm running on Linux. I thought my comment was interesting for people passing by because without using --privileged, the error message will be the same as the issue title.

rikhuijzer avatar Mar 16 '21 15:03 rikhuijzer