如何從零開始學習OpenWrt?

背景:

CS學科背景,編程沒問題,Linux懂基礎知識。

由於學校背景原因,之前沒有接觸過硬體開發、單片機、嵌入式等。

目的:

想要自己動手修改無線路由器,比如加入每天凌晨自動修改Wifi密碼等。

疑問:

是要自己學燒板子等各種知識嗎?能不能再極路由上做二次開發?或者修改一個OpenWrt,再刷到極路由上?


openwrt方面的真的不要再邀請我了,我真的不懂,我只是個木匠。

線面的內容是複製來自我回答 開發openwrt,除了需要懂linux外,還需要哪些技能? 這個問題的,內容大多是搜索引擎檢索爬文。

————————————

OpenWrt中文視頻教程(YouTube,請自備梯子)

視頻來自報到台灣的OpenWrt大牛

蔡志展 chihchun: mesh network on openwrt

林智斌 macpaul: port wifi router to openwrt

蔡政崇 wtsai: batman on openwrt

[COSCUP 2007] 嵌入式系統

(1/2) http://www.youtube.com/watch?v=C__hV6TZRw8list=PLB435557BA4B4BF0D

(2/2)http://www.youtube.com/watch?v=z7EfCGuyxUUlist=PLB435557BA4B4BF0D

COSCUP 2008: OpenWrt網路志工-新版OpenWrt介紹與實例分享(chihchun)

(1/3) http://www.youtube.com/watch?v=kBK5TQlAnA4

(2/3) http://www.youtube.com/watch?v=vFNoKFSZI1w

(3/3) http://www.youtube.com/watch?v=ChINHc6zcWA

COSCUP 2009: OpenWrt,A value add base solution for your product

http://www.youtube.com/watch?v=EiK3tsz6Cco

COSCUP 2010: Porting a New Architecture to OpenWrt Project

http://www.youtube.com/watch?v=R81hMuiepsc

一些OpenWrt技術社區

國內

磊科雲社區-論壇分區,路由器的江湖,路由發燒友論壇

恩山無線論壇

openwrt,中文版,論壇,知識庫

OpenWRT討論區

如意·雲社區-如意·雲路由

小米手機社區官方論壇

首頁 - 極路由HiWiFi

中國最大最專業的無線網路社區門戶!無線論壇!Anywhere WLAN!隨時隨地無線! -

迅雷路由器論壇

思科中文技術社區 網路

首頁 - 寬頻技術網

國外

OpenWrt官方論壇 OpenWrt

dd-wrt官方論壇 DD-WRT Forum :: Index

netgear-myopenrouter MyOpenRouter : The Premier Online Community for NETGEAR"s Family of Open Source Open Platform Routers

Gargoyle-石像鬼 Gargoyle Forum ? Index page

PirateBox Forum http://forum.daviddarts.com/

OpenWrt開發文檔

wiki

編譯

開發

Refs

WIKI

Documentation

編譯

早期OpenWrt編譯文檔

工具鏈

編譯準備

編譯

添加feeds

Image Builder

SDK

Rootfs on External Storage (extroot) (1/2)

Rootfs on External Storage (extroot) (2/2)

wireless router which is connected to either a wired, a wireless or a 3G wireless connection

How to Build a Single Package

開發

Cross Compile

外部編譯器設置-(1/3)

外部編譯器設置-(2/3)

外部編譯器設置-(3/3)

Creating packages

Feeds

Using Dependencies

How To Submit Patches to OpenWrt

External Toolchain - Use OpenWrt as External Toolchain (1/2)

External Toolchain - Use OpenWrt as External Toolchain (2/2)

參閱

編譯OpenWrt

謝謝 @王小強 童鞋。

Lua

還有Lua,openwrt的WEB管理界面是基於這個語言,

LuCI官網: LuCI

openwrt-luci技術文檔: LuCI – Technical Reference

luci翻譯項目: http://i18n.luci.subsignal.org/pootle/

中文視頻教程:專輯:講Lua的cocos2d-x進階教程

——————————————分割線————————

回答完畢,希望給個贊。


這點要求的話完全不需要學習開發誒...只需要買個有openwrt支持的路由,看一下openwrt的wiki,然後ssh進去將相應的shell寫入crontab就行了。

比如定時修改WiFi密碼,就是在crontab中寫入 修改 /etc/config/wireless,然後/etc/init.d/network restart 的指令即可。

另外強烈不推薦小米路由或極路由等二次開發後的產品,會帶來很多額外的問題。比如我曾搶過首發版的小米路由,不僅ssh需要用偏方開啟,內置的包管理也被破壞得一塌糊塗。雖然修復起來也不算太困難,不過總歸是個很噁心的事情。


不是非要說很多才是好答案,可以看叔寫的把玩 OpenWRT 過程:博客 - UMU Corporation

本人是 Windows 程序員,幾乎不懂 Linux,所以很符合您的條件,從零開始。


目錄 《路由器就是開發板》 - aggresss的專欄 - 博客頻道 - CSDN.NET


我個人主要是看openwrt官網的wiki, 上面非常全,是學習linux on mips的好東西.

可以看下我在網易雲課堂上總結的

OpenWrt學習計劃計劃詳情


前提是你得有一個支持openwrt的硬體,極路由當然是可以的,只要能進入linux shell,就可以實現你說的定期改密碼的功能,可以參考crondtab命令,wifi密碼修改可以自行搜索文檔..

自己刷機的話肯定是可以的,極路由的晶元和tplink的703n是一樣的,只是外部配置不同,自己開發的話需要花點時間修改.

板子的知識需要懂一點,比如內存大小,flash大小,外部按鍵引腳等.

入門教程可以用703n做參考直接到openwrt的官網上找.


我已經從事OpenWrt開發5年以上了,做過C、Lua、Fast-CGI、Web開發。

我平時也做一些技術總結,學識有限,僅供參考。

請訪問:

OpenWrt and me · GitBook


突然看到這個問題,其實,每天凌晨自動修改密碼真的好簡單啊,只需要一個shell腳本,讓它定時執行就好了。

板子可以燒,可以不燒,可以直接在極路由做二次開發。

如果需要刷入固件一方面是需要對硬體有一定了解,可以調試,另一方面就是要有足夠好的驅動


如果只是作一些功能上的修改,可以直接開ssh許可權,刷一個編譯好的內核進去,然後剩下的就是linux的事了,寫腳本什麼的。


無線通信(zigbee,wifi,ble)367702028現在裡面人不是太多,但是都是openwrt研發高手在裡面,有學習需要或學習上有問題和想交流下的歡迎一起探討提高。


整個一套OP的精華都在Makefile裡面,看懂Makefile就完成了大部分工作


推薦閱讀:

TAG:無線路由器 | OpenWrt |