Wed 03/02, 2011

chroot on netbsd5 [Computer and Networking ]

NetBSD-5/i386 で chroot 環境を作る際にちょっと嵌ってしまったのでメモ。基本的には「ssh を chroot 環境にする(NetBSD 絹の日記)」の説明にあるとおりに設定するのだが、これだけだと /usr/bin 以下のコマンドなどが実行できない(/bin や /rescue 以下のコマンドは実行できる)。解決するためには /libexec と同様に /usr/libexec/ld.elf_so (/libexec/ld.elf_so へのシンボリックリンク)を用意すれば良い。これは ELF バイナリの違いによるもので、/bin 以下のものが .interp セクションで /libexec/ld.elf_so を指しているのに対して、それ以外のものが /usr/libexec/ld.elf_so を指していることに拠る。後は必要に応じて /usr/lib 以下のライブラリを用意する。どうしてこのようになっているかについて、私はまだきちんと理解できていない。おそらくダイナミックリンク機構が導入された経緯など、歴史的な背景があるのだと思う。

Posted by masato at 10:21 PM
このエントリーのトラックバックURL: http://bird.dip.jp/cgi-bin/mt/mt-tb.cgi/1794
コメントする

おそらく携帯電話等からは投稿できません。日本語文字列を含まないコメントやトラックバック、および当サイトへの言及を含まないトラックバックは御遠慮いただいております。また、90日以上経過した記事へのコメントはできません。










名前、アドレスを登録しますか?