chrootで "ls"コマンドを実行するには?

chrootで

ブラウザシェルがありますベルトPHPでシェルコマンドを実行し、それをブラウザに返しています。変更されたばかりのルートのルートlsディレクトリで実行したいchrootコマンドが見つかりました。実際にbash -c "ls /"これを実行する必要があります。 sudoを使用すると動作しません):

sudo chroot ~/projects/jcubic/leash ls

しかし、エラーが発生しました。

chroot: failed to run command ‘ls’: No such file or directory

このコマンドを正しく使用していますか?別のルートディレクトリでlsを実行できますか?

sudoなしでchrootを実行しようとすると、次のエラーが発生します。

chroot: cannot change root directory to '/home/kuba/projects/jcubic/leash': Operation not permitted

ベストアンサー1

chroot: failed to run command ‘ls’: No such file or directory

chrootでコマンドを実行するには、chrootでプログラムを使用できるようにする必要があります(/ファイルシステムにインストールされているプログラムが使用できないため)。

最も簡単な方法は/usr/bin/lsからにコピーすることです/home/kuba/projects/jcubic/leash/usr/bin/(依存共有ライブラリも必要です)ldd /usr/bin/ls

おすすめ記事