Armadilloフォーラム

MicroSDマウント後のファイルへUSBで上書きコピーするとリブート後、ファイルが元に戻る

kiso.masaki

2019年7月16日 19時18分

お世話になっております。

Armadillo-IoT G2にMicroSDを付けて、起動スクリプトで"/root/hoge" にマウントしているのですが、/root/hoge内のファイルは、USBからの上書きコピーとviでの編集で、リブート後の挙動が異なります。

本現象の原因の検討が付かないのですが、何が原因か、もしくは解決方法があれば、ご教示いただけますでしょうか。
※その他不明点あれば、お知らせください。

■環境
・Armadillo-IoT G2(旧メモリ版)
・カーネル:Linux 3.14.36-at5

■問題
・USBのfoo.txtを一度、/rootへコピーし、/root/foo.txtを/root/hoge/foo.txtへ上書きコピー後、リブートすると上書きコピー前の状態へ戻る。
・/root/hoge/foo.txtをviで編集後、リブートすると上書きコピー前状態へ戻らない。
・新メモリ対応版のG2では現象が発生しない。

■状況
・Armadillo-IoT G2にMicroSDを付けて、以下のように"/root/hoge" へマウントしている。

/etc/rc.local <一部抜粋>

#!/bin/sh
...
# mount for microSD
if [ -b /dev/mmcblk0p1 ]; then
        echo -n 'microSD File system checking: '
        e2fsck -p /dev/mmcblk0p1
        mkdir -p /root/hoge
        mount /dev/mmcblk0p1 /root/hoge
 
fi
...

・以下コマンドでUSBのテキスト(foo.txt)を上書きコピーし、リブートするとテキスト(foo.txt)が上書きコピー前の状態に戻る。

# mount /mnt
# cp /mnt/foo.txt /root/hoge/foo.txt
# umount /mnt

・/root/hoge/foo.txtを直接、viで編集、上書き後、リブートすると上書きコピー前の状態に戻らない。

■その他
・実機は、お客様先にあり、手元には無いため動作確認が出来ておりません。
・新メモリ対応版のG2(カーネル:Linux 3.14.36-at11)では、再現しません。

以上です。
よろしくお願いいたします。