banner
Aki

Aki

太阳能维修,月亮可更换,星星不闪包退换。
twitter

ソフトルーターのソフトウェアパッケージのインストールの問題を解決する

説明#

家庭内ネットワークのメディアサーバーは、ストリーミングメディアが展開されていますが、現時点では内部ネットワークからのみアクセスできます。外出先でも家のアニメを見ることができれば良いので、openwrt を外部ネットワークに公開する準備をしています。

当然、動的 DDNS を使用することにしました。なぜなら、通信事業者のブロードバンドは動的なグローバル IP を持っているからです。

DDNS 機能を有効にしようとすると、パッケージが無効になっていることがわかりました。起動項目も DDNS を再起動できません。

image

ファームウェアのバージョンの問題かどうかはわかりませんが、パッケージを再インストールすることで解決する可能性があります。試してみようと思い、パッケージを開いてインストールしようとすると、予想通りの結果になりました。

* pkg_hash_check_unresolved: cannot find dependency kernel (= 5.15.104-1-c3ae984cf3530f6fa5bf8738be620d7b) for kmod-crypto-aead
* pkg_hash_check_unresolved: cannot find dependency kernel (= 5.15.104-1-c3ae984cf3530f6fa5bf8738be620d7b) for kmod-crypto-manager
* pkg_hash_check_unresolved: cannot find dependency kernel (= 5.15.104-1-c3ae984cf3530f6fa5bf8738be620d7b) for kmod-crypto-ecb
* pkg_hash_check_unresolved: cannot find dependency kernel (= 5.15.104-1-c3ae984cf3530f6fa5bf8738be620d7b) for kmod-mppe

カーネルのバージョンの問題により、DDNS プラグインをインストールできません

原因#

openwrt では、各バージョンごとに対応する MD5 値、つまりフィンガープリントがあります。たとえば、'c3ae984cf3530f6fa5bf8738be620d7b' という文字列です。エラーが発生するのは、個人がコンパイルしたバージョンのフィンガープリントが変更されているためであり、通常、フォーラムや他の手段でダウンロードした有名な人がコンパイルした「高機能」バージョンも変更されているため、公式のパッケージのフィンガープリントと一致しないため、パッケージをインストールできない問題が発生します。

解決策#

SSH を使用して openwrt に接続します。

cd /usr/lib/opkg/ && cp status status.bak
vi status
:%s/c3ae984cf3530f6fa5bf8738be620d7b/e469f5589b4c7b368924a6e4f8f7407f/g

status ファイルのフィンガープリントを置換します。私の openwrt のフィンガープリントはc3ae984cf3530f6fa5bf8738be620d7bで、公式バージョンe469f5589b4c7b368924a6e4f8f7407fで置換します。

ヒント
vi エディタでは、%sはテキストを置換するコマンドです。コロンを使用してエディタのコンソールを呼び出して実行します。

これでも解決しない場合は😱。。。別のファームウェアをインストールしてみてください。

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。