玄箱Pro、直します。

超初心者が、玄箱PROでLinuxを勉強する無謀なブログです。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
別窓 | スポンサー広告
∧top | under∨

miconaplなどの導入(2)

前回、miconapl・nvramに必要なライブラリとmiconapl・nvramそのものをコピーしました。
その結果、ライブラリへのPATHとコマンドそのものへのPATHを毎回指定さえすれば動かすことができました。

例)
kurobox:~# LD_LIBRARY_PATH=/usr/local/kurobox/lib /usr/local/kurobox/bin/miconapl -b -a temp_get
#[miconapl.temp_get]
temp=33
kurobox:~# LD_LIBRARY_PATH=/usr/local/kurobox/lib /usr/local/kurobox/bin/nvram -c printenv
1: [baudrate=115200]
2: [loads_echo=0]
・・(略)・・
40: [bootcmd=ide reset; ext2load ide 0:1 $(default_kernel_addr) /$(kernel); bootm $(default_kernel_addr)]
41: [nand_boot=no]


まぁ・・個人的にものすごく感動したんですが・・ちょっと仕組みが理解しやすい項目だったので、こういうのは本当に楽しいです(笑)。

で、今回はこのめんどくさいPATHの指定を省くやり方と、電源ボタンの有効化・ファンコントロールの自動化を導入します。

参考にしたサイト
エレキジャックさん
nvram, miconapl を使えるようにする
ファンの制御と電源スイッチ

まず、私が理解できた手順です。

■PATHをコマンドに渡す仲介役が必要

→この仲介役にもともとPATHの情報を持っててもらって、必要な時にコマンド(/usr/local/kurobox/bin内にある)にPATHとオプション情報を渡してくれればいい



■普通にコマンドを呼び出した時に、自動で仲介役を呼べばいい

→呼び出された仲介役は前述の通り本来のコマンドを呼び処理してくれる



おそらくこういう流れではないかと・・。
まず1番目の仲介役、これがエレキジャックさんの

miconapl-nvram.tar.gzをダウンロードし、適当なディレクトリ (/home/kurobox など)にコピーします。コピーしたら、/usr/local/sbin に展開します。


です。/usr/local/sbinに展開されたmiconapl(これは仲介役のmiconapl)には

# !/bin/sh

CMD=/usr/local/kurobox/bin/`basename $0`
LD_LIBRARY_PATH=/usr/local/kurobox/lib $CMD $*


という内容が記述されているらしいです。細かいことはわかりませんが、CMDのPATHがコマンドのPATHだということは眺めればわかります。エレキジャックさんも

ダイナミックライブラリの検索パスを指定し、呼び出されたコマンド名の /usr/local/kurobox/bin/ 内の相当するバイナリを呼び出しています。


と説明してくださってます。まさに仲介役な仕事です。

2番目の、普通に呼べば仲介役が返事をする、これがまだ不安なんですが・・。
結局、どうしてこれが実現できているのかはわかっていません。
またまた研究します。

とりあえず、これを導入した時点で、miconapl、nvramの最終的な意味でのコマンド導入は終了です。

次に電源ボタンとファンコントロールです。
ファンの制御と電源スイッチ」の通りに作業すれば簡単簡単♪

念のために電源ボタンを3秒程度押してhaltするかどうか、後部のリセットボタンを押してrebootするかどうか試してみます。
コンソール上に「System halted.」と出ているのに玄箱本体の電源が落ちない場合は

kurobox:~# cat /etc/default/halt


で確認。

# Default behaviour of shutdown -h / halt. Set to "halt" or "poweroff".
HALT=poweroff


となっていれば

HALT=halt


と編集すればOK。

あと余談ですが、エレキジャックさんのエントリではなくコメント欄に「ブート完了したらピロリロ~♪」の小技がありました。

rc.localのexit 0の前の行に
${MICONAPL} -a bz_melody “30 b4 b5 b4 b6″
を挿入


これで工場出荷時と同じブート完了音が鳴ります。ちょっと便利かも(笑)。
スポンサーサイト
別窓 | Debianで遊ぶ | コメント:0 | トラックバック:0
∧top | under∨
<<メモ | 玄箱Pro、直します。 | miconaplなどの導入(1)>>

この記事のコメント

∧top | under∨

コメントの投稿

 

管理者だけに閲覧
 

この記事のトラックバック

トラックバックURL

FC2ブログユーザー専用トラックバックURLはこちら
∧top | under∨
| 玄箱Pro、直します。 |
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。