概要
PAV-HMS220 (Thecus N2810のOEM) のファームウェアイメージに対して,以下の修正を行うスクリプトを作成した.
- ダウングレードを可能にする
- ファームウェアイメージのバージョン情報を
v3.99.99.9
に書き換え,アップグレードに見せかける - ダウングレード後は正しいバージョン情報が表示される
- ファームウェアイメージのバージョン情報を
- 他機種用FWの流用を可能にする
- ファームウェアイメージの機種情報を書き換える
- 更新後は他機種の情報に書き換わってしまうが,元に戻すことも可能
誤ったFWを書き込むと動作しなくなる場合があるので注意.必ず/dev/mmcblk0のダンプを取得してから行うこと.
ファームウェアイメージのダウンロード用リンク
- PAV-HMS420/220向け
- Thecus N2810向け
- v.3.02.06.13
- その他バージョンもN2810の製品ページから取得できる
patch.sh
このファイルはNAS上で実行する.詳細な手順は次のセクションに示す.
#!/bin/bash if [ ! -f "$1" ]; then echo No input file. exit 1 fi set -e INPUT="$(cd $(dirname $1) && pwd)/$(basename $1)" OUTPUT="${INPUT}-patched" FWCONFIG="/img/fwconfig" . ${FWCONFIG} cd /tmp echo decrypt. /usr/bin/des -k ${DESKEY} -D ${INPUT} upgrade.tar.gz echo unpack. tar zxf upgrade.tar.gz rm upgrade.tar.gz echo patch. cp /etc/manifest.txt upgrade/manifest.txt echo "3.99.99.9.k401" > upgrade/version echo repack. tar zcf upgrade.tar.gz upgrade/ rm -rf upgrade/ echo encrypt. /usr/bin/des -k ${DESKEY} -E upgrade.tar.gz ${OUTPUT} rm upgrade.tar.gz echo complete.
使い方
patch.sh
とファームウェアイメージをNASのNAS_Public
フォルダに保存する.- 説明ではファームウェアイメージは
Princeton_x86_64_FW.3.01.04.4.k401
とする.別のものを使用する場合は適宜読み替えること.
- 説明ではファームウェアイメージは
- rootでシェルを起動する (パスワードはWebGUIのadminと同一)
cd /raid/NAS_Public/
cp /etc/manifest.txt .
./patch.sh Princeton_x86_64_FW.3.01.04.4.k401
- 処理には1分ほど時間がかかる
- 完了すると,
NAS_Public
フォルダにPrinceton_x86_64_FW.3.01.04.4.k401-patched
が保存されている.このファイルをアップデートに使用する.- 更新画面ではバージョン番号が3.99.99.9となるが,アップデート後は正しいバージョン番号が表示される.
- 更新画面ではバージョン番号が3.99.99.9となるが,アップデート後は正しいバージョン番号が表示される.