ブログ

Armadillo Base OS:SWUイメージ作成環境の鍵をインストールし直す

at_kazutaka.bito
2022年5月11日 17時35分

Armadillo-IoT(G4)のソフトウェアアップデート方法として、SWUイメージを使った方法があります。
Armadillo-IoT ゲートウェイ G4製品マニュアル
9.7. Armadilloのソフトウェアをアップデートする


この方法にて、SWUイメージ作成環境の鍵をArmadillo-IoT(G4)にインストールすることで、
以降は、同一の環境で作成したSWUイメージの鍵と、Armadillo-IoT(G4)上の鍵の整合が取れる場合のみ、
ソフトウェアアップデートされます。

ただ、開発中など、何らかの理由でSWUイメージ作成環境が変わってしまった場合(※)、
SWUイメージの鍵とArmadillo-IoT(G4)上の鍵と整合がとれず、以降のアップデートができなくなります。
※)基本的には、ソフトウェアアップデートの管理の点からSWUイメージ作成環境は変えないような運用が望ましい。

ここでは、SWUイメージ作成環境が変わってしまった場合に、Armadillo-IoT(G4)上の鍵を
新しいSWUイメージ作成環境の鍵にインストールし直す方法を説明します。

1. Armadillo-IoT(G4)の証明書の書き換え

ATDEの下記ファイルに記述されている証明書をArmadillo-IoT(G4)の/etc/swupdate.pem(※)にコピーします。

/usr/share/mkswu/swupdate-onetime-public.pem

※)
/etc/swupdate.pemに2つの証明書がある場合、
 上はアットマークテクノの証明書
 下は前のinitial_setup.swuで書いた証明書
残す必要がなければ削除します。

2. Armadillo-IoT(G4)の証明書の書き換え

Armadillo-IoT(G4)の/etc/sw-versionsのextra_os.initial_setupの行を削除します。
例)下記のようにextra_os.initial_setupと数値が記述されています。

extra_os.initial_setup 1


3. 変更の保存

persist_fileコマンドで、上記の変更を施したファイルの変更を保存します。

[armadillo ~]# persist_file /etc/swupdate.pem
[armadillo ~]# persist_file /etc/sw-versions


4. 新しいSWUイメージ作成環境のinitial_setup.swuでインストール

下記(※)の方法で、新しいSWUイメージ作成環境のinitial_setup.swuでインストールします。
※)
Armadillo-IoT ゲートウェイ G4 製品マニュアル
9.7.3. イメージのインストール


以上で、Armadillo-IoT(G4)上の鍵が、新しいSWUイメージ作成環境と整合が取れる鍵に変更されます。