Tôi hiện đang có một vấn đề kỳ lạ trên debian (wheezy / amd64).
Tôi đã tạo một chroot để cài đặt một máy chủ (tôi không thể cung cấp thêm chi tiết về nó, xin lỗi). Hãy gọi con đường của nó /chr_path/
. Để làm cho mọi thứ dễ dàng, tôi đã khởi tạo chroot này bằng một debootstrap (cũng là wheezy / amd64).
Tất cả dường như hoạt động tốt bên trong chroot nhưng khi tôi khởi động tập lệnh cài đặt của máy chủ thì tôi nhận được:
zsh: Not found /some_path/perl
(trình cài đặt bao gồm một nhị phân perl vì một số lý do)
Đương nhiên, tôi đã kiểm tra /some_path/
vị trí và tôi tìm thấy nhị phân "perl". file
trong môi trường chroot trả về:
/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
Các tập tin tồn tại, có vẻ ok, có quyền chính xác. Tôi có thể sử dụng file
, ls
, vim
trên đó nhưng ngay sau khi tôi cố gắng thực hiện nó - ./perl
ví dụ - Tôi nhận được: zsh: Not found ./perl
.
Tình huống này khá dễ hiểu đối với tôi. Hơn thế nữa :
- Tôi có thể thực thi các nhị phân cơ bản khác (/ bin / ls, ...) trong chroot mà không gặp lỗi
- Tôi có vấn đề tương tự cho các nhị phân khác đi kèm với dự án
- Khi tôi cố gắng thực thi nhị phân từ root chính (
/chr_path/some_path/perl
), nó hoạt động. - Tôi đã cố gắng đặt một trong những nhị phân với một bản sao của tôi
ls
. Tôi đã kiểm tra rằng các quyền truy cập là như nhau nhưng điều này không thay đổi bất cứ điều gì (một cái đang hoạt động và cái kia thì không)
libc6-i386
gói hoặcia32-libs
nếu bạn muốn có nhiều thư viện).