現在、debian(wheezy / amd64)に奇妙な問題があります。
サーバーをインストールするためにchrootを作成しました(詳細については説明できませんが、申し訳ありません)。そのパスを呼び出しましょう/chr_path/
。物事を簡単にするために、このchrootをdebootstrap(wheezy / amd64も)で初期化しました。
すべてはchroot内でうまく機能しているように見えましたが、サーバーのインストーラースクリプトを起動したとき、次のようになりました:(
zsh: Not found /some_path/perl
インストーラーには何らかの理由でperlバイナリが含まれています)
当然、/some_path/
場所を確認し、「perl」バイナリを見つけました。file
chroot環境では以下を返します。
/some_path/perl ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.2.5, not stripped
ファイルが存在し、問題ないようで、正しい権限があります。使用できますfile
がls
、vim
それを実行しようとするとすぐに- ./perl
例えば-私は得る:zsh: Not found ./perl
。
この状況は私にはかなり理解できます。さらに:
- エラーを発生させることなく、chrootで他の基本的なバイナリ(/ bin / ls、...)を実行できます。
- プロジェクトに付属している他のバイナリにも同じ問題があります
- メインルート(
/chr_path/some_path/perl
)からバイナリを実行しようとすると、動作します。 - 私は私のバイナリのコピーでバイナリの1つを入れようとしました
ls
。アクセス権が同じであることを確認しましたが、これは何も変更しませんでした(1つは機能していましたが、もう1つは機能していませんでした)
libc6-i386
パッケージ、またはia32-libs
多数のライブラリが必要な場合)。