
将允许计算机关闭此设备以节约电源的对勾去掉即可。如果还是不行,将传输电源设置为高即可。

将允许计算机关闭此设备以节约电源的对勾去掉即可。如果还是不行,将传输电源设置为高即可。
使用lean的openwrt代码,发现里面预选了很多luci-app,而这些并不是我需要的功能,每次编译的时候都要取消选中,很是麻烦。
研究了一下,找到了设置这个的地方,记录一下。
其实这个设置在/openwrt/include目录下面的target.mk中。
DEVICE_TYPE?=router
DEFAULT_PACKAGES:=base-files libc libgcc busybox dropbear mtd uci opkg netifd fstools uclient-fetch logd block-mount \
kmod-nf-nathelper kmod-nf-nathelper-extra kmod-ipt-raw \
default-settings luci luci-app-ddns luci-app-sqm luci-app-upnp luci-app-adbyby-plus luci-app-autoreboot \
luci-app-filetransfer luci-app-vsftpd ddns-scripts_aliyun \
luci-app-pptp-server luci-app-arpbind luci-app-vlmcsd luci-app-wifischedule luci-app-wol luci-app-ramfree \
luci-app-sfe luci-app-flowoffload luci-app-nlbwmon luci-app-usb-printer luci-app-accesscontrol
DEFAULT_PACKAGES.nas:=fdisk lsblk mdadm automount autosamba luci-app-usb-printer
DEFAULT_PACKAGES.router:=dnsmasq-full iptables ppp ppp-mod-pppoe firewall kmod-ipt-offload
DEFAULT_PACKAGES.bootloader:=
而在openwrt原版里面是这样的:
DEVICE_TYPE?=router
DEFAULT_PACKAGES:=base-files libc libgcc busybox dropbear mtd uci opkg netifd fstools uclient-fetch logd
DEFAULT_PACKAGES.nas:=block-mount fdisk lsblk mdadm
DEFAULT_PACKAGES.router:=dnsmasq iptables ip6tables ppp ppp-mod-pppoe firewall odhcpd-ipv6only odhcp6c kmod-ipt-offload
DEFAULT_PACKAGES.bootloader:=
openwrt现在的新版本,编译完成后会在固件文件夹生成一个config.seed文件,这个文件就是你这个固件选择的包的一个记录,下次编译的时候可以直接复制它替换.config
文件,然后make menuconfig 保存编译即可。
IPV6很讨厌,尤其是家用时候,这时是不需要这个功能的。所以想在编译的时候就删除掉这个功能。
首先在Global build settings里面取消选中Enable IPv6 support in packages
然后修改/mnt/lean-190323/package/network/config/firewall里面的makefile文件,删除+IPV6:libip6tc,+IPV6:kmod-nf-conntrack6
修改/mnt/lean-190323/package/network/utils/iptables里面的makefile文件,删除+IPV6:libip6tc,
如果是ledev17.01,还需要在feeds/routing/miniupnpd的makefile里删除相关ipv6的依赖
在/mnt/lede-v17.01/package/network/utils/iptables删除
define Package/libiptc
$(call Package/iptables/Default)
SECTION:=libs
CATEGORY:=Libraries
DEPENDS:=+libip4tc +libxtables
# +libip6tc
另外lede-v17.01中,还要在busybox的network里面取消所有关于IPV6的选项,例如ping6啥的。否则依旧会报错
固件编译成功,刷机后开机启动过程中报错,
jffs2: Flash size not aligned to erasesize, reducing to 6272KiB
研究了一下,发现是dts文件中对固件大小定义错误导致的。
因为之前都是照抄其他7628方案的dts修改而来,所以沿用了别人的固件长度定义。
partition@50000 {
compatible = “denx,uimage”;
label = “firmware”;
reg = <0x50000 0x7b0000>;
而0x7b0000的长度换算成十进制就是8060928,然后除以1024等于7872,大于这个数值的固件就会报错。
改成0xfb0000问题解决。
联想官网有ThinkPad 电源管理软件下载,但是遗憾的是该软件不支持WIN8系统,安装会报错自动退出。http://think.lenovo.com.cn/support/driver/detail.aspx?docID=DR1197862934453
解决办法,报错退出后去C:\DRIVERS\VISTA\PWRMGRV目录下面,把setup.exe属性,兼容性,以兼容模式运行这个程序,设置为WIN7,然后确定,重新安装即可成功安装使用。
openwrt编译中,很多时候路由器原生的spi flash闪存大多在8MB-16MB左右,32MB闪存的设备寥寥无几,如果想多添加一些功能进去,就可能会遇到闪存空间装不下的问题。这就需要对固件进行各种精简,去除不需要的功能。但是有时候费了九牛二虎之力,空间还是不够装,怎么办?
这时候,可以考虑通过设置squashfs的block size大小,来获取更高的压缩比,这样做出来的固件体积就更小。
这是因为在生成固件时,会调用mksquashfs_lzma进行压缩,而mksquashfs_lzma有一个叫block_size的参数,block_size越大通常压缩比也越大,同时解压所需内存也越多,不过一般可以不考虑内存的问题,因为现在的路由器只要能刷openwrt,内存基本上32M起步,128M甚至256M也屡见不鲜。所以内存不是问题。
openwrt默认的squashfs的block size是256,可以设置为512,以获取更高的压缩比,从而减小固件体积。
gcc@gcc-x64:/mnt$ ./cpu_usage.sh
./cpu_usage.sh: 15: ./cpu_usage.sh: let: not found
./cpu_usage.sh: 16: ./cpu_usage.sh: let: not found
./cpu_usage.sh: 17: ./cpu_usage.sh: let: not found
CPU: %
./cpu_usage.sh: 15: ./cpu_usage.sh: let: not found
./cpu_usage.sh: 16: ./cpu_usage.sh: let: not found
./cpu_usage.sh: 17: ./cpu_usage.sh: let: not found
CPU: %
./cpu_usage.sh: 15: ./cpu_usage.sh: let: not found
./cpu_usage.sh: 16: ./cpu_usage.sh: let: not found
./cpu_usage.sh: 17: ./cpu_usage.sh: let: not found
CPU: %
./cpu_usage.sh: 15: ./cpu_usage.sh: let: not found
./cpu_usage.sh: 16: ./cpu_usage.sh: let: not found
./cpu_usage.sh: 17: ./cpu_usage.sh: let: not found
CPU: %
./cpu_usage.sh: 15: ./cpu_usage.sh: let: not found
./cpu_usage.sh: 16: ./cpu_usage.sh: let: not found
./cpu_usage.sh: 17: ./cpu_usage.sh: let: not found
CPU: %
^C
gcc@gcc-x64:/mnt$ let
-bash: let: expression expected
gcc@gcc-x64:/mnt$ sudo let
[sudo] password for gcc:
sudo: let: command not found
原因是/bin/sh 指向了 dash 而不是 bash ,但是 dash 不支持 let 命令。
解决办法,直接使用bash运行脚本即可。
bash 空格 脚本,回车即可