编译
使用Lede编译
Lean 的 Openwrt 源码仓库
编译步骤
# 注意
# 不要用 root 用户进行编译
# 国内用户编译前最好准备好梯子
# 默认登陆IP 192.168.1.1 密码 password
# 编译命令
# 首先装好 Linux 系统,推荐Debian 11
# 安装依赖
sudo apt update -y
sudo apt full-upgrade -y
sudo apt install -y ack antlr3 asciidoc autoconf automake autopoint binutils bison build-essential \
bzip2 ccache cmake cpio curl device-tree-compiler fastjar flex gawk gettext gcc-multilib g++-multilib \
git gperf haveged help2man intltool libc6-dev-i386 libelf-dev libglib2.0-dev libgmp3-dev libltdl-dev \
libmpc-dev libmpfr-dev libncurses5-dev libncursesw5-dev libreadline-dev libssl-dev libtool lrzsz \
mkisofs msmtp nano ninja-build p7zip p7zip-full patch pkgconf python2.7 python3 python3-pip libpython3-dev qemu-utils \
rsync scons squashfs-tools subversion swig texinfo uglifyjs upx-ucl unzip vim wget xmlto xxd zlib1g-dev
# 下载源代码,更新 feeds 并选择配置
git clone https://github.com/coolsnowwolf/lede
cd lede
./scripts/feeds update -a
./scripts/feeds install -a
make menuconfig
# 下载 dl 库,编译固件 (-j 后面是线程数,第一次编译推荐用单线程)
make download -j8
make V=s -j1
# 如果需要重新配置:
make dirclean
rm -rf ./tmp && rm -rf .config
make menuconfig
make download -j8 V=s
make V=s -j$(nproc)
个性化操作
修改处理器
# Target System (x86) —> 根据处理器选择(默认x86,intel处理器默认x86)
# Subtarget (x64 64bit) —> 默认x64位
# Target Images —> 固件启动方式和格式
# 编译树莓派固件
# Target System 选择BCM27xx
# 树莓派 1B bcm27xx/bcm2708
# 树莓派 2B bcm27xx/bcm2709
# 树莓派 3B bcm27xx/bcm2710
# 树莓派 4B bcm27xx/bcm2711
# Target Images 选择需要的
基础设置
# Base system,如果需要DHCPv6服务,则需要在dnsmasq-full下方选中Build with DHCPv6 support
# LuCI-Themes 设置主题
# LuCI-Applications 设置插件
修改固件IP
# 将默认的 192.168.1.1 更改为所需要的 IP
cd /lede
nano package/base-files/files/bin/config_generate
sed -i 's/192.168.1.1/192.168.79.132/g' package/base-files/files/bin/config_generate
sed -i 's/192.168.1.1/192.168.300.1/g' package/base-files/files/bin/config_generate
添加新的软件包
# 先cd进package目录,然后执行
git clone https://github.com/kenzok8/small-package
git clone https://github.com/kenzok8/openwrt-packages
# 在feeds.conf.default文件中添加
src-git small8 https://github.com/kenzok8/small-package
src-git lienol https://github.com/xiaorouji/openwrt-passwall
src-git kenzo https://github.com/kenzok8/openwrt-packages