~ $ strace nfs-ls --discovery 'nfs://192.168.72.12?mountport=2049&nfsport=2049'
mmap(NULL, 20480, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x7a4c836000
mprotect(0x7a4c837000, 12288, PROT_READ|PROT_WRITE) = 0
rt_sigprocmask(SIG_BLOCK, ~[], [RTMIN], 8) = 0
rt_sigprocmask(SIG_SETMASK, [RTMIN], NULL, 8) = 0
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x7a4c837000, 12288, "stack_and_tls:main") = 0
munmap(0x7a4d9f5000, 12288) = 0
mprotect(0x7a48d95000, 4096, PROT_READ) = 0
mprotect(0x7a48d95000, 4096, PROT_READ|PROT_WRITE) = 0
faccessat(AT_FDCWD, "/dev/urandom", R_OK) = 0
getrandom("\x50\x94\x77\x67\xf7\xa1\x8b\x7c\xe3\xd3\xa4\x74\x44\x61\x66\x31\x0c\xe8\x90\x21\x72\xee\x4d\xb0\xc7\x39\xee\xa1\x05\xf2\xf5\xa3"..., 40, GRND_NONBLOCK) = 40
mmap(NULL, 1104, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a4d9f7000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x7a4d9f7000, 1104, "arc4random data") = 0
mprotect(0x7a48d95000, 4096, PROT_READ) = 0
newfstatat(AT_FDCWD, "/dev/__properties__", {st_mode=S_IFDIR|0711, st_size=12720, ...}, 0) = 0
faccessat(AT_FDCWD, "/dev/__properties__/property_info", R_OK) = 0
openat(AT_FDCWD, "/dev/__properties__/property_info", O_RDONLY|O_NOFOLLOW|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=140916, ...}) = 0
mmap(NULL, 140916, PROT_READ, MAP_SHARED, 3, 0) = 0x7a4c6cb000
close(3) = 0
mmap(NULL, 25280, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a4c6c4000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x7a4c6c4000, 25280, "System property context nodes") = 0
openat(AT_FDCWD, "/dev/__properties__/properties_serial", O_RDONLY|O_NOFOLLOW|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=131072, ...}) = 0
mmap(NULL, 131072, PROT_READ, MAP_SHARED, 3, 0) = 0x7a4c66c000
close(3) = 0
openat(AT_FDCWD, "/dev/__properties__/u:object_r:debug_prop:s0", O_RDONLY|O_NOFOLLOW|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=131072, ...}) = 0
mmap(NULL, 131072, PROT_READ, MAP_SHARED, 3, 0) = 0x7a4c63c000
close(3) = 0
rt_sigaction(SIGRT_7, {sa_handler=0x7a488c83a0, sa_mask=[], sa_flags=SA_RESTART}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
mprotect(0x7a48d95000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x7a48d95000, 4096, PROT_READ) = 0
getrandom("\x92\x5d\xa5\x62", 4, GRND_NONBLOCK) = 4
mmap(NULL, 8858370048, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x7835ceb000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x7835ceb000, 8858370048, "scudo:primary_reserve") = 0
getrandom("\x8d\x23\x47\x4f", 4, GRND_NONBLOCK) = 4
mmap(NULL, 1052672, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7835bea000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x7835bea000, 1052672, "AllocatorRingBuffer") = 0
sched_getaffinity(0, 128, [0 1 2 3]) = 8
mmap(0x7905cf8000, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7905cf8000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x7905cf8000, 262144, "scudo:primary") = 0
mmap(0x7925cec000, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7925cec000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x7925cec000, 262144, "scudo:primary") = 0
futex(0x7a489541c0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
mprotect(0x7a48d95000, 4096, PROT_READ|PROT_WRITE) = 0
openat(AT_FDCWD, "/dev/__properties__/u:object_r:gwp_asan_prop:s0", O_RDONLY|O_NOFOLLOW|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=131072, ...}) = 0
mmap(NULL, 131072, PROT_READ, MAP_SHARED, 3, 0) = 0x7a4c61c000
close(3) = 0
openat(AT_FDCWD, "/dev/__properties__/u:object_r:libc_debug_prop:s0", O_RDONLY|O_NOFOLLOW|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=131072, ...}) = 0
mmap(NULL, 131072, PROT_READ, MAP_SHARED, 3, 0) = 0x7a48de0000
close(3) = 0
openat(AT_FDCWD, "/dev/__properties__/u:object_r:heapprofd_prop:s0", O_RDONLY|O_NOFOLLOW|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=131072, ...}) = 0
mmap(NULL, 131072, PROT_READ, MAP_SHARED, 3, 0) = 0x7a48dc0000
close(3) = 0
mprotect(0x7a48d95000, 4096, PROT_READ) = 0
rt_sigaction(SIGRT_4, {sa_handler=0x7a488ac840, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_6, {sa_handler=SIG_IGN, sa_mask=[], sa_flags=SA_RESTART}, {sa_handler=SIG_IGN, sa_mask=[], sa_flags=0}, 8) = 0
getuid() = 10185
prctl(PR_GET_DUMPABLE) = 1 (SUID_DUMP_USER)
openat(AT_FDCWD, "/system/lib64/libnetd_client.so", O_RDONLY|O_CLOEXEC) = 3
readlinkat(AT_FDCWD, "/proc/self/fd/3", "/system/lib64/libnetd_client.so", 4096) = 31
fstat(3, {st_mode=S_IFREG|0644, st_size=41432, ...}) = 0
fstatfs(3, {f_type=EXT2_SUPER_MAGIC, f_bsize=4096, f_blocks=410434, f_bfree=1242, f_bavail=0, f_files=3328, f_ffree=156, f_fsid={val=[0xb6659bac, 0xd0c4c0c0]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_RDONLY|ST_RELATIME}) = 0
pread64(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 64, 0) = 64
mmap(NULL, 688, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7a4d9f6000
mmap(NULL, 7472, PROT_READ, MAP_PRIVATE, 3, 0x9000) = 0x7a4c834000
mmap(NULL, 640, PROT_READ, MAP_PRIVATE, 3, 0x9000) = 0x7a4d9f5000
mmap(NULL, 10060, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7a4c831000
openat(AT_FDCWD, "/system/lib64/libcutils.so", O_RDONLY|O_CLOEXEC) = 4
readlinkat(AT_FDCWD, "/proc/self/fd/4", "/system/lib64/libcutils.so", 4096) = 26
fstat(4, {st_mode=S_IFREG|0644, st_size=99656, ...}) = 0
fstatfs(4, {f_type=EXT2_SUPER_MAGIC, f_bsize=4096, f_blocks=410434, f_bfree=1242, f_bavail=0, f_files=3328, f_ffree=156, f_fsid={val=[0xb6659bac, 0xd0c4c0c0]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_RDONLY|ST_RELATIME}) = 0
pread64(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 64, 0) = 64
mmap(NULL, 688, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7a4c830000
mmap(NULL, 9232, PROT_READ, MAP_PRIVATE, 4, 0x17000) = 0x7a4c82c000
mmap(NULL, 544, PROT_READ, MAP_PRIVATE, 4, 0x17000) = 0x7a4c82b000
mmap(NULL, 11161, PROT_READ, MAP_PRIVATE, 4, 0x2000) = 0x7a4c81d000
openat(AT_FDCWD, "/system/lib64/libbase.so", O_RDONLY|O_CLOEXEC) = 5
readlinkat(AT_FDCWD, "/proc/self/fd/5", "/system/lib64/libbase.so", 4096) = 24
fstat(5, {st_mode=S_IFREG|0644, st_size=275960, ...}) = 0
fstatfs(5, {f_type=EXT2_SUPER_MAGIC, f_bsize=4096, f_blocks=410434, f_bfree=1242, f_bavail=0, f_files=3328, f_ffree=156, f_fsid={val=[0xb6659bac, 0xd0c4c0c0]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_RDONLY|ST_RELATIME}) = 0
pread64(5, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 64, 0) = 64
mmap(NULL, 688, PROT_READ, MAP_PRIVATE, 5, 0) = 0x7a4c82a000
mmap(NULL, 9584, PROT_READ, MAP_PRIVATE, 5, 0x42000) = 0x7a4c6c1000
mmap(NULL, 1824, PROT_READ, MAP_PRIVATE, 5, 0x41000) = 0x7a4c829000
mmap(NULL, 30545, PROT_READ, MAP_PRIVATE, 5, 0x3000) = 0x7a4c6b9000
openat(AT_FDCWD, "/system/lib64/libc++.so", O_RDONLY|O_CLOEXEC) = 6
readlinkat(AT_FDCWD, "/proc/self/fd/6", "/system/lib64/libc++.so", 4096) = 23
fstat(6, {st_mode=S_IFREG|0644, st_size=762744, ...}) = 0
fstatfs(6, {f_type=EXT2_SUPER_MAGIC, f_bsize=4096, f_blocks=410434, f_bfree=1242, f_bavail=0, f_files=3328, f_ffree=156, f_fsid={val=[0xb6659bac, 0xd0c4c0c0]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_RDONLY|ST_RELATIME}) = 0
pread64(6, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 64, 0) = 64
mmap(NULL, 688, PROT_READ, MAP_PRIVATE, 6, 0) = 0x7a4c825000
mmap(NULL, 8240, PROT_READ, MAP_PRIVATE, 6, 0xb9000) = 0x7a4c6b6000
mmap(NULL, 7872, PROT_READ, MAP_PRIVATE, 6, 0xb6000) = 0x7a4c822000
mmap(NULL, 104452, PROT_READ, MAP_PRIVATE, 6, 0x12000) = 0x7a4c602000
openat(AT_FDCWD, "/system/lib64/libm.so", O_RDONLY|O_CLOEXEC) = 7
readlinkat(AT_FDCWD, "/proc/self/fd/7", "/apex/com.android.runtime/lib64/"..., 4096) = 46
fstat(7, {st_mode=S_IFREG|0644, st_size=237472, ...}) = 0
fstatfs(7, {f_type=EXT2_SUPER_MAGIC, f_bsize=4096, f_blocks=2569, f_bfree=10, f_bavail=0, f_files=64, f_ffree=10, f_fsid={val=[0x2ba2bd9, 0x8b5c2839]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_RDONLY|ST_NODEV|ST_NOATIME}) = 0
pread64(7, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 64, 0) = 64
mmap(NULL, 688, PROT_READ, MAP_PRIVATE, 7, 0) = 0x7a4c6b5000
mmap(NULL, 6336, PROT_READ, MAP_PRIVATE, 7, 0x39000) = 0x7a4c6b3000
mmap(NULL, 480, PROT_READ, MAP_PRIVATE, 7, 0x39000) = 0x7a4c6b2000
mmap(NULL, 6360, PROT_READ, MAP_PRIVATE, 7, 0x2000) = 0x7a4c6b0000
openat(AT_FDCWD, "/system/lib64/liblog.so", O_RDONLY|O_CLOEXEC) = 8
readlinkat(AT_FDCWD, "/proc/self/fd/8", "/system/lib64/liblog.so", 4096) = 23
fstat(8, {st_mode=S_IFREG|0644, st_size=66632, ...}) = 0
fstatfs(8, {f_type=EXT2_SUPER_MAGIC, f_bsize=4096, f_blocks=410434, f_bfree=1242, f_bavail=0, f_files=3328, f_ffree=156, f_fsid={val=[0xb6659bac, 0xd0c4c0c0]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_RDONLY|ST_RELATIME}) = 0
pread64(8, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 64, 0) = 64
mmap(NULL, 688, PROT_READ, MAP_PRIVATE, 8, 0) = 0x7a4c6af000
mmap(NULL, 8656, PROT_READ, MAP_PRIVATE, 8, 0xf000) = 0x7a4c6ac000
mmap(NULL, 592, PROT_READ, MAP_PRIVATE, 8, 0xf000) = 0x7a4c6ab000
mmap(NULL, 5962, PROT_READ, MAP_PRIVATE, 8, 0x1000) = 0x7a4c6a9000
mmap(NULL, 782336, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7835b2b000
munmap(0x7835b2b000, 266240) = 0
munmap(0x7835baf000, 241664) = 0
mmap(0x7835b6c000, 80360, PROT_READ, MAP_PRIVATE|MAP_FIXED, 5, 0) = 0x7835b6c000
mmap(0x7835b80000, 182608, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 5, 0x14000) = 0x7835b80000
mmap(0x7835bad000, 3480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 5, 0x41000) = 0x7835bad000
mmap(0x7835bae000, 3496, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 5, 0x41000) = 0x7835bae000
mmap(NULL, 520192, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a45d81000
munmap(0x7a45d81000, 389120) = 0
munmap(0x7a45df1000, 61440) = 0
mmap(0x7a45de0000, 19084, PROT_READ, MAP_PRIVATE|MAP_FIXED, 8, 0) = 0x7a45de0000
mmap(0x7a45de5000, 39488, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 8, 0x5000) = 0x7a45de5000
mmap(0x7a45def000, 1448, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 8, 0xf000) = 0x7a45def000
mmap(0x7a45df0000, 1584, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 8, 0xf000) = 0x7a45df0000
mmap(NULL, 520192, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a45d61000
munmap(0x7a45d61000, 131072) = 0
munmap(0x7a45dbc000, 147456) = 0
mmap(0x7a45d81000, 74960, PROT_READ, MAP_PRIVATE|MAP_FIXED, 7, 0) = 0x7a45d81000
mmap(0x7a45d94000, 151648, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 7, 0x13000) = 0x7a45d94000
mmap(0x7a45dba000, 720, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 7, 0x39000) = 0x7a45dba000
mmap(0x7a45dbb000, 848, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 7, 0x39000) = 0x7a45dbb000
mmap(NULL, 520192, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7835aed000
munmap(0x7835aed000, 167936) = 0
munmap(0x7835b2f000, 249856) = 0
mmap(0x7835b16000, 38384, PROT_READ, MAP_PRIVATE|MAP_FIXED, 4, 0) = 0x7835b16000
mmap(0x7835b20000, 46352, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 4, 0xa000) = 0x7835b20000
mmap(0x7835b2c000, 6184, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 4, 0x16000) = 0x7835b2c000
mmap(0x7835b2e000, 2141, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 4, 0x17000) = 0x7835b2e000
mmap(NULL, 520192, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7835a97000
munmap(0x7835a97000, 172032) = 0
munmap(0x7835aec000, 172032) = 0
mmap(0x7835ac1000, 12864, PROT_READ, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x7835ac1000
mmap(0x7835ac5000, 19920, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0x4000) = 0x7835ac5000
mmap(0x7835aca000, 1240, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x9000) = 0x7835aca000
mmap(0x7835acb000, 1337, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x9000) = 0x7835acb000
mmap(0x7835acc000, 131072, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7835acc000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x7835acc000, 131072, ".bss") = 0
mmap(NULL, 1044480, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x78359c2000
munmap(0x78359c2000, 253952) = 0
munmap(0x7835abd000, 16384) = 0
mmap(0x7835a00000, 315992, PROT_READ, MAP_PRIVATE|MAP_FIXED, 6, 0) = 0x7835a00000
mmap(0x7835a4e000, 407904, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 6, 0x4e000) = 0x7835a4e000
mmap(0x7835ab2000, 25704, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 6, 0xb2000) = 0x7835ab2000
mmap(0x7835ab9000, 1169, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 6, 0xb8000) = 0x7835ab9000
mmap(0x7835aba000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7835aba000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x7835aba000, 12288, ".bss") = 0
mprotect(0x7835aca000, 4096, PROT_READ) = 0
mmap(NULL, 2147483648, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x77b5a00000
mprotect(0x7a4c660000, 4096, PROT_READ) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a4c6a8000
mprotect(0x77b5cfa000, 4096, PROT_READ) = 0
mprotect(0x7a4c6a8000, 4096, PROT_READ) = 0
mremap(0x7a4c6a8000, 4096, 4096, MREMAP_MAYMOVE|MREMAP_FIXED, 0x77b5cfa000) = 0x77b5cfa000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a4c6a8000
mprotect(0x77b5dd2000, 4096, PROT_READ) = 0
mprotect(0x7a4c6a8000, 4096, PROT_READ) = 0
mremap(0x7a4c6a8000, 4096, 4096, MREMAP_MAYMOVE|MREMAP_FIXED, 0x77b5dd2000) = 0x77b5dd2000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a4c6a8000
mprotect(0x77b5dd2000, 4096, PROT_READ) = 0
mprotect(0x7a4c6a8000, 4096, PROT_READ) = 0
mremap(0x7a4c6a8000, 4096, 4096, MREMAP_MAYMOVE|MREMAP_FIXED, 0x77b5dd2000) = 0x77b5dd2000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a4c6a8000
mprotect(0x77b5dd2000, 4096, PROT_READ) = 0
mprotect(0x7a4c6a8000, 4096, PROT_READ) = 0
mremap(0x7a4c6a8000, 4096, 4096, MREMAP_MAYMOVE|MREMAP_FIXED, 0x77b5dd2000) = 0x77b5dd2000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a4c6a8000
mprotect(0x77b5dd2000, 4096, PROT_READ) = 0
mprotect(0x7a4c6a8000, 4096, PROT_READ) = 0
mremap(0x7a4c6a8000, 4096, 4096, MREMAP_MAYMOVE|MREMAP_FIXED, 0x77b5dd2000) = 0x77b5dd2000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a4c6a8000
mprotect(0x77b5dd2000, 4096, PROT_READ) = 0
mprotect(0x7a4c6a8000, 4096, PROT_READ) = 0
mremap(0x7a4c6a8000, 4096, 4096, MREMAP_MAYMOVE|MREMAP_FIXED, 0x77b5dd2000) = 0x77b5dd2000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a4c6a8000
mprotect(0x77b5dc1000, 4096, PROT_READ) = 0
mprotect(0x7a4c6a8000, 4096, PROT_READ) = 0
mremap(0x7a4c6a8000, 4096, 4096, MREMAP_MAYMOVE|MREMAP_FIXED, 0x77b5dc1000) = 0x77b5dc1000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a4c6a8000
mprotect(0x77b5dc1000, 4096, PROT_READ) = 0
mprotect(0x7a4c6a8000, 4096, PROT_READ) = 0
mremap(0x7a4c6a8000, 4096, 4096, MREMAP_MAYMOVE|MREMAP_FIXED, 0x77b5dc1000) = 0x77b5dc1000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a4c6a8000
mprotect(0x77b5dc1000, 4096, PROT_READ) = 0
mprotect(0x7a4c6a8000, 4096, PROT_READ) = 0
mremap(0x7a4c6a8000, 4096, 4096, MREMAP_MAYMOVE|MREMAP_FIXED, 0x77b5dc1000) = 0x77b5dc1000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a4c6a8000
mprotect(0x77b5dc1000, 4096, PROT_READ) = 0
mprotect(0x7a4c6a8000, 4096, PROT_READ) = 0
mremap(0x7a4c6a8000, 4096, 4096, MREMAP_MAYMOVE|MREMAP_FIXED, 0x77b5dc1000) = 0x77b5dc1000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a4c6a8000
mprotect(0x77b5dd2000, 4096, PROT_READ) = 0
mprotect(0x7a4c6a8000, 4096, PROT_READ) = 0
mremap(0x7a4c6a8000, 4096, 4096, MREMAP_MAYMOVE|MREMAP_FIXED, 0x77b5dd2000) = 0x77b5dd2000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a4c6a8000
mprotect(0x77b5dd2000, 4096, PROT_READ) = 0
mprotect(0x7a4c6a8000, 4096, PROT_READ) = 0
mremap(0x7a4c6a8000, 4096, 4096, MREMAP_MAYMOVE|MREMAP_FIXED, 0x77b5dd2000) = 0x77b5dd2000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x77b5a00000, 2147483648, "cfi shadow") = 0
mprotect(0x7835b2c000, 8192, PROT_READ) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a4c6a8000
mprotect(0x77b5dc1000, 4096, PROT_READ) = 0
mprotect(0x7a4c6a8000, 4096, PROT_READ) = 0
mremap(0x7a4c6a8000, 4096, 4096, MREMAP_MAYMOVE|MREMAP_FIXED, 0x77b5dc1000) = 0x77b5dc1000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x77b5a00000, 2147483648, "cfi shadow") = 0
mprotect(0x7835bad000, 4096, PROT_READ) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a4c6a8000
mprotect(0x77b5dc1000, 4096, PROT_READ) = 0
mprotect(0x7a4c6a8000, 4096, PROT_READ) = 0
mremap(0x7a4c6a8000, 4096, 4096, MREMAP_MAYMOVE|MREMAP_FIXED, 0x77b5dc1000) = 0x77b5dc1000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x77b5a00000, 2147483648, "cfi shadow") = 0
mprotect(0x7835ab2000, 28672, PROT_READ) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a4c6a8000
mprotect(0x77b5dc1000, 4096, PROT_READ) = 0
mprotect(0x7a4c6a8000, 4096, PROT_READ) = 0
mremap(0x7a4c6a8000, 4096, 4096, MREMAP_MAYMOVE|MREMAP_FIXED, 0x77b5dc1000) = 0x77b5dc1000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x77b5a00000, 2147483648, "cfi shadow") = 0
mprotect(0x7a45dba000, 4096, PROT_READ) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a4c6a8000
mprotect(0x77b5dd2000, 4096, PROT_READ) = 0
mprotect(0x7a4c6a8000, 4096, PROT_READ) = 0
mremap(0x7a4c6a8000, 4096, 4096, MREMAP_MAYMOVE|MREMAP_FIXED, 0x77b5dd2000) = 0x77b5dd2000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x77b5a00000, 2147483648, "cfi shadow") = 0
mprotect(0x7a45def000, 4096, PROT_READ) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a4c6a8000
mprotect(0x77b5dd2000, 4096, PROT_READ) = 0
mprotect(0x7a4c6a8000, 4096, PROT_READ) = 0
mremap(0x7a4c6a8000, 4096, 4096, MREMAP_MAYMOVE|MREMAP_FIXED, 0x77b5dd2000) = 0x77b5dd2000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x77b5a00000, 2147483648, "cfi shadow") = 0
close(3) = 0
close(4) = 0
close(5) = 0
close(6) = 0
close(7) = 0
close(8) = 0
munmap(0x7a4c6a9000, 5962) = 0
munmap(0x7a4c6ab000, 592) = 0
munmap(0x7a4c6ac000, 8656) = 0
munmap(0x7a4c6af000, 688) = 0
munmap(0x7a4c81d000, 11161) = 0
munmap(0x7a4c82b000, 544) = 0
munmap(0x7a4c82c000, 9232) = 0
munmap(0x7a4c830000, 688) = 0
munmap(0x7a4c6b0000, 6360) = 0
munmap(0x7a4c6b2000, 480) = 0
munmap(0x7a4c6b3000, 6336) = 0
munmap(0x7a4c6b5000, 688) = 0
munmap(0x7a4c602000, 104452) = 0
munmap(0x7a4c822000, 7872) = 0
munmap(0x7a4c6b6000, 8240) = 0
munmap(0x7a4c825000, 688) = 0
munmap(0x7a4c6b9000, 30545) = 0
munmap(0x7a4c829000, 1824) = 0
munmap(0x7a4c6c1000, 9584) = 0
munmap(0x7a4c82a000, 688) = 0
munmap(0x7a4c831000, 10060) = 0
munmap(0x7a4d9f5000, 640) = 0
munmap(0x7a4c834000, 7472) = 0
munmap(0x7a4d9f6000, 688) = 0
openat(AT_FDCWD, "/dev/__properties__/u:object_r:build_prop:s0", O_RDONLY|O_NOFOLLOW|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=131072, ...}) = 0
mmap(NULL, 131072, PROT_READ, MAP_SHARED, 3, 0) = 0x7a48da0000
close(3) = 0
mmap(0x78a5cf7000, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x78a5cf7000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x78a5cf7000, 262144, "scudo:primary") = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7a4d9f6000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x7a4d9f6000, 4096, "atexit handlers") = 0
mprotect(0x7a4d9f6000, 4096, PROT_READ) = 0
mprotect(0x7a4d9f6000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x7a4d9f6000, 4096, PROT_READ) = 0
mprotect(0x7a4d9f6000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x7a4d9f6000, 4096, PROT_READ) = 0
mprotect(0x7a4d9f6000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x7a4d9f6000, 4096, PROT_READ) = 0
munmap(0x7a4c6ee000, 409600) = 0
prctl(PR_GET_DUMPABLE) = 1 (SUID_DUMP_USER)
prctl(PR_GET_DUMPABLE) = 1 (SUID_DUMP_USER)
prctl(PR_GET_DUMPABLE) = 1 (SUID_DUMP_USER)
openat(AT_FDCWD, "/dev/__properties__/u:object_r:vendor_socket_hook_prop:s0", O_RDONLY|O_NOFOLLOW|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=131072, ...}) = 0
mmap(NULL, 131072, PROT_READ, MAP_SHARED, 3, 0) = 0x7a4c732000
close(3) = 0
prctl(PR_GET_DUMPABLE) = 1 (SUID_DUMP_USER)
prctl(PR_GET_DUMPABLE) = 1 (SUID_DUMP_USER)
prctl(PR_GET_DUMPABLE) = 1 (SUID_DUMP_USER)
prctl(PR_GET_DUMPABLE) = 1 (SUID_DUMP_USER)
prctl(PR_GET_DUMPABLE) = 1 (SUID_DUMP_USER)
futex(0x7a48943380, FUTEX_WAKE_PRIVATE, 2147483647) = 0
mprotect(0x7a4c8ab000, 409600, PROT_READ) = 0
mprotect(0x7a4c983000, 409600, PROT_READ) = 0
mprotect(0x7a4c7b6000, 409600, PROT_READ) = 0
mprotect(0x7a4c752000, 409600, PROT_READ) = 0
mmap(0x79a5cec000, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x79a5cec000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x79a5cec000, 262144, "scudo:primary") = 0
mmap(0x7915cf7000, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7915cf7000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x7915cf7000, 262144, "scudo:primary") = 0
mmap(0x7875cf7000, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7875cf7000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x7875cf7000, 262144, "scudo:primary") = 0
mmap(0x79b5cf2000, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x79b5cf2000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x79b5cf2000, 262144, "scudo:primary") = 0
getuid() = 10185
getgid() = 10185
getuid() = 10185
getgid() = 10185
rt_sigaction(SIGPIPE, {sa_handler=SIG_IGN, sa_mask=[], sa_flags=SA_RESTART}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
getuid() = 10185
getgid() = 10185
getuid() = 10185
getgid() = 10185
socket(AF_INET, SOCK_STREAM|SOCK_CLOEXEC, IPPROTO_TCP) = 3
setsockopt(3, SOL_TCP, TCP_NODELAY, [1], 4) = 0
mmap(0x78b5cf6000, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x78b5cf6000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x78b5cf6000, 262144, "scudo:primary") = 0
mmap(0x7845cf1000, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7845cf1000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x7845cf1000, 262144, "scudo:primary") = 0
uname({sysname="Linux", nodename="localhost", ...}) = 0
mmap(0x7965cf9000, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7965cf9000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x7965cf9000, 262144, "scudo:primary") = 0
bind(3, {sa_family=AF_INET, sin_port=htons(735), sin_addr=inet_addr("0.0.0.0")}, 16) = -1 EACCES (Permission denied)
fcntl(3, F_GETFL) = 0x2 (flags O_RDWR)
fcntl(3, F_SETFL, O_RDWR|O_NONBLOCK) = 0
setsockopt(3, SOL_SOCKET, SO_LINGER, {l_onoff=1, l_linger=0}, 8) = 0
setsockopt(3, SOL_SOCKET, SO_KEEPALIVE, [1], 4) = 0
setsockopt(3, SOL_TCP, TCP_KEEPIDLE, [60], 4) = 0
setsockopt(3, SOL_TCP, TCP_KEEPINTVL, [60], 4) = 0
setsockopt(3, SOL_TCP, TCP_KEEPCNT, [3], 4) = 0
openat(AT_FDCWD, "/dev/__properties__/u:object_r:vendor_mtk_app_prop:s0", O_RDONLY|O_NOFOLLOW|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=131072, ...}) = 0
mmap(NULL, 131072, PROT_READ, MAP_SHARED, 4, 0) = 0x7a4c712000
close(4) = 0
getsockopt(3, SOL_SOCKET, SO_DOMAIN, [2], [4]) = 0
socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC, 0) = 4
connect(4, {sa_family=AF_UNIX, sun_path="/dev/socket/fwmarkd"}, 110) = 0
sendmsg(4, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", iov_len=16}, {iov_base=NULL, iov_len=0}], msg_iovlen=2, msg_control=[{cmsg_len=20, cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, cmsg_data=[3]}], msg_controllen=24, msg_flags=0}, 0) = 16
recvfrom(4, "\0\0\0\0", 4, 0, NULL, NULL) = 4
close(4) = 0
connect(3, {sa_family=AF_INET, sin_port=htons(111), sin_addr=inet_addr("192.168.72.12")}, 16) = -1 EINPROGRESS (Operation now in progress)
socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC, 0) = 4
connect(4, {sa_family=AF_UNIX, sun_path="/dev/socket/fwmarkd"}, 110) = 0
sendmsg(4, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\6\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", iov_len=16}, {iov_base="s\0\0\0\0\0\0\0\2\0\0o\300\250H\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=36}], msg_iovlen=2, msg_control=[{cmsg_len=20, cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, cmsg_data=[3]}], msg_controllen=24, msg_flags=0}, 0) = 52
recvfrom(4, "\0\0\0\0", 4, 0, NULL, NULL) = 4
close(4) = 0
ppoll([{fd=3, events=POLLOUT}], 1, {tv_sec=0, tv_nsec=100000000}, NULL, 0) = 1 ([{fd=3, revents=POLLOUT|POLLERR|POLLHUP}], left {tv_sec=0, tv_nsec=99996000})
getsockopt(3, SOL_SOCKET, SO_ERROR, [ECONNREFUSED], [4]) = 0
close(3) = 0
write(2, "Failed to get exports for server"..., 48Failed to get exports for server 192.168.72.12.
) = 48
mprotect(0x7a4d9f6000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x7a4d9f6000, 4096, PROT_READ) = 0
mprotect(0x7a4d9f6000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x7a4d9f6000, 4096, PROT_READ) = 0
mprotect(0x7a4d9f6000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x7a4d9f6000, 4096, PROT_READ) = 0
exit_group(-1) = ?
+++ exited with 255 +++
~ $
The Network File System (NFS) server setup is documented at https://gist.github.com/NoteAfterNote/e1719f4029b91918d996216939d5bff2 ("Testing: Termux, proot-distro, Network File System (NFS)"). unfs3 (https://github.com/unfs3/unfs3) is the server running under Alpine Linux minirootfs (proot-distro, real root access is not available), the server IP address is 192.168.72.12, "unfsd -t -m 2049 -n 2049 -d -p -e /storage/emulated/0/Download/exports" starts successfully, and mounting a share from Fedora Linux 42 works.
Here's what happens when nfs-ls (https://github.com/termux/termux-packages/tree/master/packages/libnfs) is executed in the Termux (https://github.com/termux/termux-app) shell (not proot-distro):
Here is an excerpt from termux-2025-december-2-nfs-ls-full-strace.txt: