wakutsu
2014年8月29日 21時56分
和久津と申します。
初歩的な質問ですみませんが御教授ください。
Armadillo-800 EVA を利用しています。
SDカードへAndroidをインストールして起動したいのですが、以下のようなエラーが発生してしまいます。
解決方法等ご存じの方がいらっしゃいましたらご教示いただけないでしょうか。
<SDカードへのAndroidインストール方法>
1.SDカードを以下のようにフォーマット
パーティション1:fat(128MB)
パーティション2:ext3(1GB)
2.SDカードのパーティション1へディスク添付の「loader-armadillo800eva-mmcsd-v3.1.0.bin」をSDカードの「/mnt」へ「sdboot.bin」にリネームして配置。
3.SDカードのパーティション2へディスク添付の「android-2.3.7_a800eva_20120222.tar.gz」をSDカードへ展開。
4.SDカードのパーティション2へディスク添付の「linux-a800eva-1.02.bin」をSDカードの「/mnt/boot」へ「Image.bin」にリネームして配置。
<発生するエラー>
コンソールへ以下のようなメッセージが出力されAndroidが起動しない状態となる
init: cannot execve('/system/bin/mediaserver'): Permission denied
init: cannot find '/system/etc/install-recovery.sh', disabling 'flash_recovery'
init: cannot execve('/system/bin/dbus-daemon'): Permission denied
init: cannot execve('/system/bin/keystore'): Permission denied
init: cannot execve('/system/bin/sh'): Permission denied
お手数をおかけいたしますがよろしくお願いいたします。
at_yuma.arakawa
2014年9月17日 15時44分
荒川です。
起動しきれない原因は「Permission denied」だと思います。
(ご報告でエラーが出ている実行ファイルの実行権限を削除して試すと、同様のエラーが再現しました)
実行権限が無いことがエラーの原因ですが、他にも実行権限が消えている恐れがあるので、
再度SDカードに展開しなおすと良いと思います。
なお、展開の際には、「別の場所に展開し、cp -rでコピー」などはせず、
以下の例のように、「tarの-Cオプションで展開先を指定」で展開してください。
(ファイルのアクセス権限が変わる恐れがあります。)
それでも同様のエラーが発生する場合は、
Armadillo上でSDカードをマウントし、
問題となっている実行ファイルのアクセス権限を、
ls -lコマンドか、statコマンドで確認してみてください。
参考までに、当方で確認した際の手順をまとめます。
●環境
SDカードへ配置するファイル:
- ご報告と同じものを使用しました
作業環境:
- ATDE4(atde4-20111228-amd64.zip)
●作業内容
製品マニュアル「第9章 SDブートの活用」に従い、
SDカードのフォーマットと、ブートローダー、Androidのルートファイルシステム、
Linuxカーネルイメージの配置
- http://manual.atmark-techno.com/armadillo-800-eva/armadillo-800-eva_pro…
- 「9.1.4. システムイメージの展開」でDebianのルートファイルシステムアーカイブを展開している箇所は、
Androidのルートファイルシステムアーカイブで読み替えて作業
- 「9.1.5. 設定ファイルの編集」の作業は不要
- 「9.2. ブートディスクから起動する」で、setenvコマンドは以下のように実行(末尾に「init=/init」を付加)