歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux技術 >> 從零開始學習Openwrt教程

從零開始學習Openwrt教程

日期:2017/3/3 13:58:01   编辑:Linux技術

Openwrt教程

本文參考/content/8235624.html
http://www.openwrtdl.com/wordpress/openwrt-full-tutorial
轉載請轉明出處!!!!

Openwrt特點

可擴展性好,可以在線安裝您所需要的功能,目前有1000多個功能包可選
是一台完整的Linux工作站,文件系統可讀可寫,便於開發者學習和實踐
現在有很多人開始折騰openwrt,作為新手很難去找到一份系統的入門資料,在這裡我整理一下自己在學習openwrt的時候所遇到的問題,跟大家分享下,開始我們的openwrt學習之路

第一部分:搭建編譯環境

安裝Ubuntu(編譯需要Linux環境),到其官網下載,版本根據自己所需選擇即可。我選擇的是安裝在虛擬機裡,在這裡就不陳述安裝的過程了,我想大家應該都知道。
安裝完成後打開終端。
逐條輸入下列命令(及時驗證是否安裝成功):
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
sudo apt-get install libssl-dev
sudo apt-get install libssl0.9.8
至此編譯環境搭建完成。

第二部分:下載OpenWrt源碼並編譯

(1)OpenWrt源碼分為兩種,一種是trunk版,一種是backfire版。

Trunk版下載命令:(由於現在openwrt用git來管理代碼,所以這裡就不說明svn的下載地址了)
15.05 branch(Chaos Calmer)
[code]git clone git://git.openwrt.org/15.05/openwrt.git

14.07 branch(Barrier Breaker)
[code]git clone git://git.openwrt.org/14.07/openwrt.git

12.09 branch(Attitude Adjustment)
[code]git clone git://git.openwrt.org/12.09/openwrt.git

12.09的軟件包更新地址
[code]git clone git://git.openwrt.org/12.09/packages.git

Backfire下載命令:
[code]svn co svn://svn.openwrt.org/openwrt/branches/backfire/

選擇好自己想要的版本,等待下載。

(2)更新擴展,安裝擴展

cd openwrt
./scripts/feeds update -a
./scripts/feeds install -a

(3)進入定制界面

make menuconfig
make作為trunk版本的編譯命令,只能在trunk目錄執行,進入配置菜單界面,鍵盤上下是移動光標,左右是選擇底部按鍵,回車是確認,空格是設置選擇模式,選項最前面的選擇模式有[*]表示編譯進固件,[M]表示編譯成安裝包,[ ]表示不選擇,esc是返回上級菜單,按?是幫助,按/是搜索。
搜索結果說明:Symbol: PACKAGE_l7-protocols [=Y]
——包的名字,以及有被選中 Dedfined at tmp/.config-package.in:14725——表示這個包概況
PACKAGE_iptables-mod-filter [=Y]
——被依賴的這個包有選中
Location:——指明l7-protocols這包在menuconfig的界面的哪層菜單中,方便查找
-> Network
-> Firewall
Selects: \——可以附帶選擇哪幾個包
Selected by: \——同時選擇以下幾個包,那l7-protocols會被自動一起選中
如果一切正常,會出現一個配置菜單,可以選擇要編譯的固件平台(芯片類型)、型號,還能選擇固件中要添加的功能和組件,配置好後保存並退出菜單即可(在這裡我選擇的平台是Ralink RT288x/RT3xxx,型號是7620a)

當然,還要安裝luci以及語言支持
LUCI—>Collections—>luci

LUCI—>Translations—>luci-i18n-chinese

這樣就選好了luci以及中文支持,記得在最後選擇yes保存。

(4)開始編譯

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進行配置,一般有兩條途徑:
SSH登錄通過命令行控制
Web登錄通過Web界面設置
首次安裝OpenWrt後,需要設置密碼才可以使用SSH登錄,方法是使用telnet登錄或者Web登錄設置密碼。
在這裡說下Web登陸設置密碼,由於Openwrt默認網關是192.168.1.1,所以打開浏覽器,輸入192.168.1.1,進入luci,剛開始是不需要密碼就可以直接登陸的。

進入此選項之後設置自己的登陸密碼,在System中設置中文支持。

設置好之後保存並運用。

接下來用ssh登陸

這裡我用的是xshell,設置好主機名和端口號

然後接下來填寫用戶名和密碼

OK!現在可以直接用ssh登陸了!!

一般指令與常見Linux發行版相同,但是OpenWrt使用自己的包管理器:opkg,使用“opkg –help”查看幫助信息。以下是一些常用操作命令:
opkg update //更新軟件包列表
opkg install //在線安裝軟件包
opkg remove //移除軟件包
到此,OpenWrt的大門已為你敞開。接下來,開始嘗試利用OpenWrt實現更多智能應用吧,比如單號多撥搾取運營商帶寬、綁定域名遠程控制、掛載大容量硬盤、搭建BT下載機、搭建網絡攝像頭、Samba/DLNA家庭NAS共享、私有雲同步、FTP、個人網站/服務器…
Copyright © Linux教程網 All Rights Reserved