當前位置:首頁 » 操作系統 » openwrt源碼修改

openwrt源碼修改

發布時間: 2022-09-14 02:48:36

『壹』 如何編譯OpenWrt

搭建編譯環境。編譯建議在Linux下進行。我的系統是Linux mint 17,執行以下命令,構建編譯環境:

sudo apt-get update
sudo apt-get install git-core build-essential

獲取openwrt源碼。在當前用戶主目錄下執行

git clone git://git.openwrt.org/openwrt.git

等待代碼下載。結束後,目錄下會出現openwrt文件夾
配置軟體源。進入openwrt目錄,執行

./scripts/feeds update -a

./scripts/feeds install -a

檢查編譯環境是否完整:

make defconfig

make prereq

根據提示信息安裝需要的軟體包。如果提示類似

「tmp/.config-package.in:22022:warning: multi-line strings not supported」

的信息,打開 openwrt/tmp/.config-package.in,定位到對應行,添上丟掉的一個引號就可以了。
編譯選項:

執行 make menuconfig,根據路由器情況,選擇 Target System 和 Subtarget。如意雲一代和極壹S的 Target System 均為 Ralink RT288x/RT3xxx 。對於Subtarget ,前者為 MT7620n based boards ,後者為 MT7620a based boards。

其他選項根據個人喜好選擇。一般來說要選中LuCI界面,選中中文語言包等等。
開始編譯:

執行 make -j2 V=s 進行編譯。-j後面的數字是電腦物理CPU數量加一。V=s可以顯示出編譯的詳細信息。首次編譯大概需要幾個小時的時間。
錯誤排查:

編譯失敗,一般有兩種情況:

1.代碼下載鏈接失效。首次編譯時,編譯程序會實時從網上下載一些軟體包的代碼。如果下載鏈接失效,編譯就會失敗。這時需要根據軟體包的名稱,從網上自行下載,然後放在 openwrt/dl/ 目錄下,執行 make -j2 V=s 繼續編譯即可。

2.軟體包自身有問題。這時重新執行 make menuconfig ,取消對應軟體包選中即可。這種情況比較少見,目前已知的有 tor 等。

編譯成功,但沒有生成固件。這種情況一般是因為選中的軟體包過多,導致固件大小超過16MB。重新執行 make menuconfig,去掉一些軟體包,重新執行編譯即可。
得到固件。在排除了所有錯誤後,現在終於得到了固件。對於如意雲RY-1,固件在 openwrt/bin/ramips 目錄下,形如

openwrt-ramips-mt7620n-rt-n14u-squashfs-sysupgrade.bin
openwrt-ramips-mt7620n-wrtnode-squashfs-sysupgrade.bin
openwrt-ramips-mt7620n-mlw221-squashfs-sysupgrade.bin
openwrt-ramips-mt7620n-wr8305rt-squashfs-sysupgrade.bin

等等。

『貳』 openwrt系統中,修改默認IP代碼,請問在源代碼哪個文件里修改

命令:vi /etc/config/network修改保存後輸入命令/etc/init.d/network restart

『叄』 如何從零開始學習OpenWrt

第一部分:搭建編譯環境
1、安裝Ubuntu(編譯需要Linux環境),到其官網下載,版本根據自己所需選擇即可。可以選擇安裝到虛擬機或者物理機,圖形化安裝而且是中文版,連安裝都搞不定的,可以關閉本頁面了;
2、切記不要改動軟體源,同時按住Ctrl + Alt + T,調出終端;
3、逐條輸入下列命令(及時驗證是否安裝成功):
sudo apt-get install g++
sudo apt-get install libncurses5-dev
sudo apt-get install zlib1g-dev
sudo apt-get install bison
sudo apt-get install flex
sudo apt-get install unzip
sudo apt-get install autoconf
sudo apt-get install gawk
sudo apt-get install make
sudo apt-get install gettext
sudo apt-get install gcc
sudo apt-get install binutils
sudo apt-get install patch
sudo apt-get install bzip2
sudo apt-get install libz-dev
sudo apt-get install asciidoc
sudo apt-get install subversion
sudo apt-get install sphinxsearch
sudo apt-get install libtool
sudo apt-get install sphinx-common

至此編譯環境搭建完成。
第二部分:下載OpenWrt源碼並編譯
OpenWrt源碼分兩種,一種是最新但不是最穩定的Trunk開發版,一種是最穩定的Backfire版,建議下載官方源碼。下載前先在本地創建文件夾:
mkdir openwrt
sudo chmod 777 openwrt
cd openwrt

