1

I'm attempting to get a chroot jail working with dropbear on an embedded Linux system. I'm using this page as a guide, although I'm having to tailor it slightly for my target.

I believe everything should be set up properly. However, when I try to connect, it appears that the shell is nearly immediately exiting.

I've captured the output of strace (below is what I believe is the relevant portion of the output) - it's just the output of the busybox process that should be handling the shell.

Here is the output of dropbear after firing it up and trying to connect (I don't think the failure to load those keys is a problem, it successfully loaded the RSA key, which is all we need for this to work without the chroot jail):

[1752] Apr 24 16:23:50 Failed loading /etc/dropbear/dropbear_dss_host_key
[1752] Apr 24 16:23:50 Failed loading /etc/dropbear/dropbear_ecdsa_host_key
[1752] Apr 24 16:23:50 Not backgrounding
[1757] Apr 24 16:23:57 Child connection from 192.168.3.113:52163
[1757] Apr 24 16:23:57 Pubkey auth succeeded for 'filexfer' with key md5 f3:1d:ff:a5:29:7b:1e:e8:fe:0b:b4:bf:e8:33:a4:15 from 192.168.3.113:52163
[1757] Apr 24 16:23:57 Exit (filexfer): Exited normally

Here's the strace output I think is relevant.

[pid  1737] rt_sigaction(SIGCHLD, {SIG_DFL, [CHLD], SA_RESTART|0x4000000},  <unfinished ...>
[pid  1737] <... rt_sigaction resumed> {0x225e4, [], SA_NOCLDSTOP|0x4000000}, 8) = 0
[pid  1737] dup2(6, 0)                  = 0
[pid  1737] dup2(9, 1)                  = 1
[pid  1737] dup2(11, 2)                 = 2
[pid  1737] close(7)                    = 0
[pid  1737] close(6)                    = 0
[pid  1737] close(8)                    = 0
[pid  1737] close(9)                    = 0
[pid  1737] close(10)                   = 0
[pid  1737] close(11)                   = 0
[pid  1737] open("/dev/urandom", O_RDONLY|O_LARGEFILE) = 6
[pid  1737] select(7, [6], NULL, NULL, {2, 0}) = 1 (in [6], left {1, 999988})
[pid  1737] read(6, "\207\203\\\207\211\35.EA\340[\260\356h\345n\366\36\256d\252O\236\371N\"\352\4\330\5i4", 32) = 32
[pid  1737] close(6)                    = 0
[pid  1737] open("/proc/timer_list", O_RDONLY|O_LARGEFILE) = 6
[pid  1737] select(7, [6], NULL, NULL, {2, 0}) = 1 (in [6], left {1, 999992})
[pid  1737] read(6, "Timer List Version: v0.7\nHRTIMER"..., 4096) = 2450
[pid  1737] select(7, [6], NULL, NULL, {2, 0}) = 1 (in [6], left {1, 999991})
[pid  1737] read(6, "", 4096)           = 0
[pid  1737] close(6)                    = 0
[pid  1737] open("/proc/interrupts", O_RDONLY|O_LARGEFILE) = 6
[pid  1737] select(7, [6], NULL, NULL, {2, 0}) = 1 (in [6], left {1, 999994})
[pid  1737] read(6, "           CPU0       \n 28:     "..., 4096) = 1213
[pid  1737] select(7, [6], NULL, NULL, {2, 0}) = 1 (in [6], left {1, 999994})
[pid  1737] read(6, "", 4096)           = 0
[pid  1737] close(6)                    = 0
[pid  1737] open("/proc/loadavg", O_RDONLY|O_LARGEFILE) = 6
[pid  1737] select(7, [6], NULL, NULL, {2, 0}) = 1 (in [6], left {1, 999993})
[pid  1737] read(6, "0.00 0.01 0.05 1/65 1737\n", 4096) = 25
[pid  1737] select(7, [6], NULL, NULL, {2, 0}) = 1 (in [6], left {1, 999994})
[pid  1737] read(6, "", 4096)           = 0
[pid  1737] close(6)                    = 0
[pid  1737] open("/proc/sys/kernel/random/entropy_avail", O_RDONLY|O_LARGEFILE) = 6
[pid  1737] select(7, [6], NULL, NULL, {2, 0}) = 1 (in [6], left {1, 999982})
[pid  1737] read(6, "196\n", 4096)      = 4
[pid  1737] select(7, [6], NULL, NULL, {2, 0}) = 1 (in [6], left {1, 999993})
[pid  1737] read(6, "", 4096)           = 0
[pid  1737] close(6)                    = 0
[pid  1737] open("/proc/net/netstat", O_RDONLY|O_LARGEFILE) = 6
[pid  1737] select(7, [6], NULL, NULL, {2, 0}) = 1 (in [6], left {1, 999989})
[pid  1737] read(6, "TcpExt: SyncookiesSent Syncookie"..., 4096) = 2010
[pid  1737] select(7, [6], NULL, NULL, {2, 0}) = 1 (in [6], left {1, 999994})
[pid  1737] read(6, "", 2086)           = 0
[pid  1737] close(6)                    = 0
[pid  1737] open("/proc/net/dev", O_RDONLY|O_LARGEFILE) = 6
[pid  1737] select(7, [6], NULL, NULL, {2, 0}) = 1 (in [6], left {1, 999994})
[pid  1737] read(6, "Inter-|   Receive               "..., 4096) = 569
[pid  1737] select(7, [6], NULL, NULL, {2, 0}) = 1 (in [6], left {1, 999995})
[pid  1737] read(6, "", 3527)           = 0
[pid  1737] close(6)                    = 0
[pid  1737] open("/proc/net/tcp", O_RDONLY|O_LARGEFILE) = 6
[pid  1737] select(7, [6], NULL, NULL, {2, 0}) = 1 (in [6], left {1, 999994})
[pid  1737] read(6, "  sl  local_address rem_address "..., 4096) = 450
[pid  1737] select(7, [6], NULL, NULL, {2, 0}) = 1 (in [6], left {1, 999994})
[pid  1737] read(6, "", 3646)           = 0
[pid  1737] close(6)                    = 0
[pid  1737] open("/proc/net/rt_cache", O_RDONLY|O_LARGEFILE) = 6
[pid  1737] select(7, [6], NULL, NULL, {2, 0}) = 1 (in [6], left {1, 999993})
[pid  1737] read(6, "Iface\tDestination\tGateway \tFlags"..., 4096) = 128
[pid  1737] select(7, [6], NULL, NULL, {2, 0}) = 1 (in [6], left {1, 999994})
[pid  1737] read(6, "", 3968)           = 0
[pid  1737] close(6)                    = 0
[pid  1737] open("/proc/vmstat", O_RDONLY|O_LARGEFILE) = 6
[pid  1737] select(7, [6], NULL, NULL, {2, 0}) = 1 (in [6], left {1, 999994})
[pid  1737] read(6, "nr_free_pages 112743\nnr_alloc_ba"..., 4096) = 1658
[pid  1737] select(7, [6], NULL, NULL, {2, 0}) = 1 (in [6], left {1, 999994})
[pid  1737] read(6, "", 4096)           = 0
[pid  1737] close(6)                    = 0
[pid  1737] gettimeofday({1493050478, 344430}, NULL) = 0
[pid  1737] times({tms_utime=0, tms_stime=0, tms_cutime=0, tms_cstime=0}) = 144217
[pid  1737] open("/dev/urandom", O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 6
[pid  1737] fstat64(6, {st_mode=S_IFCHR|0666, st_rdev=makedev(1, 9), ...}) = 0
[pid  1737] ioctl(6, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, 0xbe98c13c) = -1 EINVAL (Invalid argument)
[pid  1737] mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb6f31000
[pid  1737] write(6, "\3672\272 <\300W\16\340j\0210gr\207+\242\267\303JE\20oc\35\17K\337|O\242\274", 32) = 32
[pid  1737] close(6)                    = 0
[pid  1737] munmap(0xb6f31000, 4096)    = 0
[pid  1737] getuid32()                  = 0
[pid  1737] setgid32(2000)              = 0
[pid  1737] open("/proc/sys/kernel/ngroups_max", O_RDONLY) = 6
[pid  1737] read(6, "65536\n", 31)      = 6
[pid  1737] close(6)                    = 0
[pid  1737] socket(PF_LOCAL, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 6
[pid  1737] connect(6, {sa_family=AF_LOCAL, sun_path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory)
[pid  1737] close(6)                    = 0
[pid  1737] socket(PF_LOCAL, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 6
[pid  1737] connect(6, {sa_family=AF_LOCAL, sun_path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory)
[pid  1737] close(6)                    = 0
[pid  1737] open("/etc/group", O_RDONLY|O_CLOEXEC) = 6
[pid  1737] _llseek(6, 0, [0], SEEK_CUR) = 0
[pid  1737] fstat64(6, {st_mode=S_IFREG|0644, st_size=17, ...}) = 0
[pid  1737] mmap2(NULL, 17, PROT_READ, MAP_SHARED, 6, 0) = 0xb6f31000
[pid  1737] _llseek(6, 17, [17], SEEK_SET) = 0
[pid  1737] fstat64(6, {st_mode=S_IFREG|0644, st_size=17, ...}) = 0
[pid  1737] munmap(0xb6f31000, 17)      = 0
[pid  1737] close(6)                    = 0
[pid  1737] setgroups32(1, [2000])      = 0
[pid  1737] setuid32(2000)              = 0
[pid  1737] chdir("/home/filexfer")     = 0
[pid  1737] rt_sigaction(SIGPIPE, {SIG_DFL, [PIPE], SA_RESTART|0x4000000}, {SIG_IGN, [PIPE], SA_RESTART|0x4000000}, 8) = 0
[pid  1737] close(3)                    = 0
[pid  1737] close(4)                    = 0
[pid  1737] close(5)                    = 0
[pid  1737] execve("/bin/sh", ["sh", "-c", "/usr/lib/openssh/sftp-server"], [/* 6 vars */]) = 0
[pid  1737] brk(0)                      = 0xa0000
[pid  1737] uname({sys="Linux", node="unknown", ...}) = 0
[pid  1737] access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
[pid  1737] mmap2(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb6fec000
[pid  1737] access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
[pid  1737] open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/arm-linux-gnueabihf/tls/v7l/neon/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/arm-linux-gnueabihf/tls/v7l/neon/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/arm-linux-gnueabihf/tls/v7l/neon/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/arm-linux-gnueabihf/tls/v7l/neon", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/arm-linux-gnueabihf/tls/v7l/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/arm-linux-gnueabihf/tls/v7l/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/arm-linux-gnueabihf/tls/v7l/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/arm-linux-gnueabihf/tls/v7l", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/arm-linux-gnueabihf/tls/neon/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/arm-linux-gnueabihf/tls/neon/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/arm-linux-gnueabihf/tls/neon/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/arm-linux-gnueabihf/tls/neon", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/arm-linux-gnueabihf/tls/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/arm-linux-gnueabihf/tls/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/arm-linux-gnueabihf/tls/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/arm-linux-gnueabihf/tls", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/arm-linux-gnueabihf/v7l/neon/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/arm-linux-gnueabihf/v7l/neon/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/arm-linux-gnueabihf/v7l/neon/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/arm-linux-gnueabihf/v7l/neon", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/arm-linux-gnueabihf/v7l/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/arm-linux-gnueabihf/v7l/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/arm-linux-gnueabihf/v7l/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/arm-linux-gnueabihf/v7l", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/arm-linux-gnueabihf/neon/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/arm-linux-gnueabihf/neon/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/arm-linux-gnueabihf/neon/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/arm-linux-gnueabihf/neon", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/arm-linux-gnueabihf/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/arm-linux-gnueabihf/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/arm-linux-gnueabihf/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/arm-linux-gnueabihf", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/usr/lib/arm-linux-gnueabihf/tls/v7l/neon/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/usr/lib/arm-linux-gnueabihf/tls/v7l/neon/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/usr/lib/arm-linux-gnueabihf/tls/v7l/neon/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/usr/lib/arm-linux-gnueabihf/tls/v7l/neon", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/usr/lib/arm-linux-gnueabihf/tls/v7l/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/usr/lib/arm-linux-gnueabihf/tls/v7l/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/usr/lib/arm-linux-gnueabihf/tls/v7l/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/usr/lib/arm-linux-gnueabihf/tls/v7l", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/usr/lib/arm-linux-gnueabihf/tls/neon/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/usr/lib/arm-linux-gnueabihf/tls/neon/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/usr/lib/arm-linux-gnueabihf/tls/neon/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/usr/lib/arm-linux-gnueabihf/tls/neon", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/usr/lib/arm-linux-gnueabihf/tls/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/usr/lib/arm-linux-gnueabihf/tls/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/usr/lib/arm-linux-gnueabihf/tls/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/usr/lib/arm-linux-gnueabihf/tls", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/usr/lib/arm-linux-gnueabihf/v7l/neon/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/usr/lib/arm-linux-gnueabihf/v7l/neon/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/usr/lib/arm-linux-gnueabihf/v7l/neon/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/usr/lib/arm-linux-gnueabihf/v7l/neon", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/usr/lib/arm-linux-gnueabihf/v7l/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/usr/lib/arm-linux-gnueabihf/v7l/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/usr/lib/arm-linux-gnueabihf/v7l/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/usr/lib/arm-linux-gnueabihf/v7l", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/usr/lib/arm-linux-gnueabihf/neon/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/usr/lib/arm-linux-gnueabihf/neon/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/usr/lib/arm-linux-gnueabihf/neon/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/usr/lib/arm-linux-gnueabihf/neon", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/usr/lib/arm-linux-gnueabihf/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/usr/lib/arm-linux-gnueabihf/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/usr/lib/arm-linux-gnueabihf/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/usr/lib/arm-linux-gnueabihf", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/tls/v7l/neon/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/tls/v7l/neon/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/tls/v7l/neon/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/tls/v7l/neon", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/tls/v7l/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/tls/v7l/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/tls/v7l/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/tls/v7l", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/tls/neon/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/tls/neon/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/tls/neon/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/tls/neon", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/tls/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/tls/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/tls/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/tls", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/v7l/neon/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/v7l/neon/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/v7l/neon/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/v7l/neon", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/v7l/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/v7l/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/v7l/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/v7l", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/neon/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/neon/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/neon/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/neon", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/vfp/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  1737] stat64("/lib/vfp", 0xbec864f0) = -1 ENOENT (No such file or directory)
[pid  1737] open("/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
[pid  1737] read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\335\4\214D4\0\0\0"..., 512) = 512
[pid  1737] lseek(3, 887460, SEEK_SET)  = 887460
[pid  1737] read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1480) = 1480
[pid  1737] lseek(3, 885236, SEEK_SET)  = 885236
[pid  1737] read(3, "A4\0\0\0aeabi\0\1*\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 53) = 53
[pid  1737] fstat64(3, {st_mode=S_IFREG|0755, st_size=888940, ...}) = 0
[pid  1737] mmap2(0x448a8000, 928112, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x448a8000
[pid  1737] mprotect(0x4497d000, 32768, PROT_NONE) = 0
[pid  1737] mmap2(0x44985000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xd5000) = 0x44985000
[pid  1737] mmap2(0x44989000, 6512, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x44989000
[pid  1737] close(3)                    = 0
[pid  1737] mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb6feb000
[pid  1737] set_tls(0xb6feb820, 0xb6febef8, 0x44817048, 0xb6feb820, 0xb6feb158) = 0
[pid  1737] mprotect(0x44985000, 8192, PROT_READ) = 0
[pid  1737] mprotect(0x44816000, 4096, PROT_READ) = 0
[pid  1737] getuid32()                  = 2000
[pid  1737] stat64("/etc/busybox.conf", 0xbec86b80) = -1 ENOENT (No such file or directory)
[pid  1737] getgid32()                  = 2000
[pid  1737] setgid32(2000)              = 0
[pid  1737] setuid32(2000)              = 0
[pid  1737] brk(0)                      = 0xa0000
[pid  1737] brk(0xc1000)                = 0xc1000
[pid  1737] getpid()                    = 1737
[pid  1737] rt_sigaction(SIGCHLD, {SIG_DFL, [CHLD], SA_RESTART|0x4000000}, {SIG_DFL, [], 0}, 8) = 0
[pid  1737] rt_sigaction(SIGHUP, {SIG_DFL, [HUP], SA_RESTART|0x4000000}, {SIG_DFL, [], 0}, 8) = 0
[pid  1737] getppid()                   = 1736
[pid  1737] getcwd("/home/filexfer", 4096) = 15
[pid  1737] rt_sigaction(SIGINT, NULL, {SIG_DFL, [], 0}, 8) = 0
[pid  1737] rt_sigaction(SIGINT, {0x37dbc, ~[RTMIN RT_1], 0x4000000 /* SA_??? */}, NULL, 8) = 0
[pid  1737] rt_sigaction(SIGQUIT, NULL, {SIG_DFL, [], 0}, 8) = 0
[pid  1737] rt_sigaction(SIGQUIT, {SIG_IGN, ~[RTMIN RT_1], 0x4000000 /* SA_??? */}, NULL, 8) = 0
[pid  1737] rt_sigaction(SIGTERM, NULL, {SIG_DFL, [], 0}, 8) = 0
[pid  1737] rt_sigaction(SIGTERM, {SIG_DFL, ~[RTMIN RT_1], 0x4000000 /* SA_??? */}, NULL, 8) = 0
[pid  1737] clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb6feb3c8) = 1738
[pid  1737] wait4(-1, Process 1738 attached
[pid  1737] <... wait4 resumed> [{WIFEXITED(s) && WEXITSTATUS(s) == 127}], 0, NULL) = 1738
[pid  1737] --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=1738, si_status=127, si_utime=0, si_stime=0} ---
[pid  1737] exit_group(127)             = ?
[pid  1737] +++ exited with 127 +++
1

It turns out that I was missing one of the libnss* libraries in my chroot filesystem, which I figured out by spending a lot of time meticulously looking through the huge amount of strace output.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.