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 以下のライブラリを用意する。どうしてこのようになっているかについて、私はまだきちんと理解できていない。おそらくダイナミックリンク機構が導入された経緯など、歴史的な背景があるのだと思う。
昨日の調査結果を踏まえて、ちょっとした Perl スクリプトを書いてみた。usbhidctl の出力を受け取って解釈し、センサ値を表示する。
$ usbhidctl -f /dev/uhid0 -la | perl jmbadge.pl
3D Accelerometer: X:-0.023, Y:-0.235, Z:-1.108
Ambient Light Sensor: 1888.968
Touch Sensor(L): 0 0 0 0
Touch Sensor(R): 0 0 0 0
こんな感じでセンサ値を繰り返し表示する。このたびの東北地方太平洋沖地震で被災された皆さまへ、心よりお見舞い申し上げます。私は仙台市に住んでいたこともありますし、現在も東北各地のユーザを抱える仕事に携わっておりますので他人事ではありません。
さて、これから電気の話です。首都圏では予期される電力不足に際して節電が呼びかけられています。北海道から東北への送電能力には限りがありますので、こちらでの節電は直接被災地の助けにはならないとも伝えられています。しかしながら今後の各地への燃料供給を考えると全く意味のないことではないのかも知れません。この辺りは当地の電力会社からの広報があれば、私はそれに沿って協力することにします。
皆様方には災害時に備えて、非常用照明や電池などの準備された向きもあるかと思いますが、ここで以前の記事、くたびれかけた乾電池1本でも点灯できる LED 照明を改めて紹介させていただきます。
トランジスタ技術誌増刊の「組み合わせ自在! 超小型ARMマイコン基板」を購入した。これは ARM Coretex-M0 マイコンを使用した小型基板(MARY-MB)で「2枚入り」と銘打たれているように多数組み合わせて使うことを前提に設計されているのが面白い。OLEDやGPS等、多くの拡張基板も用意されている。楽しみなプラットフォームだ。