Всем привет!

Я хочу, чтобы в chroot /home/user исполнялось ls . Надо для
древнючего netkit ftpd, который одному товарищу хочется, потому как
совместимо с живущим у него старинным FTP клиентом - а vsftpd с ним
отваливается постоянно. Оный netkit ftpd по команде ls выполняет /bin/ls на
машине, соответственно, если он сделал chroot юзеру - то в chrooted
environment и выполняет.

Пытаемся разобраться какие файлы нужны ls.

# ldd /bin/ls
       linux-vdso.so.1 (0x00007ffe82161000)
       libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1
(0x00007f54dbf1a000)
       libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f54dbd46000)
       libpcre2-8.so.0 => /lib/x86_64-linux-gnu/libpcre2-8.so.0
(0x00007f54dbcae000)
       libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f54dbca8000)
       /lib64/ld-linux-x86-64.so.2 (0x00007f54dbf72000)
       libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0
(0x00007f54dbc86000)


Первый из файлов не находится нигде, остальные скопировал в
/home/testuser/lib(или lib64)/дальше как указано, скопировал саму команду в
/home/bin/ls . Не работает.

Массовое копирование /usr/lib, /usr/lib64 и /usr/bin в /home/testuser/lib,
/home/testuser/lib64, /home/testuser/bin помогает. Но как-то это грубовато
и гигабайт диска коту под хвост.

Как бы всё же выяснить нужный набор файлов для ls?

Альтернатива - где-то взять статический ls. Взял busybox, который при
переименовании в ls вроде бы изображает из себя ls. Положил в
/home/testuser/bin под именем ls. Н работает он с netkit ftpd, уж не знаю
почему.

Более того, я положил его же как /home/testuser/bin/bash - но при вводе
команды chroot /home/testuser получаю failed to run command ‘/bin/bash’: No
such file or directory  . Положил busybox как home/testuser/bin/sh ,
сделал  home/testuser/bin/bash симлинком на него - та же ошибка. То есть
почему-то в chroot этот busybox не воспринимается адекватно.

-- 
Yours, Misha Ramendik

Unless explicitly stated, all opinions in my mail are my own and do not
reflect the views of any organization

Ответить