M700HD vs とある科学のGPT(仮)

例によってM700HDのシステムの調査を進めているわけですが、

当人がLinuxに関してズブの素人ということもあって素晴らしく難航中(HAHAHA。

 

誰か助けてぇ・・・。

―とはいえ、そうも言ってられないのでとりあえず現状の調査状況をば。

=====================================================
【M700HDの構造】
=====================================================

・二重root構成(通常 + Recoveryの2種構成だと思う)

参考:ディスク構造(概念図)
/dev/sdd
├─ sdd1  : swap
├─ sdd2  : ext3
├─ sdd3  : ext3
├─ sdd4  : (未使用?/未調査)
├─ sdd5  : ★ 実rootfs(通常起動用)
├─ sdd6  : Recovery候補rootfs
├─ sdd7  : ext3(※音楽データ格納)
└─ sdd8  : ext3(DB情報格納)


・初回起動と2回目で挙動が異なるのが仕様である。

初回(おそらくsdd6からデータ呼んでる)
 ├─ 設定初期化
 ├─ パーティション初期化

 ├─IPTABLE(SSHを阻む要塞)が構築される

 └─ 再起動要求

2回目以降(sdd5から呼び出し)

 ├─初回起動時に築いた初期設定の上にデータを展開
 └─ 安定起動(起動時間短縮)

➡初回起動時に作成したデータを弄ると誤作動します

 

【通常時の動作までのフロー】

① 電源投入
   ↓
② rootfs マウント(sdd5)
   ↓
③ /etc/rc.d/rcS 実行
   ↓
④ /etc/rc.d/rc.sysinit 実行
   ├─ /proc mount
   ├─ /sys mount
   ├─ tmpfs を /mnt/var へ
   ├─ var.org 展開
   ├─ root.org 展開
   ├─ sysctl 適用
   ├─ fsck
   └─ swap有効化
⑤/etc/rc.d/rc 3 実行
   ↓
⑥ /etc/rc3.d/S* 実行(順次)
   ↓
⑦ /etc/rc3.d/D* 実行(並列)
   ↓
⑧ /etc/rc3.d/T* 実行
   ↓
⑨ iptables_add.sh start
   ├─ RESTORE_CHAINS
   ├─ なければ MAKE_CHAINS
   └─ SAVE_CHAINS
   ↓
⑩ UI描画系起動
   ↓
⑪ ネットワークサービス準備完了?

 

組込Linuxって皆こんなに難しいのか・・・?心折れそう。