溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

OpenWRT中編譯不死U-Boot的示例分析

發(fā)布時間:2021-12-18 11:38:26 來源:億速云 閱讀:587 作者:小新 欄目:互聯(lián)網(wǎng)科技

這篇文章將為大家詳細講解有關(guān)OpenWRT中編譯不死U-Boot的示例分析,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

    首先到 https://github.com/pepe2k/u-boot_mod 看明白作者的說明。這里簡單說一下原理:固件(firmware)刷壞,但 U-Boot 沒壞,這是半磚,可以用 TTL 線連路由器,通過 U-Boot 的功能刷好 firmware。如果兩者都壞了,叫全磚,只能把 Flash 拆下來,用編程器刷好 U-Boot 和 firmware。不死 U-Boot 就是修改了 U-Boot 的實現(xiàn),使我們可以用 RJ-45 網(wǎng)線來救磚,省去拆機搭 TTL 線的麻煩。

    本質(zhì)上說,這東西并非真的不死,只要 U-Boot 被刷壞了,還是會死,不過幾率不大,因為 OpenWRT 官方發(fā)行的 ROM 全都是保護 U-Boot 區(qū)域的,根據(jù) UMU 的經(jīng)驗,只有三個情況會不小心或故意刷壞:1、從原廠固件刷不良固件;2、在 DD-WRT 下搞破壞(DD-WRT 沒有保護 U-Boot);3、自制固件去掉 U-Boot 寫保護后搞破壞……如果您真的這么蛋疼,還是準備編程器吧,只要是軟件問題,在編程器面前沒有磚的概念。(JTAG 也是救磚神器,但不是每臺路由器都有,比如 DIR-505 就沒有?。?/p>

    由于 UMU 是 Windows 程序員,平時沒有安裝 Linux 桌面的習慣,蛋似由于做快游項目,買了不少服務器,都是 CentOS,所以第一步就是在 CentOS 上嘗試編譯,后來,您們懂的,爆出各種 213 碼!服務器系統(tǒng)還是不適合開發(fā)!

    不得已就在 Hyper-V Server 2012 上安裝了 Ubuntu 12.04.1-desktop-i386,本來是想安裝 x64 版本的,但又怕這些嵌入式的東西對 x64 可能支持不夠好,算了,不要裝 13 了。

    接下來是選擇編譯環(huán)境了,按照 UMU 對 OpenWRT 的好感,明顯是選擇 OpenWrt Toolchain for AR71xx MIPS,然后開始編譯,嘩嘩嘩,編譯好了……最后編譯出來的 bin 卻是 64KB+110B,尼瑪,這 size 超標了,刷進去不是不死,是立刻死!

    然后終于明白了,作者其實并沒有用這個編譯過,他是用 Sourcery CodeBench Lite Edition for MIPS GNU/Linux 的,所以……為了節(jié)省時間,還是和作者保持一致吧!吐槽一下,這是商業(yè)軟件,雖然有免費的 Lite 版本,但沒搞明白為什么作者不用 OpenWRT 的……

    make dlink_dir505 一下,最后當然就編譯出來了,UMU 還小修改了一下 Web 界面,加入了自己的特色,不過要提醒一下,不要加太多,會爆……只有 64KB 的空間!

關(guān)于“OpenWRT中編譯不死U-Boot的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI