私はubuntu Linuxを使用しています。binfmt に ARM インタープリターのサポートを追加しようとしています。許可拒否エラーが発生しています。
私のマシンに binfmt のサポートを追加しました:---
sudo apt-get install binfmt-support
ディレクトリ binfmt_misc の ls :--
ignite@ignite:/proc/sys/fs/binfmt_misc$ ls
python2.7 python3.2 register status
binfmt_misc ファイルシステムは正しくマウントされています:---
ignite@ignite:/proc/sys/fs/binfmt_misc$ mount
/dev/sda8 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
none on /run/user type tmpfs (rw,noexec,nosuid,nodev,size=104857600,mode=0755)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)
gvfsd-fuse on /run/user/ignite/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=ignite)
モジュールは稼働中です:---
ignite@ignite:/proc/sys/fs/binfmt_misc$ cat /proc/modules | grep binfmt*
binfmt_misc 17260 1 - Live 0x00000000
ステータスが有効になっている:-----
ignite@ignite:/proc/sys/fs/binfmt_misc$ cat status
enabled
sudo
:---を使用してもファイルを登録するためのエコー時にエラーが発生する
ignite@ignite:/proc/sys/fs/binfmt_misc$ sudo echo ':arm:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/var/local/rpi/qemu/bin/qemu-arm:' > /proc/sys/fs/binfmt_misc/register
bash: /proc/sys/fs/binfmt_misc/register: Permission denied
sudo であっても、エコーして登録できないのはなぜですか?
編集:---
このコマンドは機能しており、arm フォルダーが作成されています:---
ignite@ignite$ echo "echo ':arm:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/local/bin/qemu-arm:' > /proc/sys/fs/binfmt_misc/register" | sudo sh
ignite@ignite:/proc/sys/fs/binfmt_misc$ ls
arm python2.7 python3.2 register status
ignite@ignite:/proc/sys/fs/binfmt_misc$ cat arm
enabled
interpreter /usr/local/bin/qemu-arm
flags:
offset 0
magic 7f454c4601010100000000000000000002002800
mask ffffffffffffff00fffffffffffffffffeffffff
しかし、arm 実行可能ファイルを実行できません。これは、pre compiled program
Hello の世界です。
ignite@ignite:~/testing$ file a.out
a.out: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 3.6.3, not stripped
ignite@ignite:~/testing$ ./a.out
/lib/ld-linux-armhf.so.3: No such file or directory
この arm 実行可能ファイルを実行するには、chroot を実行する必要がありますか??