Luci框架搭建簡易文檔
前言:
一直想把luci的東西補全,懶惰着一直沒有寫這些文檔,現在試着寫一些東西,這一篇是關於搭建luci框架的,基於一般的軟件開發linux系統(我寫這篇文章用的是fedora16 軟件開發版),關於缺少的庫的自行去解決,這裏不做贅述,關於luci的搭建方式很多,自動改裝的也很多,這裏自作我認爲最方便的傻瓜的搭建方式,自認爲搭建之後能形成清晰的搭建環境,可擴展可升級性較強。
Luci現在是openwrt web管理的默認框架,我這裏也是按照openwrt的的方式搭建。
正文:
1:環境
1:fedora16 gcc (GCC) 4.6.3 20120306 (Red Hat 4.6.3-2) GNU Make 3.82
2:lua 5.1.5
2:軟件包
1:lua:
wget http://www.lua.org/ftp/lua-5.1.5.tar.gz
tar xvf http://www.lua.org/ftp/lua-5.1.5.tar.gz
cd lua-5.1.5
make linux
注意: 如果出現缺少readline的問題,請自行安裝解決
2:luci:
svn export http://svn.luci.subsignal.org/luci/branches/luci-0.10 (我習慣用export,這樣不會下載svn文件,省去了費勁的去處.svn的麻煩,不過你要是想着經常升級,請用co)
cd luci-0.10
make
在make的時候如果出現錯誤請自行解決,一般的情況是缺少庫,安裝或是下載 -I/include就可以了
如果上面的做法都順利的話,就會編譯出你需要的搭建luci的所有東西了,我們只要按照openwrt的方式組織這些東西就好了。
3:搭建
1:搭建所需要的清單
Luci文件夾下面的基本庫
動態連接庫*.so
MVC controller/admin /model/cbi view
Web server uhttpd
Config
www
2:搭建
搭建的原則 各歸各位,按照openwrt組織
1:組件luci文件夾 把luci運行所需要的庫放到luci文件夾根目錄
把MVC cp到luci文件夾
2:建立動態連接庫
有一些.so需要C庫的支持,比如uci.so 需要libuci.so.0.8等 請自行搬移安裝
3:建立config文件夾
在/etc/config/下面建立配置文件 luci等
4:建立web server 把已經編譯好的uhttpd 拷貝到相應的bin下面 寫啓動腳本,可參照openwrt
4:問題
1:組建luci文件夾的時候要有耐心,邊組件便用記事筆記本記錄下組件需要的文件和位置,組件成功後,寫一個從luci-0.10 ln 或是cp的腳本,方便升級。
2:在編譯或是組件的時候,一般會缺少一些庫,比如編譯lua的時候會出現缺少readline 等,在測試uci的時候會出現缺少libuci等問題,請耐心解決
3:openwrt的啓動和參照 附在下面,當然,我更加推薦的方式是用UML(user mode linux 或是QEMU)這兩個小弟只是入門亂碰級別,不做深入文檔。
首先安裝VirtualBox虛擬機軟件(個人推薦VirtualBox),再去openwrt官網下載openwrt-x86-ext2.image鏡像文件,
用VirtualBox的命令行方式:
VBoxManage convertfromraw --format VMDK openwrt-x86-ext2.image openwrt-x86-2.6-ext2.vmdk
把下載到的鏡像文件轉換成vm的虛擬磁盤格式.
運行虛擬機軟件,建立新虛擬機,128M內存就夠了,硬盤就用上面轉換出來的vmdk文件,不要忘了用橋接方式加2塊以上網卡,1Lan,1Wan
(vm最多可以加10塊網卡,VirtualBox可以加8塊,4塊可以直接加,另外4塊可以建完虛擬機後修改xml配置文件得到)
啓動虛擬機,設本機IP爲192.168.1.X,直接在瀏覽器中輸入192.168.1.1,就能進入openwrt的web配置界面了.
擴展
1:openwrt 啓動腳本閱讀
2:lua 學習
3:QEMU 構建虛擬開發板
4:gcc 4.6據說支持golang
5:說明,好像上面四條與主題沒什麼關係,誰知道呢!
6:我懷疑我寫的文檔沒人看得懂,包括我自己,SO 你還是想知道並且要讓我也知道的更多請email:[email protected]