termux / proot

An chroot-like implementation using ptrace.
https://wiki.termux.com/wiki/PRoot
Other
751 stars 161 forks source link

..apt fd 7 fstat(1: operation not permitted) [armhf] #172

Closed SaicharanKandukuri closed 3 years ago

SaicharanKandukuri commented 3 years ago
old ![img](https://cdn.discordapp.com/attachments/851345999645507620/861948321772994610/IMG_20210706_143446.jpg) `hippo` is my [custom plugin](https://raw.githubusercontent.com/RandomCoderOrg/ubuntu-on-android/armhf-patch/payload/hippo.sh) of ubuntu 21.04 fs from [cdimage](http://cdimage.ubuntu.com/ubuntu-base/releases/21.04/release/) but I was [noticed](https://github.com/RandomCoderOrg/ubuntu-on-android/issues/34) this error in devices like this ``` Application version: 0.114 Packages CPU architecture: arm Subscribed repositories: # sources.list deb https://termux.org/packages/ stable main # game-repo (sources.list.d/game.list) deb https://packages.termux.org/apt/termux-games games stable # science-repo (sources.list.d/science.list) deb https://packages.termux.org/apt/termux-science science stable Updatable packages: All packages up to date Android version: 9 Kernel build information: Linux localhost 4.9.117+ #1 SMP PREEMPT Fri Mar 5 12:01:24 CST 2021 armv8l Android Device manufacturer: HUAWEI Device model: MRD-LX3 ``` So, any reasons why it actually happened and how to make it work(if possible)

Problem description

apt fails to execute ( update | upgrade | install ) cause of fstat error screenshot of error after user executed apt update img

Steps to reproduce

By keeping aside other theories of device-specific errors

  1. install ubuntu 21+ in an armhf device
    # download installer
    curl -L -o install.sh https://raw.githubusercontent.com/RandomCoderOrg/ubuntu-on-android/test-armhf-patch/install.sh
    # run the installer
    bash install.sh
    # Install ubuntu with this command
    hippo --install
  2. login and run apt upgrade command
    proot-distro login hippo -- apt update

    or

    proot-distro login hippo 
    apt update

    or

    hippo -- apt update

Expected behavior

as the normal apt update should have done its job updating package version indexes

Additional information

strace log of apt update
Tap to expand full ``` execve("/usr/bin/apt", ["apt", "update"], 0xffe84e7c /* 30 vars */) = 0 brk(NULL) = 0xf014000 uname({sysname="Linux", nodename="localhost", ...}) = 0 access("/etc/ld.so.preload", R_OK) = 0 openat(AT_FDCWD, "/etc/ld.so.preload", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3 statx(3, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFREG|0644, stx_size=43, ...}) = 0 close(3) = 0 openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3 statx(3, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFREG|0644, stx_size=66846, ...}) = 0 close(3) = 0 openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/v8l/neon/vfp/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory) statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/v8l/neon/vfp", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/v8l/neon/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory) statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/v8l/neon", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/v8l/vfp/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory) statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/v8l/vfp", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/v8l/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory) statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/v8l", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/neon/vfp/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory) statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/neon/vfp", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/neon/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory) statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/neon", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/vfp/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory) statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/vfp", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory) statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 EPERM (Operation not permitted) openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/v8l/neon/vfp/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory) statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/v8l/neon/vfp", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/v8l/neon/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory) statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/v8l/neon", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/v8l/vfp/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory) statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/v8l/vfp", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/v8l/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory) statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/v8l", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 EPERM (Operation not permitted) openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/neon/vfp/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory) statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/neon/vfp", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/neon/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory) statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/neon", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 EPERM (Operation not permitted) openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/vfp/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory) statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/vfp", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0755, stx_size=4096, ...}) = 0 openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3 read(3, "\177ELF\1\1\1\3\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\20\272\0\0004\0\0\0"..., 512) = 512 statx(3, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFREG|0644, stx_size=296540, ...}) = 0 mmap2(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xe8721000 mmap2(NULL, 361236, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xe86c8000 mprotect(0xe870f000, 65536, PROT_NONE) = 0 mmap2(0xe871f000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x47000) = 0xe871f000 close(3) = 0 openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/vfp/libapt-pkg.so.6.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/libapt-pkg.so.6.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3 read(3, "\177ELF\1\1\1\3\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0(\342\2\0004\0\0\0"..., 512) = 512 statx(3, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFREG|0644, stx_size=1243524, ...}) = 0 close(3) = 0 openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/vfp/libstdc++.so.6", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/libstdc++.so.6", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3 read(3, "\177ELF\1\1\1\3\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0P\273\7\0004\0\0\0"..., 512) = 512 statx(3, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFREG|0644, stx_size=1450920, ...}) = 0 close(3) = 0 openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/vfp/libgcc_s.so.1", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/libgcc_s.so.1", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\360\321\0\0004\0\0\0"..., 512) = 512 statx(3, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFREG|0644, stx_size=99996, ...}) = 0 close(3) = 0 openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/vfp/libc.so.6", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/libc.so.6", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3 read(3, "\177ELF\1\1\1\3\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\271\262\1\0004\0\0\0"..., 512) = 512 statx(3, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFREG|0755, stx_size=988524, ...}) = 0 close(3) = 0 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GCC_3.5' not found (req"..., iov_len=45}, {iov_base="\n", iov_len=1}], 6) = 99 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBC_2.4' not found (r"..., iov_len=47}, {iov_base="\n", iov_len=1}], 6) = 101 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `APTPKG_6.0' not found ("..., iov_len=48}, {iov_base="\n", iov_len=1}], 6) = 102 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBCXX_3.4.9' not foun"..., iov_len=51}, {iov_base="\n", iov_len=1}], 6) = 105 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `CXXABI_1.3' not found ("..., iov_len=48}, {iov_base="\n", iov_len=1}], 6) = 102 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `CXXABI_1.3.9' not found"..., iov_len=50}, {iov_base="\n", iov_len=1}], 6) = 104 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `CXXABI_ARM_1.3.3' not f"..., iov_len=54}, {iov_base="\n", iov_len=1}], 6) = 108 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBCXX_3.4' not found "..., iov_len=49}, {iov_base="\n", iov_len=1}], 6) = 103 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GCC_3.5' not found (req"..., iov_len=88}, {iov_base="\n", iov_len=1}], 6) = 142 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `APTPKG_6.0' not found ("..., iov_len=91}, {iov_base="\n", iov_len=1}], 6) = 145 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBCXX_3.4.20' not fou"..., iov_len=95}, {iov_base="\n", iov_len=1}], 6) = 149 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `CXXABI_1.3.8' not found"..., iov_len=93}, {iov_base="\n", iov_len=1}], 6) = 147 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBCXX_3.4.11' not fou"..., iov_len=95}, {iov_base="\n", iov_len=1}], 6) = 149 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `CXXABI_1.3.9' not found"..., iov_len=93}, {iov_base="\n", iov_len=1}], 6) = 147 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBCXX_3.4.9' not foun"..., iov_len=94}, {iov_base="\n", iov_len=1}], 6) = 148 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `CXXABI_1.3' not found ("..., iov_len=91}, {iov_base="\n", iov_len=1}], 6) = 145 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBCXX_3.4.14' not fou"..., iov_len=95}, {iov_base="\n", iov_len=1}], 6) = 149 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `CXXABI_ARM_1.3.3' not f"..., iov_len=97}, {iov_base="\n", iov_len=1}], 6) = 151 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBCXX_3.4.21' not fou"..., iov_len=95}, {iov_base="\n", iov_len=1}], 6) = 149 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBCXX_3.4.15' not fou"..., iov_len=95}, {iov_base="\n", iov_len=1}], 6) = 149 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBCXX_3.4' not found "..., iov_len=92}, {iov_base="\n", iov_len=1}], 6) = 146 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBC_2.33' not found ("..., iov_len=91}, {iov_base="\n", iov_len=1}], 6) = 145 writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBC_2.4' not found (r"..., iov_len=90}, {iov_base="\n", iov_len=1}], 6) = 144 exit_group(1) = ? +++ exited with 1 +++ ```
problem continues in ubuntu impish

