关键词不能为空

当前您在: 主页 > 英语 >

Openwrt编译进阶说课讲解

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-17 11:20
tags:

-

2021年2月17日发(作者:minx)


O


p


e


n


w


r


t


< br>译









精品文档



摘要




这篇 文章是


Openwrt


编译的学习笔记包括(

< br>1



Openwrt


基础入门< /p>



2



Open wrt


基础进阶(


3


)集成软件




之前总喜欢在在写文章之前写一大段自己 的光荣事迹,后来发现


看别人这样写的文章是一件很蛋疼的事,毕竟这是一篇技术类文< /p>


章,不是小学生日记。



好吧,这次直接 进入正题,抱歉,又写了一段和本文内容无关的


文字


……



去年学校开始用


H3C

认证来限制我们上网,于是好奇心再次害死


猫,本宫终于修成正果,误入

< p>
Openwrt


这个大坑,折腾


Openwrt< /p>


有一年多了,到了回馈社会的时候了,这篇文章写写


Openwr t



译的一些高级配置(相对入门级编译教程而言),以


HG255D



例。



Openwrt


基础编译


< p>
这类文章一手一大把,精简的,详细的(多半是废话)都有,这


里就简单的 把一些指令写下



编译环境为


Ubuntu


#


升级组件包



sudo apt-


get


update


#


安装编译需要的组件



sudo apt-


get


install gcc g++ binutils patch bzip2 flex bison make


autoconf gettext texinfo unzip sharutils subversion libncurses5-dev


ncurses-term zlib1g-dev git-core gawk asciidoc libz-dev


收集于网络,如有侵权请联系管理员删除



精品文档



sphinxsearch libtool sphinx-common libssl-dev libsqlite3* intltool


libiconv* gstreamer-


0.10


* glib2


.0


libxml2-dev qemu



*


64


位系统需安 装


ia32-libs



< p>
#


使用非


root


用户登 录,建立


openwrt


目录



mkdir openwrt


#


进入


openwrt


目录



cd openwrt


#


下载


openwrt


源码



svn checkout svn:


///openwrt/trunk



#


赋予


trunk


目录权限< /p>



sudo chmod -R


777


trunk


#


进入


trunk


目录



cd trunk


#


更新最新源码



./scripts/feeds update -a


#


安装最新源码



./scripts/feeds install -a


#


更新版本号



svn up


#


进入编译菜单



make menuconfig


Y


:选择


Y


,该软件将被编译,并且加入到你的目标固件里;



M


:选择


M


,该软件包将会被编译,但不会被放入固件里。在需要它的时候,可以用

OPKG


软件包管理器进行安装;



N


:选择


N


,该软件包将不会被编译 ,也不会被安装进固件。



方向键是移动光标



回车键是确认



空格键是选择,可以代 替


Y/M/N


键的使用



/:


搜索



#


编译



make V=


99



#


清除编译过程产生的临时文件



make clean


#


恢复编译环境



make defconfig


Openwrt


编译进阶



收集于网络,如有侵权请联系管理员删除



精品文档



其实按照上面的指令一路执 行下来,你已经能够在


/bin/$$target


< p>
找到刷机固件了


,


是不是很简单

< br>……



修改


WIFI

< p>
设置



package/kernel/mac8 0211/files/lib/wifi/



config wifi-device radio$$devidx



option



type



mac80211




option


channel


11




option


hwmode


11


ng



option


path


''




option


htmode HT20



list


ht_capab GF



list


ht_capab SHORT-GI-


20




list


ht_capab SHORT-GI-


40




list


ht_capab TX-STBC



list


ht_capab RX-STBC12


# REMOVE THIS LINE TO ENABLE WIFI:



option


disabled


0




option


noscan


1




option


txpower


20




option


htmode HT40-



config wifi-iface



option


device radio$$devidx



option


network lan



option


mode ap


#


自定义


SSID



MakeBlaze_MAC


后六位




option


ssid MakeBlaze_$$(cat


/sys/


class


/ieee80211/$${dev}/macaddress|awk -F




'{print $$4


| tr


a-z A-Z)



option


encryption none


修改


LUCI


修改

< br>LUCI


界面配置



收集于网络,如有侵权请联系管理员删除



精品文档



feeds/luci/m odules/base/root/etc/config/luci



config core main



option


resourcebase


'/luci-static/resources'




#


设置默认语言




option


lang


'zh_cn'




#


设置默认主题




option


mediaurlbase


'/luci- static/bootstrap'




#


设置可选择的语言




config internal languages



option


zh_cn


'chinese'




option


en


'English'



#


设置可选择的主题



config internal themes



option


Bootstrap


'/luci-static/bootstrap'



添加释放内存



feeds/luci /modules/admin-


full/luasrc/controller/a dmin/



function


index


()



+


entry


({

< p>


,



}, call(



), _(



释放内存



),


75


)



end




function



Free_Memory


()




luci


.

< br>util


.


exec


(



)




luci


.


http


.


redirect


(_url(



,



,



))



end



在顶栏显示重启



feeds/luc i/modules/admin-


full/luasrc/controller/ admin/



function


index


()




entry


({



,



}, call(



), _(



),


90


)



收集于网络,如有侵权请联系管理员删除



精品文档



end



feeds/luci/mo dules/admin-


full/luasrc/view/admin_syst em/



<%:Perform reboot%>



在顶栏显示备份


/


升级



feeds/luci/mod ules/admin-


full/luasrc/controller/admin /



function


index


()




entry


({



,



}, call(



), _(



),


70


)



end



修改配置文件



package/base- files/files/etc/



在这个目录里,你可以把你的备份的路由器导入进来



修改


root


密码



package/base- files/files/etc/shadow



#


默认情况下


root


是没有密码的,需设定密码 才能开启


ssh



root:


$$1$$wEehtjxj$$YBu4quNfVUjzfv8p


/PBo 5.:


0


:


0


:


99999


:


7

:::


修改路由连接数



package/base- files/files/etc/



_conntrack_ max


=


65535



修改主机名,设定时区



package/base- files/files/etc/config/system



收集于网络,如有侵权请联系管理员删除



精品文档



config system


#


设置主机名




option


hostname


'MakeBlaze'




option


conloglevel


'8'




option


cronloglevel


'8'



#


设置时区




option


zonename


'Asia/Shanghai'




option


timezone


'CST-8'




#


设置时间服务器



config timeserver


'ntp'




option


enable_server


'1'




list


server


'210.72.145.44'




list


server


''




list


server


''




list


server


'202.120.2.101'




config led


'usb_led'




option


name


'USB'




option


sysfs


'hg255d:usb'




option


trigger


'usbdev'




option


dev


'1-1'




option


interval


'50'




config led


'wlan_led'




option


name


'WLAN'




option


sysfs


'hg255d:wlan'




option


trigger


'netdev'




option


dev


'ra0'




option


mode


'link tx'




config led


'internet_led'




option


name


'INTERNET'




option


sysfs


'hg255d:internet'




option


trigger


'netdev'




option


dev


'eth0.2'




option


mode


'tx rx'



SAMBA


免密码访问



收集于网络,如有侵权请联系管理员删除



精品文档



package/base- files/files/etc/config/samba



config samba



#


显示中文




option


charset


'gb2312'




config sambashare



option


read_only


'no'




option


guest_ok


'yes'




option


create_mask


'0777'




option


dir_mask


'0777'




option


display charset


package/base- files/files/etc/samba/te



[global]


netbios


name =


|NAME|


display


charset =


|CHARSET|



interfaces =


|INTERFACES|


server


string =


|DESCRIPTION|


unix


charset =


|CHARSET|



workgroup =


|WORKGROUP|



browseable =


yes



deadtime =



30



domain


master =


yes


encrypt


passwords =



true



enable core


files =


no


guest


account =


root


guest


ok =


yes



#invalid users = root



local


master =


yes


load


printers =


no



map


to


guest =


Bad User


max


protocol =


SMB2


min receivefile


size =



16384




null



passwords =


yes


obey pam


restrictions =


yes


os


level =



20



passdb


backend =


smbpasswd


preferred


master =


yes



printable =


no



security =


share


收集于网络,如有侵权请联系管理员删除



精品文档



smb


encrypt =


disabled



#smb passwd file = /etc/samba/smbpasswd



socket


options =


TCP_NODELAY IPTOS_LOWDELAY



syslog =



2



use


sendfile =


yes



writeable =


yes


集成软件



添加


aria2



luci


添加 ,


web


管理界面



aria2 /projects/aria2/files/stable/



#aria2


的依赖安装



sudo apt-


get


update


sudo apt-


get


install autoconf automake libcppunit-dev autopoint


openssl libtool sphinx-common sphinxsearch libgcrypt11-dev


#

< br>下载


aria2


源码



cd dl


sudo apt-


get


install wget


wget http:


///projects/aria2/ files/stable/aria2-1.18.7/2



#


获取


md5




md5sum aria2-


1.18.7


.2


#


添加


luci- aria2



这里用的是南浦月的


luci-app- aira2



webui-aria2


OpenWrt-Extra /nanpuyue/openwrt- extra




feeds.


conf


.default


中添加


`src-git extra


gi


t:


//github.


com


/nanpuyue /`


./scripts/feeds


update


-


a



./scripts/feeds install -


a




make menuconfig


中 选中


aria2



luci-app- aira2



webui- aria2


就可以了



收集于网络,如有侵权请联系管理员删除



精品文档



添加将自己开发的程序



< p>
package


下建立一个文件夹,以自己的项目命名,里边包括一



files


文件夹和一个

< br>Makefile


文件



目录结构



<


ccnu


>



├Makefile




<


files


>






<< /p>


etc


>








<


config

>









└ccnu








<


init.d

>









└ccnu






<< /p>


usr


>








<


lib


>










<


lua


>












<< /p>


luci


>














<< /p>


controller


>




























<


model


>
















<< /p>


cbi


>
























<


sbin


>









└ccnu



package/ccnu/Makefile



include



$$(


TOPDIR


)/



PKG_NAME


:


=ccnu


PKG_VERSION


:


=


2.0


.


1



PKG_RELEASE


:


=


1



PKG_BUILD_DIR



:


=


$$(


B UILD_DIR


)/


$$(


PKG_N AME


)



include



$$(


INCLUDE_DIR


)/



define


Package


/ccnu


收集于网络,如有侵权请联系管理员删除



精品文档




SECTION


:


=utils



CATEGORY


:


=


Utilities




SUBMENU


:


=

< br>H3C


inode



TITLE


:


= iNode


Compatible



Client



for



CCNU




DEPENDS


:


=+libc +libgcc



MAINTAINER


:


=


RiceLyn



@gmail


.com>


endef



define


Package


/ccnu/description


iNode


Compatible



Client



for



CCNU



endef



define


Build


/


Prepare



endef



define


Build


/


Configure

< p>


endef



define


Build


/


Compile



endef



define


Package


/ccnu/install



$$(


CP


) ./files/*


$$(


1


)/


endef



$$(


eval


$$(


call


BuildPackage


,ccnu))


之后


./scripts/feeds install -a,ccnu


就会出现在


Utilities -> H3C


inode


里啦



这里先做一个简单的程序,以后会写文章详细介绍。



HG255D


个性化配置


< p>
开启


HG255D


编译



收集于网络,如有侵权请联系管理员删除


-


-


-


-


-


-


-


-



本文更新与2021-02-17 11:20,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/661757.html

Openwrt编译进阶说课讲解的相关文章