openwrt——preinit.sh学习】的更多相关文章

boot_hook_init() { local hook="${1}_hook" export -n "PI_STACK_LIST=${PI_STACK_LIST:+$PI_STACK_LIST }$1" export -n "$hook=" echo $PI_STACK_LIST } 1.export -n 和 local 和 export 进行一下实验: test.sh export AA=11 export -n BB=22 func()…
原文地址:openwrt中luci学习笔记 最近在学习OpenWrt,需要在OpenWrt的WEB界面增加内容,本文将讲述修改OpenWrt的过程和其中遇到的问题. 一.WEB界面开发        LuCI是OpenWrt上的Web管理界面,LuCI采用了MVC三层架构,使用Lua脚本开发,所以开发LuCI的配置界面不需要编辑任何的Html代码,除非想自己单独去创建网页(View层),否则我们基本上只需要修改Model层就可以了. 首先我们讲述如何在web界面增加一个新的选项,如下图“Syst…
原文网址:http://blog.csdn.net/mliubing2532/article/details/7567164 如果你只需要修改某一个模块的内容,但是却每次都要执行make, 最后等待很长时间.使用模块编译,那只需要在你所在的模块的目录或者其子目录,执行mm,便可以编译出一个单独的apk,这样岂不快哉! build/envsetup.sh提供了几个有用的shell命令,使用$.build/envsetup.sh(注意点号)或者$sourcebuild/envsetup.sh 可以引…
声明:本文是对开源程序代码学习和研究,严禁用于商业目的. 如有任何问题,欢迎和我交流.(企鹅号:408797506) 本文所有笔记和代码可以到csdn下载:http://download.csdn.net/detail/eryunyong/9590036 一. linux上安装 为了更好理解easycwmp运行机制和以及部署在各类linux内核的操作系统环境,我们选择官网的第二种安装方法. (1)       linux系统:Ubuntu 12.04 (2)       安装EasyCwmp所需…
前言 又到了成胖子^_^每周一博的时间了.最近在学习openwrt luci方面的知识,为了贯穿整个知识体系,练习题目为: 通过页面配置周期性地往/tmp/addtest文件写入内容和时间戳 1.在web主页面的下拉菜单做一个按钮,进入设置页面; 2.两个设置项:输入的内容和周期; 3,读取/tmp/addtest中的内容并显示在页面上; 代码已经开源,欢迎交流~ 知识准备 源码编译及ipk生成 这部分网上相关文章很多,也可以参见拙作 LuCI 首先回答一个问题:什么是Luci? >LuCI是O…
openwrt的network文件,或者说在/etc/config下的文件,都是动态生成的. 脚本的函数定义在openwrt1407/package/base-files/files/lib/functions中,有以下几个文件: tf@ubuntu:~/projects/openwrt1407/package/base-files/files/lib/functions$ ls leds.sh network.sh preinit.sh service.sh system.sh uci-def…
Linux内核执行start_kernel函数时会调用kernel_init来启动init进程,流程如下图: graph LR A[start_kernel] -->B(rest_init) B --> C(kernel_init) C --> D[try_to_run_init_process] kernel_init部分代码如下: 994 if (execute_command) { 995 ret = run_init_process(execute_command); 996 i…
shell是Linux平台的瑞士军刀,能够自动化完成很多工作.要了解UNIX 系统中可用的 Shell,可以使用 cat /etc/shells 命令.使用 chsh 命令 更改为所列出的任何 Shell,.以下是更改为 /bin/zsh(即 Z Shell)的一个示例.(输入粗体显示的文本.) $ cat /etc/shells /bin/bash /bin/csh /bin/ksh /bin/sh /bin/tcsh /bin/zsh $ chsh -s /bin/zsh bash 是大多数…
很久以前买了一台二手wndr3800 放假了刷成op可以一耍.ar71xx,芯片还比较热门. 首先是刷机,准备使用OP CC 15.05 r46767,官方稳定版.把原装系统降级到1.0.0.16,就可以直接在原系统的flash界面刷入第三方系统. 然后是上网问题,校园网是H3C的方式,版本比较老,应该挺好弄.选择了njit-client方案,比较懒没有自己编译就用了x3c8021x的程序,ipk是从hiwifi公开的源里获取的,luci没有找到现成的包,借鉴的前人的成果(@Summer,@Er…
玩linux都知道sh脚本的方便,但如何编写sh脚本却是像我这样的新手和菜鸟的难题.能不能编写得出来是一回事,了不了解又是另一回事.抱着好好学习,天天向上的精神,大家有空就看看吧,没有坏处的.下面来抄来一大段sh脚本的语法说明.慢慢看: 一.开头程序必须以下面的行开始(必须方在文件的第一行):#!/bin/sh符号#!用来告诉系统它后面的参数是用来执行该文件的程序.在这个例子中我们使用/bin/sh来执行程序.当编写脚本完成时,如果要执行该脚本,还必须使其可执行.要使编写脚本可执行:编译 chm…
前提: - 先要把U盘插入路由器的usb口,大多数情况Openwrt都会自动挂载的吧,尽量找当前年或前一年的固件.ssh进路由器,可以看到/mnt/sda1 -  让路由器联网,因为需要从网络上下载安装包:(当然也可以提前下载发到/tmp下面安装...) 2. Python 安装的命令mkdir /mnt/sda1/packages/echo dest usb /mnt/sda1/packages/ >> /etc/opkg.confopkg updateopkg -dest usb inst…
sh脚本 sh命令的批处理文件,支持更复杂的逻辑. Shell中的变量 参数 $0 当前脚本路径 $1....$n 脚本执行对应的第n个参数 条件判断 文件判断 test [op] path e存在 f是文件 d是目录 r可读 w可写 x可执行 if判断/case if[条件判断];then ... elif[条件判断];then ... else ... fi; case $变量 in "value") .... ;; *) ... ;; 循环 while/util while(un…
官方文档有句话"allows you to call any program",并且:helps you write shell scripts in Python by giving you the good features of Bash第一句话助你在Python中轻松调用自己的程序,第二句则给你机会和Shell这种土豪交朋友 ㈠ 调用系统的程序 >>> import sh >>> print(sh.ls('/home/mysql')) cdi…
===============jettytest.sh ====================== #!/bin/shjettysh_path=/usr/local/jetty/bin/jetty.sh #jetty目录jetty_home=/usr/local/jetty #当前目录绝对路径now_path=$(dirname $(readlink -f $0)) #jetty项目部署路径jetty_workPath="/usr/local/jetty/webapps/ROOT/"…
变量的创建 环境配置 /etc/profile =>~/.bash_profile(~/.bash_login,~/.profile) => ~/.bashrc sh声明 name="yinshen" 控制台输入 read [-pt] var read -p "输入你的名字" -t 30 name echo ${name} 变量的作用域 默认只在当前sh生效,使用export var可以将父sh的变量声明道子sh(父sh中输入bsh,启动子sh) 环境变…
#!/bin/bash #game_error.sh ]]; then #$#表示参数个数 -lt小于 echo "Usage: game_error.sh time[20170710]" exit fi source ./remote_cmd.sh #相当于include MYSQL_MFW="/usr/local/mysql/bin/mysql -h10.84.248.207 -ulogstat -plogstat123 -Ddb_mfw -N" #-D:指定连…
备注1:本文 讲述的是原生的openWRT环境下的LUCI 备注2:本文參考了诸多资料.感谢网友分享.參考资料: http://www.cnblogs.com/zmkeil/archive/2013/05/14/3078774.html 文章开篇:加入一个选项,该选项处理结果:显示hello world字串的网页 注:我们先将页面加入出来.然后我将分析怎样为什么这么加入的. 目的:在system菜单下加入一个名字为heyg1的选项,处理结果显示"hello world" 第一步:/us…
官方文档有句话"allows you to call any program",并且: helps you write shell scripts in Python by giving you the good features of Bash 第一句话助你在Python中轻松调用自己的程序,第二句则给你机会和Shell这种土豪交朋友   ㈠ 调用系统的程序 [python]   >>> import sh   >>> print(sh.ls('/…
转自:   http://www.znck007.com/forum.php?mod=viewthread&tid=21571 由于openwrt编译教程资料很多,不同的cpu芯片只需要选择对应的芯片类型,新手就能成功编译openwrt. 所以创客开源精神造福全人类,创客你我,关注@智能创客 微信znck007 第一部分:安装虚拟机+ubuntu系统   安装虚拟机:VMware 8.0 下载地址:http://pan.baidu.com/s/1i3vb5dV   安装ubuntu:ubuntu…
问题: 在Linux系统中使用“vi test.sh”命令创建.sh文件,保存文件(:wq)并赋予权限(chmod +x test.sh)后,执行(./test.sh),出现问题:“bash: ./test: bin/sh: bad interpreter: No such file or directory”. test.sh文件代码如下: #!bin/sh str="hello world" echo $str echo "shell,${str}" 解决办法如…
原创部分: 1.获取返回值 #This is a shell to Deploy Project #!/bin/bashcheck_results=`ps -ef | grep "java"`//变量获取语句执行结果check_results=`cat a.sh` echo "command(ps-ef) results are: $check_results" 2.获取当前文件所在路径 #This is a shell to Deploy Project#!/bi…
将pc上交叉编译完成的可执行文件hello,通过串口传输到开发板上后,执行./hello显示 /bin/sh: ./hello: Permission denied 解决方案:在开发板上执行  chmod u+x hello,然后,就解决了…
cd /mnt insmod ss_triger_drv.ko insmod ss_led_alarm_drv.ko insmod ss_img_prc_drv.ko insmod ss_post_isp_drv.ko insmod ss_pre_isp_drv.ko insmod imagefb_ss.ko / /install/ export LD_LIBRARY_PATH=/opt/opencv_linux/opencv-/install/lib /lib/fonts/ while (tr…
2015-01-06 Created By BaoXinjian 参考:张礼军 - http://oracleseeker.com/2009/10/23/irep_service_generation_backend_processing_tool_soagenerate/…
http://m.blog.csdn.net/blog/woods2001/8137755…
输出 默认是命令行输出 > 替换输出 >> append输出 2>  错误输出 < 由文件输入 <<eof 控制台输入,eof为输入结束标志 /dev/null  垃圾桶 例:查找/home目录下的文件,将正确和错误输出都写入到log文件 find /home -name test >log 2>&1 逻辑组合 && 前面命令执行成功 ||  命令执行失败 ; 连续执行 二次处理 | 管道命令 二次处理命令: cut -d '分…
#! /bin/bash# unset any variable which system may be using# clear the screen while getopts ivh namedo case $name in i)iopt=1;; v)vopt=1;; h)hopt=1;; *)echo "Invalid arg";; esacdone# if [[ ! -z $iopt ]]then{wd=$(pwd)basename "$(test -L "…
http://wiki.openwrt.org/doc/uci UCI是Unified Configuration Interface的缩写,翻译成中文就是统一配置接口,用途就是为OpenWrt提供一个集中控制的接口.OpenWrt实现的这个工具,能够让你的不管是Lua还是PHP程序,或者SHELL程序或C程序,只要执行命令传输参数就能达到修改系统参数的目的,请参考本文后面的命令行实用工具. 系统的配置应该简单直接,UCI的设计初衷即是这样的,它是NVRAM-based配置方法的继承者(基于NV…
一.OpenWrt启动过程分析 转自: http://www.eehello.com/?post=107 总结一下OpenWrt的启动流程:1.CFE->2.linux->3./etc/preinit->4./sbin/init ->5./etc/inittab ->6./etc/init.d/rcS->7./etc/rc.d/S* ->8. OpenWrt是一个开放的linux平台,主要用于带wifi的无线路由上. 类似于Ubuntu.Red Hat.之类的li…
原博地址:http://www.thinkingquest.net/article/466 我们都需要使用google提供的搜索,gmail等优质服务.但是由于方墙的存在,使得大家各自搞各自的FQ办法. 其实还有一个不错的办法,那就是在路由器这一层FQ,对路由器用户透明. 我们使用的方案是openwrt系统, shadowsocks,chinadns. shadowsocks是一个sock代理软件,而chinadns则好像为了解决天朝的dns污染. 这次没有边做边记录,现在是2,3天之后了,凭借…