選擇你想要的版本然後執行下載命令,下載結束會顯示版本號:
Trunk版下載命令:
svn co svn://svn.openwrt.org/openwrt/trunk/

Backfire版下載命令:
svn co svn://svn.openwrt.org/openwrt/branches/backfire/

添加軟體擴展包,將feeds.conf.default修改為feeds.conf:
cp feeds.conf.default feeds.conf

更新擴展,安裝擴展:
./scripts/feeds update -a
./scripts/feeds install -a

註:如果不是剛下載的源碼,為保持代碼為最新狀態,應定期運行svn update命令更新源碼。

測試編譯環境:

make defconfig

到這里就可以開始編譯自己的固件了。進入定製界面:
make menuconfig

如果一切正常,會出現一個配置菜單,可以選擇要編譯的固件平台(晶元類型)、型號,還能選擇固件中要添加的功能和組件,配置好後保存並退出菜單即可。

如果你想修改源碼,應該在此步進行,如支持大容量Flash之類的修改,自己上網查到修改什麼文件什麼地方後,就在ubuntu圖形界面上進去找到文件,雙擊打開文本編輯器修改保存。
開始編譯:
make

或者
make V=99

或者
make -j V=99

make是編譯命令,V=99表示輸出debug信息,V一定要大寫,如果要讓CPU全速編譯,就加上 -j 參數,第一次編譯最好不帶-j參數。
編譯過程保持聯網(會從網上下載一些源碼包),所以斷網可能造成編譯中斷,編譯所需時間與電腦CPU及網路環境有很大關系,第一次編譯時間較久,快則半小時長則2、3個小時,之後的編譯所需時間較短。編譯完成後會在源碼文件目錄出現bin文件夾(如trunk/bin/XXXX),如果你手裡的路由是原版固件需要刷OpenWrt需要選用XXX-factory.bin固件,如果路由已經刷了OpenWrt,選用升級固件XXXX-sysupgrade.bin升級用的,在升級界面升級即可。進到文件夾找到你需要的固件傳出(通過郵箱、網盤、U盤等),開始刷機吧。
第三部分:將OpenWrt刷入路由器
要在路由器上使用OpenWrt,首先要將路由器固件刷新為OpenWrt,即相當於OpenWrt 系統的安裝,不同型號的路由器的安裝方法可能也會不一樣,但一般常用的有三種方法:
Web上傳固件更新
PFTP上傳固件更新
編程器寫入固件
具體型號的路由器適用於哪種或哪幾種方法,需自行嘗試。
第四部分:開始使用OpenWrt
要對OpenWrt進行配置,一般有兩條途徑:
SSH登錄通過命令行控制
Web登錄通過Web界面設置
首次安裝OpenWrt後,需要設置密碼才可以使用SSH登錄,方法是使用telnet登錄或者Web登錄設置密碼。在Windows下面telnet和SSH登錄可以使用Putty,在Linux或Mac下可分別使用如下命令:
ssh –l root 192.168.1.1 //Linux
ssh [email protected] //Mac

一般指令與常見Linux發行版相同,但是OpenWrt使用自己的包管理器:opkg,使用「opkg –help」查看幫助信息。以下是一些常用操作命令:
opkg update //更新軟體包列表
opkg install //在線安裝軟體包
opkg remove //移除軟體包

登錄Web管理界面,前提是該OpenWrt系統中要安裝了Web界面,一般是Luci,登錄方式與普通路由器無異,打開瀏覽器,輸入路由器IP即可進入登錄界面,OpenWrt的默認IP是192.168.1.1。

到此,OpenWrt的大門已為你敞開。接下來,開始嘗試利用OpenWrt實現更多智能應用吧,比如單號多撥榨取運營商帶寬、綁定域名遠程式控制制、掛載大容量硬碟、搭建BT下載機、搭建網路攝像頭、Samba/DLNA家庭NAS共享、私有雲同步、FTP、個人網站/伺服器

『肆』 如何修改openwrt系統信息

