Armadilloフォーラム

イメージファイルの書き換えができない

shiba

2017年6月21日 11時12分

お世話になります。

第11章イメージファイルの書き換え方法
http://manual.atmark-techno.com/armadillo-iot-g3/armadillo-iotg-g3_prod…

こちらを参照にイメージファイルをSDに作成し、書き換えを行おうとしているのですが。

U-Boot 2016.07-at6 (Dec 19 2016 - 17:21:10 +0900)

CPU: Freescale i.MX7D rev1.2 996 MHz (running at 792 MHz)
CPU: Extended Commercial temperature grade (-20C to 105C) at 37C
Reset cause: POR
Watchdog enabled
I2C: ready
DRAM: 512 MiB
Boot Source: QSPI Flash
Board Type: Armadillo-IoT G3(0a000000)
Revision: 0002
S/N: 2609
DRAM: 00001d05
XTAL: 00
MMC: FSL_SDHC: 0, FSL_SDHC: 1
SF: Detected N25Q64 with page size 256 Bytes, erase size 64 KiB, total 8 MiB
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
** Unable to read file boot.scr **
reading boot.scr
** Unable to read file boot.scr **
reading uImage
729088 bytes read in 29 ms (24 MiB/s)
Booting from mmc ...
reading armadillo_iotg_g3.dtb
54305 bytes read in 18 ms (2.9 MiB/s)
## Booting kernel from Legacy Image at 82000000 ...
Image Name: Linux-3.14.79-at14
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 10162336 Bytes = 9.7 MiB
Load Address: 80008000
Entry Point: 80008000
Verifying Checksum ... Bad Data CRC
ERROR: can't get kernel image!
=>

となってしまい、再度=>bootしても同じログになってしまいます。
Armadillo-IoT G3のRTCバックアップインターフェース(CON13) に、バッテリーは外しておりますが、何か設定がいるのでしょうか?

宜しくお願い致します。

コメント

上記追記します。
ATDE6上での作成手順は添付の通りで、
インストール手順は下記で行いました。
______________________________________________________________________________
1. Armadillo の電源が切断されていることを確認します。接続されていた場合は、電源を切断
してください。また、「17.10. CON13 RTC バックアップインターフェース 1」 にバッテリー
が接続されている場合は、必ず取り外して下さい。
2. USB シリアル変換アダプタのスライドスイッチを確認します。スライドスイッチが「図 4.8.
スライドスイッチの設定」の 1 側に設定されている事を確認してください。
3. インストールディスクを使用して SD ブートを行います。SD スロット(CON4)にインストー
ルディスクを接続し、JP1 をショートに設定してください。
4. ユーザースイッチ 1 を押しながら Armadillo に電源を投入すると SD カードからブートロー
ダーが起動し、次に示すログが表示されます。 ログが表示されたら、ユーザースイッチ 1 を
離してください。 ユーザースイッチ 1 の位置については「3.4. Armadillo-IoT ゲートウェイ
の外観」を参照してください。
______________________________________________________________________________

JP1をショートし、SDブートを行おうとすると、LEDの点灯が無く、またTeraTermにも
表示とコマンドを打てない状態になる為SDブート出来ていないと思われるのですが...

よろしくお願いいたします。

ファイル ファイルの説明
ATDE6インストールディスク作成log.txt 11.1.1. インストールディスクの作成

溝渕です。

インストールディスクの作成手順に誤りがあります。

http://manual.atmark-techno.com/armadillo-iot-g3/armadillo-iotg-g3_prod…

上記を参考に、

atmark@atde6:~$ sudo dd if=install_disk_sd_20170529_iotg3.img of=/dev/sdb2 bs=4M

のようにSDの第二パーティションではなく、

atmark@atde6:~$ sudo dd if=install_disk_sd_20170529_iotg3.img of=/dev/sdb bs=4M

のようにSDの先頭から書き込んでください("sdb2"を"sdb"に修正)。