the same problem occurred in ubuntu impish which successor ubuntu 21.04 in which problem first appeared

SaicharanKandukuri commented 3 years ago

here is strace of apt update

execve("/usr/bin/apt", ["apt", "update"], 0xffe84e7c /* 30 vars */) = 0
brk(NULL)                               = 0xf014000
uname({sysname="Linux", nodename="localhost", ...}) = 0
access("/etc/ld.so.preload", R_OK)      = 0
openat(AT_FDCWD, "/etc/ld.so.preload", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3
statx(3, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFREG|0644, stx_size=43, ...}) = 0
close(3)                                = 0
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3
statx(3, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFREG|0644, stx_size=66846, ...}) = 0
close(3)                                = 0
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/v8l/neon/vfp/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/v8l/neon/vfp", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/v8l/neon/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/v8l/neon", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/v8l/vfp/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/v8l/vfp", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/v8l/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/v8l", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/neon/vfp/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/neon/vfp", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/neon/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/neon", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/vfp/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/vfp", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/tls", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 EPERM (Operation not permitted)
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/v8l/neon/vfp/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/v8l/neon/vfp", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/v8l/neon/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/v8l/neon", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/v8l/vfp/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/v8l/vfp", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/v8l/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/v8l", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 EPERM (Operation not permitted)
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/neon/vfp/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/neon/vfp", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/neon/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/neon", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xffa0c5f0) = -1 EPERM (Operation not permitted)
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/vfp/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
statx(AT_FDCWD, "/lib/arm-linux-gnueabihf/vfp", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFDIR|0755, stx_size=4096, ...}) = 0
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/libapt-private.so.0.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\3\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\20\272\0\0004\0\0\0"..., 512) = 512
statx(3, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFREG|0644, stx_size=296540, ...}) = 0
mmap2(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xe8721000
mmap2(NULL, 361236, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xe86c8000
mprotect(0xe870f000, 65536, PROT_NONE)  = 0
mmap2(0xe871f000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x47000) = 0xe871f000
close(3)                                = 0
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/vfp/libapt-pkg.so.6.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/libapt-pkg.so.6.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\3\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0(\342\2\0004\0\0\0"..., 512) = 512
statx(3, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFREG|0644, stx_size=1243524, ...}) = 0
close(3)                                = 0
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/vfp/libstdc++.so.6", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/libstdc++.so.6", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\3\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0P\273\7\0004\0\0\0"..., 512) = 512
statx(3, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFREG|0644, stx_size=1450920, ...}) = 0
close(3)                                = 0
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/vfp/libgcc_s.so.1", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/libgcc_s.so.1", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\360\321\0\0004\0\0\0"..., 512) = 512
statx(3, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFREG|0644, stx_size=99996, ...}) = 0
close(3)                                = 0
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/vfp/libc.so.6", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/libc.so.6", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\3\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\271\262\1\0004\0\0\0"..., 512) = 512
statx(3, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFREG|0755, stx_size=988524, ...}) = 0
close(3)                                = 0
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GCC_3.5' not found (req"..., iov_len=45}, {iov_base="\n", iov_len=1}], 6) = 99
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBC_2.4' not found (r"..., iov_len=47}, {iov_base="\n", iov_len=1}], 6) = 101
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `APTPKG_6.0' not found ("..., iov_len=48}, {iov_base="\n", iov_len=1}], 6) = 102
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBCXX_3.4.9' not foun"..., iov_len=51}, {iov_base="\n", iov_len=1}], 6) = 105
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `CXXABI_1.3' not found ("..., iov_len=48}, {iov_base="\n", iov_len=1}], 6) = 102
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `CXXABI_1.3.9' not found"..., iov_len=50}, {iov_base="\n", iov_len=1}], 6) = 104
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `CXXABI_ARM_1.3.3' not f"..., iov_len=54}, {iov_base="\n", iov_len=1}], 6) = 108
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBCXX_3.4' not found "..., iov_len=49}, {iov_base="\n", iov_len=1}], 6) = 103
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GCC_3.5' not found (req"..., iov_len=88}, {iov_base="\n", iov_len=1}], 6) = 142
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `APTPKG_6.0' not found ("..., iov_len=91}, {iov_base="\n", iov_len=1}], 6) = 145
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBCXX_3.4.20' not fou"..., iov_len=95}, {iov_base="\n", iov_len=1}], 6) = 149
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `CXXABI_1.3.8' not found"..., iov_len=93}, {iov_base="\n", iov_len=1}], 6) = 147
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBCXX_3.4.11' not fou"..., iov_len=95}, {iov_base="\n", iov_len=1}], 6) = 149
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `CXXABI_1.3.9' not found"..., iov_len=93}, {iov_base="\n", iov_len=1}], 6) = 147
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBCXX_3.4.9' not foun"..., iov_len=94}, {iov_base="\n", iov_len=1}], 6) = 148
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `CXXABI_1.3' not found ("..., iov_len=91}, {iov_base="\n", iov_len=1}], 6) = 145
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBCXX_3.4.14' not fou"..., iov_len=95}, {iov_base="\n", iov_len=1}], 6) = 149
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `CXXABI_ARM_1.3.3' not f"..., iov_len=97}, {iov_base="\n", iov_len=1}], 6) = 151
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBCXX_3.4.21' not fou"..., iov_len=95}, {iov_base="\n", iov_len=1}], 6) = 149
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBCXX_3.4.15' not fou"..., iov_len=95}, {iov_base="\n", iov_len=1}], 6) = 149
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBCXX_3.4' not found "..., iov_len=92}, {iov_base="\n", iov_len=1}], 6) = 146
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBC_2.33' not found ("..., iov_len=91}, {iov_base="\n", iov_len=1}], 6) = 145
writev(2, [{iov_base="apt", iov_len=3}, {iov_base=": ", iov_len=2}, {iov_base="/lib/arm-linux-gnueabihf/libapt-"..., iov_len=46}, {iov_base=": ", iov_len=2}, {iov_base="version `GLIBC_2.4' not found (r"..., iov_len=90}, {iov_base="\n", iov_len=1}], 6) = 144
exit_group(1)                           = ?
+++ exited with 1 +++