Linux系統,需安裝如下依賴包:-c++gettextmakencurses-develpatchunzipwgetzlib-develgit這個不明白,直接安裝就可以了。安裝完之後要是還有問題就需要根據看出錯信息自己下載依賴包了。2、下載OpenWRT源碼我的工作目錄:/workPorjectCode/openwrtsvncosvn://svn/openwrt/branches/backfire(開發版本,不穩定,不建議下載,但在這個版本中有MW4530R配置項。還是下載個使用)svncosvn://svn/openwrt/branches/backfire(目前穩定版本,建議,但是這個版本配置項中少了好多支持。)3、檢查配置環境必須使用非root用戶進行操作,添加一個普通用戶。(注意:如果使用root進行操作的話,會提示檢查失敗:Checking'non-root'failed.)修改可在root用戶下編譯修改include/prereq-build.m文件第15行為:#["$$(shellwhoami)"!="root"]4、下載feedsFeeds是OpenWrt環境所需要的軟體包套件。最重要的feeds有:『packages』一些額外的基礎路由器特性軟體『LuCI』OpenWrt默認的GUI『Xwrt』另一種可選的GUI界面需要能夠連接互聯網。在下載之前可以通過查看』feeds.conf.default』文件,來檢查哪些文件需要包含在環境中。更新所有packages包並安裝,只有安裝之後,在後面的makemenuconfig時,才可以對相關配置進行勾選。

『伍』 openwrt 源碼中如何修改/etc/resolv.conf

首先,openwrt一定要開ssh,然後用ssh登陸到路由器,:
ssh root@路由器ip (表示用root登陸到某個ip,接著輸入密碼)

接著打開/etc/opkg.conf這個配置文件,這個文件是配置軟體源的,命令:
vi /etc/opkg.conf
這個文件的內容如下:
dest root /
dest ram /tmp
lists_dir ext /var/opkg-lists
option overlay_root /overlay
option check_signature 1

『陸』 怎麼修改703N源碼,使AR9331 openwrt 增加四LAN口支持

703n把唯一的有線介面設置為wan口,無線為lan把etc/config/network設置如下即可,唯一的網路介面為wan口,無線為lan口,新增一個3g介面(在防火牆處把3g介面加入wan),可以作為一個3g路由用,也可以作為一個普通的路由用,可以撥號。config 'interface' 'loopback' option 'ifname' 'lo' option 'proto' 'static' option 'ipaddr' '127.0.0.1' option 'netmask' '255.0.0.0'config 'interface' 'lan' option 'type' 'bridge' option 'proto' 'static' option 'ipaddr' '192.168.1.1' option 'netmask' '255.255.255.0'config 'interface' '3g' option 'proto' '3g' option 'service' 'umts' option 'apn' 'cmwap' option 'maxwait' '20' option 'device' '/dev/ttyACM0'config 'interface' 'wan' option 'ifname' 'eth0' option '_orig_ifname' 'eth0' option '_orig_bridge' 'false' option 'proto' 'dhcp'

查看原帖>>

『柒』 openwrt的IP修改了怎麼保存

【注】本文是基於Ubuntu14.04+Openwrt17.01開發的教程。

5.1在開發板上設置IP
由於我們在開發過程中,可能會用到其他路由器,而它們的IP一般都是192.168.1.1,為了讓開發板上的IP不與這些路由器的IP沖突,我們需要修改開發板上的IP地址。

接下來,我們就通過在開發板上面修改配置文件的方式來修改IP地址。首先開發板上電,等它啟動一會兒,然後回車進入控制台。如圖1所示。

我們可以在控制台中輸入ifconfig命令來查看開發板的IP地址。

#ifconfig

如圖2所示,輸入ifconfig命令並回車後,我們就得到了開發板的IP地址,此時是開發板的默認IP地址192.168.1.1。

接下來,我們就來修改IP地址,將它給為192.168.0.10。在開發板上面,通過修改/etc/config目錄下的network配置文件,可以達到目的。首先輸入一些命令。

#vi etc/config/network

此時,我們變可以看到network配置文件的內容如下。

此時,我們只需要將紅色部分的IP地址改為192.168.0.10,然後保存退出,然後再重啟開發板,就發現IP地址被改為192.168.1.111了。

5.2在源代碼中設置IP
前面是通過在開發板上面修改配置文件的方式來修改IP,這樣做雖然簡單,但是每當我們重新燒寫固件後,都要通過這個方式重新修改IP,這樣太麻煩。那麼,接下來我們就來通過修改源碼的方式,來修改IP。

