chroot, mount --bind, and binfmt_misc without privilege/setup for Linux, https://proot-me.github.io
oxr463 on master
Add link to usage survey [skip… (compare)
oxr463 on master
Add: faccess2(2) syscall Remove extra tab for PR_faccess… (compare)
proot info: vpid 47: translate("/" + "/nix/store/ga9q4ikprn36wm32gqm4k521iv9kic5p-libsodium-1.0.18/lib/libsodium.so.23")
proot info: vpid 47: -> "/Lustre01/home/qosnebc/pls/store/ga9q4ikprn36wm32gqm4k521iv9kic5p-libsodium-1.0.18/lib/libsodium.so.23.3.0"
proot info: vpid 47: sysenter start: read(0x3, 0x7fff0e468db8, 0x340, 0x0, 0x7fff0e468d9f, 0x0) = 0xffffffffffffffda [0x7fff0e468ad8, 0]
proot info: vpid 47: sysenter start: newfstatat(0x3, 0x6f0000028954, 0x7fff0e468c40, 0x1000, 0x7f911fecdf30, 0x6f0000033220) = 0xffffffffffffffda [0x7fff0e468bb8, 0]
proot info: vpid 47: sysenter start: close(0x3, 0x6f0000028954, 0x7fff0e468c40, 0x1000, 0x7f911fecdf30, 0x6f0000033220) = 0xffffffffffffffda [0x7fff0e468bb8, 0]
proot info: vpid 47: sysenter start: writev(0x2, 0x7fff0e468900, 0xa, 0x20, 0x7fff0e468d48, 0x7f911fecdf30) = 0xffffffffffffffda [0x7fff0e4688c0, 0]
/nix/store/xdlpraypxdimjyfrr4k06narrv8nmfgh-nix-2.11.1/bin/nix-store: error while loading shared libraries: libsodium.so.23: cannot stat shared object: Invalid argument
proot info: vpid 47: sysenter start: exit_group(0x7f, 0x3c, 0x7f, 0x20, 0xe7, 0x7f911fecdf30) = 0xffffffffffffffda [0x7fff0e468d38, 0]
proot info: vpid 47: exited with status 127
$ LD_LIBRARY_PATH=pls/store/ga9q4ikprn36wm32gqm4k521iv9kic5p-libsodium-1.0.18/lib/ pls/store/scd5n7xsn0hh0lvhhnycr9gx0h8xfzsl-glibc-2.34-210/lib64/ld-linux-x86-64.so.2 pls/store/xdlpraypxdimjyfrr4k06narrv8nmfgh-nix-2.11.1/bin/nix-store
pls/store/xdlpraypxdimjyfrr4k06narrv8nmfgh-nix-2.11.1/bin/nix-store: error while loading shared libraries: libsodium.so.23: cannot stat shared object: Invalid argument
ECC:
Ed25519 | nanosecs/iter cycles/iter
mult | Fatal: getentropy is not supported: Function not implemented
Hi im having a file permission problem ( show d????????? instead of rwxr-xr-x ) inside proot since I changed the host operating system.
I was on Mint 20 ext4 everything was working fine.
I copied my code base(iso and scritps that use proot ) on an external drive (btrfs) and imported it on a fresh install of mint21.1( ubuntu 22.04) with kernel 5.15.0-56 ext4
My script mount the iso file add folders and file to the iso then use proot to run the files. All files living inside the ISO file have correct permissions set, but others files that have been copied from the host don't have correct permissions
total 76K
drwxr-xr-x 20 root root 4.0K Dec 25 19:02 .
drwxr-xr-x 20 root root 4.0K Dec 25 19:02 ..
d????????? ? ? ? ? ? apt
lrwxrwxrwx 1 root root 7 Dec 25 15:10 bin -> usr/bin
drwxr-xr-x 5 root root 4.0K Dec 25 20:22 boot
drwxr-xr-x 21 root root 4.8K Dec 25 21:38 dev
drwxr-xr-x 150 root root 12K Dec 25 17:06 etc
drwxr-xr-x 3 root root 4.0K Dec 25 15:14 home
d????????? ? ? ? ? ? host-rootfs
d????????? ? ? ? ? ? install-scripts
lrwxrwxrwx 1 root root 7 Dec 25 15:10 lib -> usr/lib
drwx------ 2 root root 16K Dec 25 15:09 lost+found
drwxr-xr-x 3 root root 4.0K Dec 25 15:19 media
drwxr-xr-x 5 root root 4.0K Dec 25 16:36 mnt
drwxr-xr-x 4 root root 4.0K Dec 25 16:44 opt
dr-xr-xr-x 431 root root 0 Dec 25 21:27 proc
drwx------ 8 root root 4.0K Dec 25 19:02 root
drwxr-xr-x 37 root root 1.1K Dec 25 22:00 run
lrwxrwxrwx 1 root root 8 Dec 25 15:10 sbin -> usr/sbin
drwxr-xr-x 2 root root 4.0K Dec 17 15:08 srv
dr-xr-xr-x 13 root root 0 Dec 25 21:35 sys
drwxrwxrwt 20 root root 4.0K Dec 25 22:50 tmp
drwxr-xr-x 14 root root 4.0K Dec 17 15:08 usr
drwxr-xr-x 11 root root 4.0K Dec 17 15:43 var
My proot command looks like this :
cp -r "../install-scripts" "$rootfs/"
cp -r "/etc/apt" "$rootfs/"
if [[ $cpuArch == arm64 ]]; then
qemuArch=" -q qemu-aarch64"
elif [[ $cpuArch == armhf ]]; then
qemuArch=" -q qemu-arm"
fi
proot $qemuArch \
--root-id \
--rootfs=$workDir/rootfs \
--cwd=/install-scripts \
--mount=/etc/resolv.conf:/etc/resolv.conf \
--mount=/dev:/dev \
--mount=/sys:/sys \
--mount=/proc:/proc \
$buildCmd
return=$?
[ $return -ne 0 ] && exit 1
```
Did I find a bug or im doing something wrong ?