本文档是一篇关于OpenWrt开发的学习笔记,作者分享了在开发过程中遇到并解决的问题,以及对系统配置进行优化的经验。主要内容涵盖了以下几个方面:
1. **编译固件问题**:
当遇到编译固件失败,提示“编译固件超出设定值”的情况,文章提到的Makefile片段显示了如何通过`BuildFirmware/Default16M`函数设置YH9000W固件的构建。具体来说,`$(call BuildFirmware/Default16M/$(1),$(1),yh9000w,YH9000W)`这部分代码调用了一个自定义函数,用于根据特定硬件(如YH9000W)设置固件的构建配置。DTS(Device Tree Specification)文件中也提及了`YH9000W.dtspartition`,表示该固件将被映射到内存的某个地址,并设置了firmware分区的注册信息。
2. **SSH配置**:
文档强调了默认情况下OpenWrt已经开启SSH服务,但提到了对其进行个性化配置,例如将`optionBannerFile`注释掉,以防止显示自定义欢迎消息。同时,还指导读者如何修改`/package/network/services/dropbear/files/dropbear.config`文件,允许密码和root访问,并设置了SSH监听的端口为22。
3. **密码管理**:
文档涉及到了`/package/base-files/files/etc/shadow`文件的使用,说明了如何处理root用户的密码加密。当密码为"123456"时,经过加密后的形式为`root:$1$BTkC8R/1$ZtNrYbhknXmNKGHDJCmJc1:15783:0:99999:7:::`。这表明OpenWrt系统中的密码安全设置是按照标准的Linux安全实践进行的。
4. **OpenWrt安装指南**:
文档提供了一种使用虚拟机(比如Ubuntu)安装OpenWrt的方法。安装步骤包括:
- 安装必要的开发工具包(如gcc、g++等)
- 安装辅助工具(如patch、bzip2、flex、bison等)
- 安装构建基础环境(build-essential、subversion、git等)
- 安装Git和版本控制系统,以便于源码管理和协作
这篇文章详细记录了OpenWrt开发过程中的固件编译技巧、基本配置调整,以及实用的开发工具安装和系统安全设置方法。对于想要深入研究OpenWrt或者进行相关开发的读者来说,这是一份宝贵的参考资料。