luci修改的配置如何生效
㈠ 如何修改openwrt編譯時的默認的luci主題
在編譯的時候將你的配置文件放到制定位置就好了。你的情況是要自定義LuCi,那你就去buildroot/packages/luci裡面,修改裡面的代碼就好
㈡ 如何修改配置文件
1. 引言
OpenWRT中採用LuCI作為它的Web interface界面框架,採用Lua語言。在本文中將以一個簡單的示例詳細描述如何自定義開發一個界面,對一個配置文件進行操作。
2.Model與Controler
MVC的設計理念是進行LuCI開發的一個關鍵
在LuCI中Controller的文件定義在固件中的/usr/lib/lua/luci/controller目錄中,模版目錄在/usr/lib/lua/luci/view目錄下,而model則是在/usr/lib/lua/luci/model中。而model中有一個特殊的模塊叫做CBI,被稱為LuCI中最酷的功能,該模塊的功能是方便的對一個配置文件進行修改。
3.示例
本文中的頁面建立在LuCI界面的network下,不單獨創建頁面,因此無需寫view,只用些controller和model就可以了。
1)首先創建一個controller
ccontroller/mycbi.lua
mole("LUCI.controller.mycbi", package.seeall)
function index()
entry({"admin", "network", "mycbi_change"}, cbi("mycbi-model/mycbimole"), "Change My Conf", 30).dependent=false
end
解釋一下關鍵代碼:
在index()函數中,使用entry函數來完成每個模塊函數的注冊,官方說明文檔如下:
entry(path, target, title=nil, order=nil)
path is a table that describes the position in the dispatching tree: For example a path of {"foo", "bar", "baz"} would insert your node in foo.bar.baz.
target describes the action that will be taken when a user requests the node. There are several predefined ones of which the 3 most important (call, template, cbi) are described later on on this page
title defines the title that will be visible to the user in the menu (optional)
order is a number with which nodes on the same level will be sorted in the menu (optional)
其中target主要分為三類:call,template和cbi。call用來調用函數,template用來調用已有的htm模版,而CBI模塊則是使用非常頻繁也非常方便的模塊,包含的一系列lua文件構成界面元素的組合,所有cbi模塊中的控制項都需要寫在luci.cbi.Map中,在cbi模塊中定義各種控制項,Luci系統會自動執行大部分處理工作。在cbi.lua文件中封裝了所有的控制項元素,例如復選框,下拉列表等。
2)創建model
#mkdir /usr/lib/lua/luci/model/cbi/mycbi-model
#vim /usr/lib/lua/luci/model/cbi/mycbi-model/mycbimole.lua
m = Map("mycbi", "mycbi conf change interface")
s = m:section(TypedSection, "MySection")
s.addremove = true
s:option(Value, "username", "Name:")
key=s:option(Value, "password", "Password")
key.password=true;
return m
解釋一下關鍵代碼:
3)創建配置文件
#vim /etc/config/mycbi
config 'MySection' 'mycbi'
option 'username' 'youruser'
option 'password' 'yourpass'
4. 測試
進入OpenWRT界面,登陸後就可以點擊「網路」,如果是英文就點擊network,可以看到我們添加的子頁面入口:
點擊後進入頁面如下:
輸入用戶名密碼:root/test,點擊保存,後台查看配置文件已經被更改:
5. 問題記錄
1)首先,配置文件不能有任何後綴,否則頁面載入後是空頁面
2)如果出現500 錯誤,說明lua文件寫的有問題,要麼是路徑錯誤,要麼是語法錯誤,暫時沒找到寫日誌的方法,可以用wireshark抓包看錯誤
㈢ luci web管理頁更改了源代碼怎麼不立即生效
以前都沒聽過openwrt和luci,只接觸過簡單的php語言。由於工作原因,要修改下luci的界面,竟然用了我2天的時間才簡單的了解了luci的用法。這里簡單的和大家分享下。(就接觸2天,本人又是菜鳥級別,高手直接略過吧)大家發現有什麼錯誤就和我說下大家共同學習。我主要是想修改下open後台界面網頁的內容。
具體怎麼安裝已經有人介紹過來了,我就不詳細說了。下面說配置好之後,修改UI的做法
在瀏覽器中輸入:
默認的幾個一級菜單都是在moles\admin-full\luasrc\controller\admin\ 這個目錄下
這個就類似於php的根目錄了。/etc/config/這個目錄下面的文件,個人觀點是可以把它當做是php中的資料庫連看待,這樣反而更方便理解。
實際上luci界面提供的已經很全了,我們並沒有多少必要要新建立頁面,我們大多就是在已有的界面上添加一些內容。比如我們公司現在需要添加wifi的isolate和maxassoc這兩項屬性。就讓我找了半天才找到
㈣ 如何修改openwrt編譯時的默認的luci主題
$ make V=99編譯固件完成之後$ vi build_dir/target-mips_uClibc-0.9.30.1/root-brcm63xx/etc/config/luci修改LUCI的默認主題和語言,把其中的option lang autooption mediaurlbase /luci-static/openwrt.orgoption resourcebase /luci-static/resources修改為option lang zh_cnoption mediaurlbase /luci-static/bootstrapoption resourcebase /luci-static/resources還有什麼要改的,都可以在build_dir/target-mips_uClibc-0.9.30.1/root-brcm63xx/這個目錄下去改比如etc/config/network或者lib/functions/uci-defaults.sh改網路配置比如lib/wifi/mac80211.sh改無線網配置等等....再次編譯固件(這個比較快)$ cd ~/dreambox$ make target/install
㈤ luci無法保存
可以直接修改network文件。
網路設置luci界面的保存應用有問題,會大概率出現lan口物理埠被異常更改的狀況,表現在network文件中configinterface'lan'這節的optionifname'eth0'欄位的值被修改為其他值,像docker0、tun0等不一,如果這時候應用設置了,網路肯定是不會通了。後面每次涉及到修改網路設置,我都會先保存,然後去右上角的「未保存的配置」那裡確認一下有沒有問題才點應用,發現有異常,可以點放棄,重新進網路頁面去設置,如果每次都有異常,重啟一下路由器再試。懂配置文件的話,也可以直接修改network文件。
㈥ 192.168.1.1/cgi-bin/luci是什麼意思
您好,你要切記修改完路由的時候要保存,完後要重啟路由才能生效,如果前面你操作沒保存,最好自己重啟下路由器,一般這個情況不會出錯的,還有你打開進入的時候最好用瀏覽器,別在我的電腦那個界面登陸。實在不行,你就在左下角:開始-運行-CMD-輸入ipconfig/all回車,看看你自己的網管,是192.168.1.1,還是192.168.0.1,這樣就不會出錯了,你試下吧。
㈦ 路由器刷了個openwrt系統,
可以到openwrt官網查詢支持openwrt的路由器,地址如下:
http://wiki.openwrt.org/toh/start
OpenWrt 可以被描述為一個嵌入式的 Linux 發行版,(主流路由器固件有 dd-wrt,tomato,openwrt三類)而不是試圖建立一個單一的、靜態的系統。
以TP-LINK WR703N 為例簡單介紹一下刷openwrt流程:
1、下載安裝
訪問WR703N在OpenWrt的Wiki頁,然後在Flashing一節中找到下載鏈接:squashfs-factory.bin。
進入路由器管理界面,出廠配置為http://192.168.1.1,用戶名和密碼均為admin,然後進入固件更新,選擇下載的文件,然後更新。等待一段時間(~~2min),然後重啟路由。
2、初始配置
用一根網線將路由器的Lan口和你電腦相連,電腦上設置為DHCP模式。然後運行cmd.exe
輸入telent 192.168.1.1
成功後將出現OpenWrt的歡迎界面。
然後更改root密碼:
輸入passwd
更改root密碼後dropbear(SSH 服務)就運行了,輸入exit退出telent。
以後就可以通過ssh管理OpenWrt。
3、網路配置
OpenWrt官方的固件是不帶LuCl的,所以初始的網路設定需要在命令行下完成
下載ssh連接工具putty
輸入192.168.1.1
點擊open,如果彈出窗口點是即可。
輸入用戶名root回車 然後輸入你剛剛設定的密碼
然後用vi修改相關配置。
首先修改/etc/config/wireless文件
輸入vi /etc/config/wireless回車
注釋掉# option disabled 1
按i進入修改模式
改好後按esc,然後輸入:wq保存退出
然後修改/etc/config/network文件。
首先修改lan介面配置,注釋掉此行:
# option ifname 'eth0'
然後增加wan介面,如果你上級網路是DHCP的,則文件的末尾添加:
config interface 'wan'
option ifname 'eth0'
option proto 'dhcp'
如果你上級網路是靜態IP,則在文件的末尾添加:
config interface 'wan'
option ifname 'eth0'
option proto 'static'
option ipaddr '10.22.33.124'
option netmask '255.255.255.0'
option gateway '10.22.33.1'
option dns '202.113.16.10'
然後將路由器的Lan/Wan口接到上級網路中,重啟路由器。
這時便可以通過電腦尋找SSID為 OpenWrt的無線網路,加入後電腦便可以通過703N上網了。
接著ssh 到路由器
登陸後輸入opkg update
opkg install luci
/etc/init.d/uhttpd enable
/etc/init.d/uhttpd start
就有luci(WEB)界面了~
完後就可以通過瀏覽器訪問192.168.1.1來配置路由器了
㈧ 如何編輯配置openwrt,來實現pppoe撥號上網
愛應用問仁間為您解答:
首先進入字元界面,然後輸入 cd /etc/config 進入 /etc/config 目錄
2.輸入vi network,進行network文件配置
3.輸入如下字元
config 'interface' 'wan'
option 'ifname' 'eth1'
option 'proto' 'pppoe'
option 'username' 'xxxxxxxxxx' (xxxxxxx表示是你的pppoe帳號)
option 'password' 'xxxxxxxxxx' (xxxxxx表示是你的密碼)
option 'peerdns' '1'
option 'defaultroute' '1'
4.按:,再按w保存文件
5.輸入 cd / 退回根目錄
6.輸入 /etc/init.d/network start
這樣可以上網了。望採納。如有問題請追問。