Mac OS X で chroot 環境を作るときのメモ
- 配下に chroot 環境を作成するディレクトリを作成する (ここでは仮にそのディレクトリへの絶対パスを $CHROOT_ENV_ROOT とする)
- $CHROOT_ENV_ROOT 配下に以下のディレクトリを作る
- bin
- usr/bin
- usr/lib
- 以下の必須ライブラリを $CHROOT_ENV_ROOT 配下にコピーする
- その他シェルなど chroot 環境で使いたいプログラムもコピーする。そのプログラムが依存するダイナミックライブラリを otool コマンドで調べて、それも合わせて 3. の要領でコピーする。
otool コマンドの使用例
$ otool -L /bin/bash /bin/bash: /usr/lib/libncurses.5.4.dylib (compatibility version 5.4.0, current version 5.4.0) /usr/lib/libiconv.2.dylib (compatibility version 7.0.0, current version 7.0.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 111.0.0) /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)
この場合では、必須ライブラリの他に、 libiconv.2.dylib と libncurses.5.4.dylib に依存していることが分かる。