溝渕様
お世話になっております

>
> atmark@atde6:~$ sudo dd if=install_disk_sd_20170529_iotg3.img of=/dev/sdb bs=4M
>
>
> のようにSDの先頭から書き込んでください("sdb2"を"sdb"に修正)。
>

sdbで行った場合書き込みエラーが出てしまい、コピーされていないように見えます。
念のため、SDカードは16GB、事前にフォーマットをFAT32にて行いました

atmark@atde6:~$ mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,relatime,size=10240k,nr_inodes=126732,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,relatime,size=206004k,mode=755)
/dev/mapper/atde6--vg-root on / type ext4 (rw,relatime,errors=remount-ro,data=ordered)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpu,cpuacct)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls,net_prio)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=23,pgrp=1,timeout=300,minproto=5,maxproto=5,direct)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime)
mqueue on /dev/mqueue type mqueue (rw,relatime)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
fusectl on /sys/fs/fuse/connections type fusectl (rw,relatime)
vmware-vmblock on /run/vmblock-fuse type fuse.vmware-vmblock (rw,relatime,user_id=0,group_id=0,default_permissions,allow_other)
/dev/sda1 on /boot type ext2 (rw,relatime)
rpc_pipefs on /run/rpc_pipefs type rpc_pipefs (rw,relatime)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,relatime)
tmpfs on /run/user/116 type tmpfs (rw,nosuid,nodev,relatime,size=103004k,mode=700,uid=116,gid=123)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=103004k,mode=700,uid=1000,gid=1000)
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,relatime,user_id=1000,group_id=1000)
/dev/sdb1 on /media/atmark/EA03-443B type vfat (rw,nosuid,nodev,relatime,uid=1000,gid=1000,fmask=0022,dmask=0077,codepage=437,iocharset=utf8,shortname=mixed,showexec,utf8,flush,errors=remount-ro,uhelper=udisks2)
atmark@atde6:~$ sudo umount /dev/sdb1
[sudo] password for atmark:
atmark@atde6:~$ sudo dd if=install_disk_sd_20170529_iotg3.img of=/dev/sdb bs=4M
dd: `/dev/sdb' の書き込みエラー: デバイスに空き領域がありません
3+0 レコード入力
2+0 レコード出力
10485760 バイト (10 MB) コピーされました、 0.0978139 秒、 107 MB/秒
atmark@atde6:~$

溝渕です。

以下、実際に実行したコマンドをコピー&ペーストしましたか?

atmark@atde6:~$ sudo dd if=install_disk_sd_20170529_iotg3.img of=/dev/sdbbs=4M
dd: `/dev/sdb' の書き込みエラー:デバイスに空き領域がありません
3+0 レコード入力
2+0 レコード出力
10485760 バイト (10 MB) コピーされました、 0.0978139 秒、 107MB/秒

"of=/dev/sdbbs=4M"では(上記とは別の)エラーになるので、"of=/dev/sdb bs=4M"である必要があります。