strace msg source

SaicharanKandukuri commented 3 years ago

looks like armhf ubuntu Impish has the same problem with fstat

soo many users reported the same with ubuntu hirsute and impish looks like the error scale is large now!

SaicharanKandukuri commented 3 years ago

@Grimler91 Any technical answers ( except: this is from your device )

Grimler91 commented 3 years ago

I can reproduce the behaviour on one of my arm devices.

This check fails, and the size there should come from proot's statx implementation.

As always with debugging it would be useful if you can produce an as minimal example as possible that reproduces the issue, and provide the verbose log requested in the bug report template. Strace output can also be useful, the strace log you posted before cannot be accessed without a discord account.

SaicharanKandukuri commented 3 years ago

@Grimler91 I updated my initial comment https://github.com/termux/proot/issues/172#issue-941221300 with all information according to the template

cannot be accessed without a discord account.

that's the reason I added logs above it also, check out this issue we tried different ways to see if we could solve

As always with debugging it would be useful if you can produce an as minimal example as possible that reproduces the issue

updated with commands that produced errors for now!

SaicharanKandukuri commented 3 years ago

Any progress?

Grimler91 commented 3 years ago

I don't really use proot-distro so I am unlikely to look into it more, at least not before solving some other issues.

Creating a minimal example (basically boiling down apt's code) that reproduces the issue would be a good start for understanding the issue, but I guess that is a bit hard to do inside the proot-distro since packages cannot be installed

michalbednarski commented 3 years ago

Just committed fix attempt, currently you can try it by building proot from source.

SaicharanKandukuri commented 3 years ago

sure we start testing

SaicharanKandukuri commented 3 years ago

@michalbednarski thanks for the patch looks like it is working But you may need to make sure it won't trigger any other issue

SaicharanKandukuri commented 3 years ago

@Grimler91 when these changes https://github.com/termux/proot/commit/3b9576a781d0a11b6b0b43d6c37c388f6e89a0d2 reflect in the apt repo

michalbednarski commented 3 years ago

Fixed version is now available in Termux apt repo

SaicharanKandukuri commented 3 years ago

once again thanks for the patch and reply @michalbednarski and @Grimler91

closing this issue 👍