narita
2017年1月26日 11時09分
以下手順を実施した際に端末が起動しなくなりました。
復帰方法に関してご教授願います。
手順1:
apt-get install apache2
上記にてapache2をインストール
手順2:
apt-get remove apadhe2
上記にてapache2をアンインストール
手順3:
reboot実施し、端末再起動。
再起動時に、以下のように途中で起動処理が停止する。
teratermコンソール内容:
In: serial
Out: serial
Err: serial
Found PFUZE300! deviceid 0x30, revid 0x11
Net: FEC0
switch to partitions #0, OK
mmc1(part 0) is current device
switch to partitions #0, OK
mmc1(part 0) is current device
reading boot.scr
2711 bytes read in 16 ms (165 KiB/s)
Running bootscript from mmc ...
## Executing script at 82000000
reading boot_state
4 bytes read in 9 ms (0 Bytes/s)
Compare boot_state...
byte at 0x84800000 (0x30) != byte at 0x82000000 (0x31)
Total of 0 byte(s) were the same
Total of 1 byte(s) were the same
DEBUG:KERNEL_TRY is 1
DEBUG:KERNEL_SUCCESS is 0
*RECOVERY KERNEL BOOT*
Setting up recovery env...
switch to partitions #0, OK
mmc1(part 0) is current device
reading uImage.recovery
** Unable to read file uImage.recovery **
WARNNING: MAIN KERNEL NOT FOUND
*RECOVERY KERNEL BOOT*
Setting up recovery env...
switch to partitions #0, OK
mmc1(part 0) is current device
reading uImage.recovery
** Unable to read file uImage.recovery **
No kernel found
=> ※ここで止まる
at_shota.tamura
2017年1月26日 17時33分
田村です。
「node-eye パッケージをインストールした後、ご報告いただいた操作を行った」ということであっていますか?
貼っていただいたログを確認したところ、Armadillo では node-eye のリカバリー機能が動作しているようです。
node-eye のリカバリー機能が動作する原因(条件)はいくつかあります。
・node-eye パッケージをインストールした後の再起動中に電源を切った(リセットした)
・node-eye パッケージをインストールした後、node-eye.service を disable にして再起動した
・node-eye のファームウェアアップデート機能を使用中にArmadilloを再起動しした
・node-eye のファームウェアアップデート機能を使って、起動できないユーザーランドやカーネルなどを書き込んだ
・など
これらの操作を行うとリカバリー機能が動作します。
ちなみに、apache の install/remove はリカバリー機能の動作に影響しませんので今回の現象に関しては無関係だと考えます。
# もし、下記に示す復帰手順で復帰させた後に apache の install/remove を行い、同様の現象が再現した場合はご連絡ください
さて、前置きが長くなってしまいましたが、
node-eye のリカバリー機能が動作してしまったときの復帰手順を次に示します。
■復帰手順
1. Armadillo-IoT ゲートウェイ G3L 製品マニュアルの『SDブートの活用』を参考にSDブートを行ってください。
> SD ブートの活用 | G3L 製品マニュアル
> http://manual.atmark-techno.com/armadillo-iot-g3l/armadillo-iotg-g3l_pr…
2. SD ブートを行ったら、Armadillo に root アカウントでログインしてください。
df コマンドを実行し、ルートファイルシステムが /dev/mmcblk0p2 になっていればSD ブート成功です。
3. eMMCの第1パーティションに保存されている boot_state を削除してください。
※ SD カードの第1パーティションではありません
4. Armadillo の電源を落としてください。
5. SD ブートのためにショートさせた JP1 をオープンにしてください。
6. Armadillo の電源を入れ、eMMC 上の Debian を起動させてください。
=> これで復帰完了です
■その他
余談ですが、
node-eye のリカバリー機能を使用するためには、事前にリカバリーイメージを書き込んでおく必要があります。
リカバリーイメージを書き込むための方法は2つあります。
1. ファームウェアアップデート機能を使う
2. 手動で書き込む
▼ 1. ファームウェアアップデート機能を使う
・手順
http://manual.atmark-techno.com/node-eye/device-management_aiotg3l_ja-1…
この手順はカーネルの更新手順ですので、適宜リカバリーイメージに読み替える必要があります。
・イメージファイル
http://armadillo.atmark-techno.com/armadillo-iot-g3l/downloads#node-eye
▼ 2. 手動で書き込む
Armadillo の eMMC 第3パーティション(/dev/mmcblk2p3) に
リカバリーイメージとDTB(リカバリーイメージ用) を書き込んでください
・手順
・イメージファイル
http://armadillo.atmark-techno.com/armadillo-iot-g3l/downloads#node-eye
以上です。