溝渕様
お世話になっております。
>
> 以下、実際に実行したコマンドをコピー&ペーストしましたか?
>
>
> atmark@atde6:~$ sudo dd if=install_disk_sd_20170529_iotg3.img of=/dev/sdbbs=4M
> dd: `/dev/sdb' の書き込みエラー:デバイスに空き領域がありません
> 3+0 レコード入力
> 2+0 レコード出力
> 10485760 バイト (10 MB) コピーされました、 0.0978139 秒、 107MB/秒
>
>
> "of=/dev/sdbbs=4M"では(上記とは別の)エラーになるので、"of=/dev/sdb bs=4M"である必要があります。
>

sdb bs=4Mで実行しています。
スクリーンショットを添付いたします。
どこか手順が間違っているのでしょうか...?

ファイル ファイルの説明
ATDE6log.PNG ATDE6での動作

溝渕様
お世話になっております。
>
> 以下のコマンドの結果を教えてください。
>
>
> sudo fdisk -l /dev/sdb
>

下記になります。

atmark@atde6:~$ sudo fdisk -l /dev/sdb

Disk /dev/sdb: 10 MiB, 10485760 bytes, 20480 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xedbb71d5

Device Boot Start End Sectors Size Id Type
/dev/sdb1 2048 22527 20480 10M b W95 FAT32
/dev/sdb2 22528 735231 712704 348M 83 Linux

溝渕です。

SDカードの容量が10MBに見えていますね。

fdisk実行後に、"o"コマンドで一旦空パーティションを作成してみていただけますか?

溝渕様
お世話になっております。

> SDカードの容量が10MBに見えていますね。
>
> fdisk実行後に、"o"コマンドで一旦空パーティションを作成してみていただけますか?
>

こちらでよろしかったでしょうか?
atmark@atde6:~$ sudo fdisk /dev/sdb

Welcome to fdisk (util-linux 2.25.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help): o
Created a new DOS disklabel with disk identifier 0xb07e67bb.

Command (m for help): w
The partition table has been altered.
Syncing disks.

atmark@atde6:~$ sudo fdisk -l /dev/sdb

Disk /dev/sdb: 10 MiB, 10485760 bytes, 20480 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xedbb71d5

Device Boot Start End Sectors Size Id Type
/dev/sdb1 2048 22527 20480 10M b W95 FAT32
/dev/sdb2 22528 735231 712704 348M 83 Linux

atmark@atde6:~$

溝渕です。

変わらず10MBとしてしか認識されていないようです。

第1、 第2パーティションの削除/書き込み後に、再度"fdisk -l"を実行してみていただけますか?

溝渕様
お世話になっております。
>
> 第1、 第2パーティションの削除/書き込み後に、再度"fdisk -l"を実行してみていただけますか?
>

手順こちらで合っていますでしょうか?
atmark@atde6:~$ sudo rm /dev/sdb1
atmark@atde6:~$ sudo rm /dev/sdb2
atmark@atde6:~$ sudo fdisk /dev/sdb

Welcome to fdisk (util-linux 2.25.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help): o
Created a new DOS disklabel with disk identifier 0x6a3704c7.

Command (m for help): w
The partition table has been altered.
Syncing disks.

atmark@atde6:~$ sudo fdisk -l /dev/sdb

Disk /dev/sdb: 10 MiB, 10485760 bytes, 20480 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xedbb71d5

Device Boot Start End Sectors Size Id Type
/dev/sdb1 2048 22527 20480 10M b W95 FAT32
/dev/sdb2 22528 735231 712704 348M 83 Linux

atmark@atde6:~$

溝渕です。

いえ。fdisk起動後に、"d"コマンドを実行してパーティションの削除を行ってください。

溝渕様
お世話になっております。
>
> いえ。fdisk起動後に、"d"コマンドを実行してパーティションの削除を行ってください。
>
失礼致しました。

atmark@atde6:~$ sudo fdisk /dev/sdb

Welcome to fdisk (util-linux 2.25.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help): d
Partition number (1,2, default 2): 1

Partition 1 has been deleted.

Command (m for help): d
Selected partition 2
Partition 2 has been deleted.

Command (m for help): o

Created a new DOS disklabel with disk identifier 0x61c8b21b.

Command (m for help): w
The partition table has been altered.
Syncing disks.

atmark@atde6:~$ sudo fdisk -l /dev/sdb

Disk /dev/sdb: 10 MiB, 10485760 bytes, 20480 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xedbb71d5

上記、PCを再起動、SDをフォーマットし、再度実行したところ、
無事SDカードにインストールディスクイメージを書きこむことができ、
Armadilloも無事復旧することが出来ました。

原因は不明ですが、解決出来たので引き続き開発を進めたいと思います。

大変お手数をおかけ致しました。
有り難うございました!