Docker 上で32bit ELFファイルを実行すると No such file or directory と出てしまう

ハマったのでメモ

久しぶりにCTF のためにMac 上にLinux 環境を構築しようとしたらファイルシステムの関係でVirtualBox が使えなくなっていた。 面倒なのでDocker で構築してみることに。

qiita.com

こちらを参考にkali-linux のコンテナを作成してみたが、いざelf ファイルを実行しようとすると

No such file or directory

と出てしまいました。確かにファイルはそこにあるのに...

今まで遭遇したことがなかったのでDocker のせいだと思っていたのですが実は全く関係なく、64bit OS のLinux 上で32bit のバイナリファイルを実行しようとするとこのようになるそう

askubuntu.com

解決法

32bit Linux OS のDockerイメージは今のところ無いそうなので、64bit 上で動かせるようにするしかなさそうです。

apt-get install lib32z1

これを入れるだけでした。

sonickun.hatenablog.com