网络技术——Lean的OpenWRT Lede固件编译


前言

最近开始折腾OpenWRT的固件,自己也买了台软路由开始折腾。

编译固件

  1. 安装Ubuntu 18.04系统
    我这边选用的是 Vultr 这家服务商的VPS进行搭建的,经过测试完全没有问题。
    当然了,在自己的机器上安装虚拟机也是个可行的选项,但是要注意的是!在整个编译过程中,必须保持全程科学上网,否则将有大概率编译失败,不过还是推荐直接用国外地区的VPS进行编译。

    (选择5美刀的配置就够了,系统选择 Ubuntu 64位)
    (2020-05-05更新:5美刀的机器内存跟不上,编译到一半会报错,内存溢出,选择10美刀的机器,系统依旧是Ubuntu 18.04 64位)
  2. 创建普通用户
    编译OpenWRT用root用户可能会出错,所以这边要新建一个普通用户来进行编译
sudo useradd -r -m -s /bin/bash lede

创建一个用户名为lede的用户并指定bash为终端

sudo passwd lede

给用户lede添加一个密码

sudo chmod +w /etc/sudoers 
sudo vim /etc/sudoers

编辑用户权限


在 User privilege specification 加入与root用户相同的权限

:wq

保存并退出vim编辑器

sudo chmod -w /etc/sudoers

去掉w权限

  1. 下载源代码
    源代码来自恩山Lean大佬Github仓库链接
su lede
cd ~

切换到刚才创建的新用户(输入密码不会显示)并且进入用户根目录

sudo apt-get update

升级软件源

sudo apt-get -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch python3.5 python2.7 unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex uglifyjs git-core gcc-multilib p7zip p7zip-full msmtp libssl-dev texinfo libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automake libtool autopoint device-tree-compiler g++-multilib antlr3 gperf

安装编译所需软件包

git clone https://github.com/coolsnowwolf/lede
cd lede

克隆源码仓库

./scripts/feeds update -a
./scripts/feeds install -a

升级、安装附属包

make menuconfig

进入菜单开始配置系统固件
(空格选定,上下左右控制方向)


Target System 选择 x86


Target Image 里面一定要选择squashfs


LuCI - Application 可以定制你要的系统插件,例如(不可描述)等

完成之后可以Exit保存退出

screen -S compile
make -j1 V=s 

启用一个screen开始编译,这样可以关闭SSH窗口,下一次登录时用screen -r返回之前的对话
-j1是代表用一个线程,V=s代表输出全部过程,第一次编译建议使用单线程。
整个编译过程在我测试过程中,使用 Vultr 新加坡地区的服务器,5美元的配置,耗时约3个半小时
编译完成就不截图了,应该按照正常的流程走是不会报错的


最后在 lede/bin/targets/x86/64 目录下能够找到 img 的固件文件,编译成功

  • 分享:
浙ICP备19007906号