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進行替換

Tip
在 vi 編輯器中%s是替換文字的指令,用冒號呼出編輯器的控制台進行執行

如果這樣也沒能解決😱。。。那還是重新換一個固件進行安裝吧

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。