Armadilloフォーラム

podman load 時のエラー

minomi-s

2022年8月8日 22時56分

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

podman loadコマンドを実行して、tarファイルからイメージを読み込もうとしたところ添付のエラーが発生しています。
解決するための手法など、ご存じの内容ありましたらご教示いただきたくお願い致します。

経緯としては、1台のArmadillo-IoT G4でカスタマイズしたイメージファイルを別のArmadilloへと適用するため、podman saveコマンドを用いてtarファイルとしてエクスポートを実施しました。
エクスポートしたtarファイルをUSBメモリを使って、2台目のArmadilloへpodman loadコマンドを適用してインポートすることには成功したのですが、同じファイルで3台目のArmadilloに適用しようとしたところ、添付のエラーとなってしまいインポートができない状態です。

ファイル ファイルの説明
load_error.log
コメント

溝渕です。

ルートファイルシステムに十分な空きがあるかどうか確認してみてください。 私の手元では見たことが無いエラーなので、外していたらすみません。

溝渕さん
回答ありがとうございます。

> ルートファイルシステムに十分な空きがあるかどうか確認してみてください。 私の手元では見たことが無いエラーなので、外していたらすみません。
>
ルートファイルシステムというのは /dev/root の領域という認識でよいでしょうか?
load実行前の空き具合を確認できておらずすみませんが、同じ条件でセットアップした2台目のArmadilloではloadに成功していたため、3代目のArmadilloについても容量的な問題は無いものと認識しています。
仮に容量を確保するとした場合、削除すべき部分(キャッシュなど?)はありますでしょうか?

※参考までにdfコマンドの結果を添付しておきます

armadillo:~$ df -h
Filesystem       Size  Used Avail Use% Mounted on
/dev/root        272M  154M   99M  61% /live/rootfs
devtmpfs          10M     0   10M   0% /dev
tmpfs            333M  856K  332M   1% /run
shm              831M   84K  831M   1% /dev/shm
none             831M   92K  831M   1% /live
none             831M   92K  831M   1% /
tmpfs            831M     0  831M   0% /tmp
/dev/mmcblk2p3    42M   97K   39M   1% /var/log
/dev/mmcblk2p5   9.1G  236M  8.3G   3% /var/lib/containers/storage_readonly
/dev/mmcblk2p5   9.1G  236M  8.3G   3% /var/app/rollback/volumes
/dev/mmcblk2p5   9.1G  236M  8.3G   3% /var/app/volumes
/dev/mmcblk2p5   9.1G  236M  8.3G   3% /var/tmp
/dev/mmcblk2gp1  8.0M  2.0K  8.0M   1% /var/at-log
/dev/mmcblk2p4    24M   24M     0 100% /opt/firmware

1点、原因かどうかは不明ですが違いとして思い出したことを記載しておきます。
loadに成功した2台目のArmadilloはPCからSSH経由(有線LAN接続)でログインしてloadコマンドを実施していました
失敗した3台目についてはたまたまPCとUSBで接続していたため、ATDEからシリアルコンソールでログインしてloadコマンドを実行しています

溝渕です。

> ルートファイルシステムというのは /dev/root の領域という認識でよいでしょうか?

すみません、私の誤記です。ルートファイルシステムではなくappパーティションです。dfコマンドの出力を確認しましたが、空き容量に問題が無いように思います。

> 仮に容量を確保するとした場合、削除すべき部分(キャッシュなど?)はありますでしょうか?

現状では容量確保の必要は無いように思います。

> 1点、原因かどうかは不明ですが違いとして思い出したことを記載しておきます。
> loadに成功した2台目のArmadilloはPCからSSH経由(有線LAN接続)でログインしてloadコマンドを実施していました
> 失敗した3台目についてはたまたまPCとUSBで接続していたため、ATDEからシリアルコンソールでログインしてloadコマンドを実行しています

2台目と3台目を一旦初期化した上で、全く同じ手順で"podman load"を実行したそれぞれのログをいただけますか。

溝渕さん

ありがとうございます。
容量的な問題はない旨、了解しました。

> 2台目と3台目を一旦初期化した上で、全く同じ手順で"podman load"を実行したそれぞれのログをいただけますか。
>
すみません2台目をすでにアプリケーションの評価に使用しているため、3台目について一度初期化したうえでloadを試してみようと思います。
実行できしだい、結果をこちらに展開いたします。

at_dominique.m…

2022年8月15日 9時27分

minomi-sさん、

横から失礼しますが、添付していただいたエラーの原因はこの行ではないかと思います:

Digest did not match, expected sha256:75fc56309ef9cf9e3bf5e0e802a6aed9ba1d2dd97154fecfdad3c75d6527a755, got sha256:d819317e47390ea5246696f3cb5dcec49010a641e246d245bb9779bc5bd298d0

だとしたら、USBメモリ(/mntにマウントされている物)にコピーされたコンテナのアーカイブに何か問題がないかも確認した方がいいかもしれません。

ファイルにまだコピーが存在していたら、sha256sum等でコピーと USB にある物が同じかどうかを確認してもらえますか?

よろしくお願いします。

回答ありがとうございます。
試しにtarファイルを作り直して3台目のArmadilloに適用したところ、今度は問題なくloadが完了し、imageが作成されました
マルティネさんのおっしゃる通り、USBに格納していたファイル側に問題があった可能性が高そうです。

ひとまずloadは問題なく実行できましたので、いったん本件はクローズさせて頂きます。
溝渕さん、マルティネさんご対応ありがとうございました。