我自己使用的是ubuntu 18.04编译,也可以用mint linux 19.01编译。反正都是相同的内核。 不要用 root 用户 git 和编译!!!
一. 首次编译
1. 首先安装依赖
命令行输入 sudo apt-get update ,然后输入
sudo apt-get -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch 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
2. 下载源码
git clone https://github.com/coolsnowwolf/lede
3. 更新
./scripts/feeds update -a
./scripts/feeds install -a
make menuconfig
4. 推荐的必要工具
ipv6help
mwan3
usbutils和pciutils
unzip
mii-tool
5. 预先下载dl库,可以避免下载造成的编译失败。全局科学上网
make download V=s
6. 编译
make -j5 V=s (#n=线程数+1,例如4线程的I5填-j5,开始编译)
二. 再次编译
cd lede #进入LEDE目录
git pull #同步更新大雕源码
./scripts/feeds update -a && ./scripts/feeds install -a #更新FEEDS
make clean
rm -rf ./tmp && rm -rf .config #清除编译配置和缓存
make menuconfig #进入编译配置菜单
make download V=s
make -j2 V=s #n=线程数+1,例如4线程的I5填-j5,开始编译
三. 自定义Lede 固件
修改zzz-default-settings文件
修改主机名和ssr-plus彩蛋,/lede/package/lean/default-settings/files/zzz-default-settings
修改hostname
在zzz文件中uci set
system.@system[0].timezone=CST-8后增加
uci set system.@system[0].hostname=Openwrt-x86
Openwrt-x86可以改为你想要的名字
解封不可描述
解封ssr彩蛋,在该文件exit 0 上方适当的位置加上下列命令,安装后可以直接看到ssr-plus
echo 0xDEADBEEF > /etc/config/google_fu_mode
设置 Wan
如果仅是自用固件,可以在该文件exit 0 上方适当的位置加上加入下列命令,设置Wan网口,添加路由器pppoe拨号账户密码,装好即可上网
uci set network.wan.proto='pppoe'
uci set network.wan.username='宽带账号'
uci set network.wan.password='宽带密码'
uci set network.wan.ifname='eth3' //我的wan接口是eth3,你要根据自己的路由器情况改
uci set network.wan6.ifname='eth3'
uci commit network
修改Lan
想要修改管理ip地址和lan口配置,可以在该文件exit 0 上方适当的位置加上加上下列命令
uci set network.lan.ipaddr='192.168.0.8' //改成你想要默认的管理ip
uci set network.lan.proto='static' //wan口静态IP方式
uci set network.lan.type='bridge' //设置桥接
uci set network.lan.ifname='eth0 eth1 eth2 eth4 eth5' //根据自己的路由器情况改Lan口
uci commit network
固化 /etc/config
(编译保存你的配置)files大法:实际就是把现在的配置以文件的形式固化到新固件里。这样做的好处就是升级不需要保留配置,或者恢复出厂设置,缺省值就是你自己设置好的配置
固化某配置教程例子:
1.提取路由固件下的\etc\config\network
2.在编译机LEDE根目录下创建files目录
3.拷贝到 \files\etc\config\network
这样编译完,network就是你自己配置好的network,注意提取的文件路径和权限要一致
\etc\config 各个LUCI配置
\etc\gfwlist gfwlist目录
\etc\shadow 登录密码
\etc\firewall.user 自定义防火墙规则
\usr\share\adbyby adbyby里的相关规则和设置
\usr\lib\lua\luci\view\admin_status\index.htm 主页样式文件,温度显示等等
X86架构固件的index,默认被大雕files强奸了,自己到源码里替换/lede/package/lean/autocore/files/index.htm 如果无效请make clean或者删除/lede/build_dir/target架构/autocore-1(编译其他失败同理)
其中,常用的自定义文件包括以下:
etc/config/system #里面有主机名,时区,ntp时间服务器设置
etc/config/network #网络设置
etc/config/dhcp #如果对dhcp有分配ip
etc/config/ddns #ddns设置
etc/config/aliddns #aliddns设置
etc/config/adbyby #广告过滤大师设置 ,如果有自定义广告过滤大师可以复制过去
etc/config/firewall #防火墙
etc/config/gfw.ilst #自定义gfw列表
etc/config/transmission #transmission
etc/config/udpxy
etc/config/samba
如果有etc/config/samba,那么必须要有/etc/samba/smbpasswd 否则没有权限
安装完后要做的事
系统=>管理权=>修改密码
网络=>接口=>wan 改pppoe
高级=>取消"使用内置的 IPv6 管理” “Obtain IPv6-Address” 禁用 “使用网关跃点” 40
增加iptv
高级: “使用网关跃点 60 “请求 DHCP 时发送的客户端 ID” 00xxxxxxxxxxxxxxxxxxxx “请求 DHCP 时发送的 Vendor Class 选项” SCITV “重设 MAC 地址” 54:93:59:xx:xx:xx 防火墙: 新增"iptv” 防火墙
修改lan
基本设置: “IPv6 分配长度 " 禁用
高级设置: “使用内置的 IPv6 管理” 禁用
dhcp服务器:全部关闭
dhcp设置
防火墙
端口映射:群晖各端口 80,443,5000,5001
服务
ShadowSocksR Plus+:
- 设置服务器节点
- 不走代理的WAN IP vps地址
- 不走代理的局域网IP 各个盒子IP,群晖IP
- GFW列表
lala.im
github.com
manjaro.org
pornbay.org
empornium.ph
github.io
toutyrater.github.io
services.googleapis.cn
googleapis.cn
i.pstorage.space
-
广告屏蔽大师 Plus+
运行模式:
列表模式
客户端过滤模式设置:加入各个盒子 高级设置:手动强制更新(ssh运行
/usr/share/adbyby/adblock.sh > /tmp/adupdate.log 2>&1
)
动态DNS
设置f3322.org
阿里DDNS
UDPXY
设置"Source IP/Interface” eth2
网络存储
网络共享:
-
允许用户
root,0755,0777
-
编辑模板:
#invalid users = root
-
ssh设定密码
smbpasswd -a root
-
重启openwrt
Transmission
配置文件的目录 /mnt/sda3/transmission/.config
下载目录 /mnt/sda3/transmission/done
启用 DHT 禁用 防火墙51413映射 ssh
wget https://github.com/ronggang/transmission-web-control/raw/master/release/install-tr-control-cn.sh
bash install-tr-control-cn.sh
选择 6
输入/usr/share/transmission
然后选择1安装
修改软件源
教育网镜像源貌似改成https了,wget需要安装
libustream-mbedtls
来支持tls
- 先把软件源改成
src/gz openwrt_core http://downloads.openwrt.org/snapshots/targets/x86/64/packages
src/gz openwrt_base http://downloads.openwrt.org/snapshots/packages/x86_64/base
src/gz openwrt_luci http://downloads.openwrt.org/snapshots/packages/x86_64/luci
src/gz openwrt_packages http://downloads.openwrt.org/snapshots/packages/x86_64/packages
src/gz openwrt_routing http://downloads.openwrt.org/snapshots/packages/x86_64/routing
- 然后更新源
opkg update
- 安装libustream-mbedtls
opkg install libustream-mbedtls
- 安装完成后把源改回教育网的https源
src/gz openwrt_core https://openwrt.proxy.ustclug.org/snapshots/targets/x86/64/packages
src/gz openwrt_base https://openwrt.proxy.ustclug.org/snapshots/packages/x86_64/base
src/gz openwrt_luci https://openwrt.proxy.ustclug.org/snapshots/packages/x86_64/luci
src/gz openwrt_packages https://openwrt.proxy.ustclug.org/snapshots/packages/x86_64/packages
src/gz openwrt_routing https://openwrt.proxy.ustclug.org/snapshots/packages/x86_64/routing
- 然后更新
opkg update
最后设置dhcp
把etc/config/dhcp复制过来或者
设置dhcp里‘静态地址分配’,方便管理各主机