如果大家對OpenWrt系統的啟動流程有一定的了解的話,我們就知道,系統在啟動的時候,會通過運行config_generate這個腳本程序來設置IP等基本參數。該腳本文件位於系統源碼的openwrt /package/base-files/files/bin目錄,那麼接下來我們就來修改該腳本文件,從而修改IP地址。

#cd ./package/base-files/files/bin
#vim config_generate

然後我們就可以在該腳本程序中看到,它是想IP地址設置為192.168.1.1的。

那麼,我們只需要將藍色部分的IP改為192.168.1.11即可。如下圖所示。

修改完成以後,然後保存退出。最遲回到OpenWrt系統源碼的頂層目錄,然重新編譯系統即可。

#make V=99

將新編譯出來的固件,重新燒到開發板上面,然後再查看IP,就發現IP的初始值已經是192.168.1.111了。

————————————————
版權聲明:本文為CSDN博主「帥氣滴點C」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/_31437863/article/details/89312405

『捌』 如何編譯OpenWrt

准備工作
在開始編譯Openwrt之前需要您做些准備工作;與其他編譯過程一樣,類似的編譯工具和編譯環境是必不可少的:
一個構建OpenWrt映像的系統平台,簡單說就是准備一個操作系統(比如Ubuntu、Debian等);
確保安裝了所需的依賴關系庫, (在debian系統中就是安裝各種需要的軟體包)
OpenWrt源代碼副本
首先, 開機登陸到支持編譯Openwrt的操作系統(廢話了)。實體機或者虛擬機(Vmware 或者 Qemu)里的操作系統都行,這里推薦使用Linux系統。 bsd和mac osx系統也可以編,但不推薦,且未驗證是否可編譯成功。下文假定您使用的是Debian操作系統,使用 apt-get 來管理包. 替代的選擇是 Ubuntu (分支 Kubuntu, Xubuntu 等即可)。
第二步, 就是安裝所需要的各種軟體包, 包括編譯器,解壓工具,特定的庫等. 這些工作可以簡單的通過鍵入以下命令 (通常需要root 或者是 sudo 許可權),以root許可權安裝下列軟體包(可能並不完整,會有提示,提示缺少即裝就可以了):
32位(x86)請執行下列命令:
# apt-get install build-essential asciidoc binutils bzip2 gawk gettext \
git libncurses5-dev libz-dev patch unzip zlib1g-dev

64位(x86_64)請執行下列命令(多裝了哪些庫或軟體包呢?請您仔細看一看哦):
# apt-get install build-essential asciidoc binutils bzip2 gawk gettext \
git libncurses5-dev libz-dev patch unzip zlib1g-dev ia32-libs \
lib32gcc1 libc6-dev-i386

參考 本列表中 所列的編譯環境所需要軟體包或庫。
某些依賴的為庫或軟體包也許操作系統中已經安裝過,此時apt-get會作出提示(提示您忽略或重新安裝的),別緊張,放輕鬆些,編譯Openwrt不會像編譯DD-WRT那樣難的(至少本人是體會到了編譯DD-WRT的難)。
最後下載一份完整的 Openwrt 源碼到編譯環境中。關於Openwrt的源代碼下載,途徑有二,一是通過 svn ,一是通過 git,建議使用 svn ,因為Openwrt主要以 svn 來維護Openwrt系統的版本。另外,請注意Openwrt中不同的分支版本,一個是用得較多的開發快照,俗稱 trunk,二是穩定版,俗稱 backfire。

熱點內容
無線網檢查網路配置是怎麼回事 發布:2025-05-16 14:04:03 瀏覽:220
網路爬蟲python代碼 發布:2025-05-16 14:03:26 瀏覽:516
汽車小組件怎麼弄到安卓桌面 發布:2025-05-16 13:51:12 瀏覽:220
linuxg編譯器下載 發布:2025-05-16 13:50:58 瀏覽:776
centosc編譯器 發布:2025-05-16 13:50:17 瀏覽:948
安卓手機如何變換桌面 發布:2025-05-16 13:39:33 瀏覽:515
sql存儲過程命令 發布:2025-05-16 13:17:54 瀏覽:146
用紙做解壓小玩具西瓜 發布:2025-05-16 13:04:09 瀏覽:935
區域網xp無法訪問win7 發布:2025-05-16 13:03:58 瀏覽:942
油卡如何修改密碼 發布:2025-05-16 13:00:35 瀏覽:901