1.1 環境要求
編譯系統:Linux發行版(本文使用Ubuntu)
編譯一個可以安裝的OpenWrt固件鏡像文件(大約8MB大小的),你需要:
- 一個純凈的OpenWrt編譯系統大約需要200MB的空間。
- 一個包含feeds的OpenWrt編譯系統大約需要300MB的空間。
- 編譯feeds中的軟件包大約需要2.1GB的空間用於存放下載來的源代碼。
- 構建OpenWrt並生成固件文件需要大約3-4 GB的空間。
- 編譯OpenWrt需要大約1-4 GB的內存。
1.2 下載源碼
先確認Ubuntu下已安裝git和subversion工具,俗人沒有,請使用如下命令安裝:
sudo apt-get install git subversion
不同版本的克隆地址
下載命令:
#版本號為chaos_calmer 15.05
git clone git://github.com/openwrt/chaos_calmer.git
#開發版版本號為LEDE 17
git clone https://git.openwrt.org/openwrt/openwrt.git
#gitbub鏡像
git clone https://github.com/openwrt/openwrt.git
國內連接github速度較慢,須耐心等待git下載完成.
這里我選擇下載 chaos_calmer 版(發現里面沒有樹莓派3B+)
推薦下載地址:git clone https://gitee.com/greenice897/openwrt.git
1.3 編譯
下載完成后進入源碼根目錄
第一次編譯可以參考根目錄下面的README文檔
cd openwrt
#更新feeds.conf中的種子包
./scripts/feeds update -a
#安裝軟鏈接到package/feeds/,這樣make menuconfig才能進行相關配置
./scripts/feeds install -a
編譯依賴:
安裝git
以下載OpenWrt源碼,feeds中的部分軟件包可能只能通過subversion
(縮寫: svn
)或者mercurial
下載源代碼。
sudo apt-get install gcc g++ binutils patch bzip2 flex bison make autoconf gettext texinfo unzip sharutils subversion libncurses5-dev ncurses-term zlib1g-dev
如果漏安裝了 make menuconfig 會給出報錯提示
make menuconfig
配置完成然后
make V=s
編譯過程緩慢 耐心等候,因為下載很多東西,如果遇到下載404錯誤,可以手動復制鏈接用迅雷下載,下載好后丟在dl目錄下面,缺少庫的話切換到root下面進行安裝。
選擇LuCI 配置: 常用
選擇LuCI 配置:
LuCI ---> Applications ---> luci-app-accesscontrol #訪問時間控制
LuCI ---> Applications ---> luci-app-adbyby-plus #廣告屏蔽大師Plus +
LuCI ---> Applications ---> luci-app-arpbind #IP/MAC綁定
LuCI ---> Applications ---> luci-app-autoreboot #支持計划重啟
LuCI ---> Applications ---> luci-app-ddns #動態域名 DNS(集成阿里DDNS客戶端)
LuCI ---> Applications ---> luci-app-filetransfer #文件傳輸(可web安裝ipk包)
LuCI ---> Applications ---> luci-app-firewall #添加防火牆
LuCI ---> Applications ---> luci-app-flowoffload #Turbo ACC網絡加速(集成FLOW,BBR,NAT,DNS.. *
LuCI ---> Applications ---> luci-app-frpc #內網穿透 Frp
LuCI ---> Applications ---> luci-app-guest-wifi #WiFi訪客網絡
LuCI ---> Applications ---> luci-app-ipsec-virtuald #virtual服務器 IPSec
LuCI ---> Applications ---> luci-app-mwan3 #MWAN3負載均衡
LuCI ---> Applications ---> luci-app-mwan3helper #MWAN3分流助手
LuCI ---> Applications ---> luci-app-nlbwmon #網絡帶寬監視器
LuCI ---> Applications ---> luci-app-p p t p-server #virtual**服務器 p p t p
LuCI ---> Applications ---> luci-app-ramfree #釋放內存
LuCI ---> Applications ---> luci-app-samba #網絡共享(Samba)
LuCI ---> Applications ---> luci-app-sqm #流量智能隊列管理(QOS)
-------------------------------------------------------------------------------------------
LuCI ---> Applications ---> luci-app-S-S R-plus #S-S R兲朝上網Plus+
LuCI ---> Applications ---> luci-app-S-S R-plus ---> Include s-s New Versiong #新SS代理
LuCI ---> Applications ---> luci-app-S-S R-plus ---> Include v2瑞 #透明代理
-------------------------------------------------------------------------------------------
LuCI ---> Applications ---> luci-app-syncdial #多撥虛擬網卡(原macvlan)
LuCI ---> Applications ---> luci-app-unblockmusic #解鎖網易雲灰色歌曲
LuCI ---> Applications ---> luci-app-upnp #通用即插即用UPnP(端口自動轉發)
LuCI ---> Applications ---> luci-app-vlmcsd #KMS服務器設置
LuCI ---> Applications ---> luci-app-vsftpd #FTP服務器
LuCI ---> Applications ---> luci-app-wifischedule #WiFi 計划
LuCI ---> Applications ---> luci-app-wol #WOL網絡喚醒
LuCI ---> Applications ---> luci-app-wrtbwmon #實時流量監測
LuCI ---> Applications ---> luci-app-xlnetacc #迅雷快鳥
LuCI ---> Applications ---> luci-app-zerotier #ZeroTier內網穿透
Extra packages ---> ipv6helper #支持 ipv6
以下是全部:
-----------------------------------------------------------------------------------------
LuCI ---> Applications ---> luci-app-accesscontrol #訪問時間控制
LuCI ---> Applications ---> luci-app-adblock #ADB廣告過濾
LuCI ---> Applications ---> luci-app-adbyby-plus #廣告屏蔽大師Plus +
LuCI ---> Applications ---> luci-app-adbyby #廣告過濾大師(已棄)
LuCI ---> Applications ---> luci-app-adkill #廣告過濾(已棄)
LuCI ---> Applications ---> luci-app-advanced-reboot #Linksys高級重啟
LuCI ---> Applications ---> luci-app-ahcp #支持AHCPd
LuCI ---> Applications ---> luci-app-aliddns #阿里DDNS客戶端(已棄,集成至ddns)
LuCI ---> Applications ---> luci-app-amule #aMule下載工具
LuCI ---> Applications ---> luci-app-aria2 # Aria2下載工具
LuCI ---> Applications ---> luci-app-arpbind #IP/MAC綁定
LuCI ---> Applications ---> luci-app-asterisk #支持Asterisk電話服務器
LuCI ---> Applications ---> luci-app-attendedsysupgrade #固件更新升級相關
LuCI ---> Applications ---> luci-app-autoreboot #支持計划重啟
LuCI ---> Applications ---> luci-app-baidupcs-web #百度網盤管理 *
LuCI ---> Applications ---> luci-app-bcp38 #BCP38網絡入口過濾(不確定)
LuCI ---> Applications ---> luci-app-bird4 #Bird 4(未知)
LuCI ---> Applications ---> luci-app-bird6 #Bird 6(未知)
LuCI ---> Applications ---> luci-app-bmx6 #BMX6路由協議
LuCI ---> Applications ---> luci-app-bmx7 #BMX7路由協議
LuCI ---> Applications ---> luci-app-caldav #聯系人(已棄)
LuCI ---> Applications ---> luci-app-cjdns #加密IPV6網絡相關
LuCI ---> Applications ---> luci-app-clamav #ClamAV殺毒軟件
LuCI ---> Applications ---> luci-app-commands #Shell命令模塊
LuCI ---> Applications ---> luci-app-cshark #CloudShark捕獲工具
LuCI ---> Applications ---> luci-app-ddns #動態域名 DNS(集成阿里DDNS客戶端)
LuCI ---> Applications ---> luci-app-diag-core #core診斷工具
LuCI ---> Applications ---> luci-app-dnscrypt-proxy #DNSCrypt解決DNS污染
LuCI ---> Applications ---> luci-app-dnsforwarder #DNSForwarder防DNS污染
LuCI ---> Applications ---> luci-app-dnspod #DNSPod
LuCI ---> Applications ---> luci-app-docker #Docker容器 *
LuCI ---> Applications ---> luci-app-dump1090 #民航無線頻率(不確定)
LuCI ---> Applications ---> luci-app-dynapoint #DynaPoint(未知)
LuCI ---> Applications ---> luci-app-e2guardian #Web內容過濾器
LuCI ---> Applications ---> luci-app-familycloud #家庭雲盤
LuCI ---> Applications ---> luci-app-filetransfer #文件傳輸(可web安裝ipk包)
LuCI ---> Applications ---> luci-app-firewall #添加防火牆
LuCI ---> Applications ---> luci-app-flowoffload #Turbo ACC網絡加速(集成FLOW,BBR,NAT,DNS.. *
LuCI ---> Applications ---> luci-app-freifunk-diagnostics #freifunk組件 診斷(未知)
LuCI ---> Applications ---> luci-app-freifunk-policyrouting #freifunk組件 策略路由(未知)
LuCI ---> Applications ---> luci-app-freifunk-widgets #freifunk組件 索引(未知)
LuCI ---> Applications ---> luci-app-frpc #內網穿透 Frp
LuCI ---> Applications ---> luci-app-fwknopd #Firewall Knock Operator服務器
LuCI ---> Applications ---> luci-app-guest-wifi #WiFi訪客網絡
LuCI ---> Applications ---> luci-app-gfwlist #GFW域名列表(已棄)
LuCI ---> Applications ---> luci-app-haproxy-tcp #HAProxy負載均衡-TCP
LuCI ---> Applications ---> luci-app-hd-idle #硬盤休眠
LuCI ---> Applications ---> luci-app-hnet #Homenet Status家庭網絡控制協議
LuCI ---> Applications ---> luci-app-ipsec-virtuald #virtual服務器 IPSec
LuCI ---> Applications ---> luci-app-kodexplorer #KOD可道雲私人網盤
LuCI ---> Applications ---> luci-app-kooldns #virtual服務器 ddns替代方案(已棄)
LuCI ---> Applications ---> luci-app-koolproxy #KP去廣告(已棄)
LuCI ---> Applications ---> luci-app-lxc #LXC容器管理
LuCI ---> Applications ---> luci-app-meshwizard #網絡設置向導
LuCI ---> Applications ---> luci-app-minidlna #完全兼容DLNA / UPnP-AV客戶端的服務器軟件
LuCI ---> Applications ---> luci-app-mjpg-streamer #兼容Linux-UVC的攝像頭程序
LuCI ---> Applications ---> luci-app-mmc-over-gpio #添加SD卡操作界面(已棄)
LuCI ---> Applications ---> luci-app-multiwan #多撥虛擬網卡(已棄,移至syncdial)
LuCI ---> Applications ---> luci-app-mwan #MWAN負載均衡(已棄)
LuCI ---> Applications ---> luci-app-mwan3 #MWAN3負載均衡
LuCI ---> Applications ---> luci-app-mwan3helper #MWAN3分流助手
LuCI ---> Applications ---> luci-app-n2n_v2 #N2N內網穿透 N2N v2 virtual服務
LuCI ---> Applications ---> luci-app-netdata #Netdata實時監控(圖表) *
LuCI ---> Applications ---> luci-app-nft-qos #QOS流控 Nftables版(已棄)
LuCI ---> Applications ---> luci-app-ngrokc #Ngrok 內網穿透(已棄)
LuCI ---> Applications ---> luci-app-nlbwmon #網絡帶寬監視器
LuCI ---> Applications ---> luci-app-noddos #NodDOS Clients 阻止DDoS攻擊
LuCI ---> Applications ---> luci-app-nps #內網穿透nps *
LuCI ---> Applications ---> luci-app-ntpc #NTP時間同步服務器
LuCI ---> Applications ---> luci-app-ocserv #OpenConnect virtual服務
LuCI ---> Applications ---> luci-app-olsr #OLSR配置和狀態模塊
LuCI ---> Applications ---> luci-app-olsr-services #OLSR服務器
LuCI ---> Applications ---> luci-app-olsr-viz #OLSR可視化
LuCI ---> Applications ---> luci-app-openvirtual #Openvirtual客戶端
LuCI ---> Applications ---> luci-app-openvirtual-server #易於使用的Openvirtual服務器 Web-UI
LuCI ---> Applications ---> luci-app-oscam #OSCAM服務器(已棄)
LuCI ---> Applications ---> luci-app-p910nd #打印服務器模塊
LuCI ---> Applications ---> luci-app-pagekitec #Pagekite內網穿透客戶端
LuCI ---> Applications ---> luci-app-polipo #Polipo代理(是一個小型且快速的網頁緩存代理)
LuCI ---> Applications ---> luci-app-pppoe-relay #PPPoE NAT穿透 點對點協議(PPP)
LuCI ---> Applications ---> luci-app-p p t p-server #virtual服務器 p p t p
LuCI ---> Applications ---> luci-app-privoxy #Privoxy網絡代理(帶過濾無緩存)
LuCI ---> Applications ---> luci-app-qbittorrent #BT下載工具(qBittorrent)
LuCI ---> Applications ---> luci-app-qos #流量服務質量(QoS)流控
LuCI ---> Applications ---> luci-app-radicale #CalDAV/CardDAV同步工具
LuCI ---> Applications ---> luci-app-ramfree #釋放內存
LuCI ---> Applications ---> luci-app-rp-pppoe-server #Roaring Penguin PPPoE Server 服務器
LuCI ---> Applications ---> luci-app-samba #網絡共享(Samba)
LuCI ---> Applications ---> luci-app-samba4 #網絡共享(Samba4)
LuCI ---> Applications ---> luci-app-sfe #Turbo ACC網絡加速(已棄,移至flowoffload)
LuCI ---> Applications ---> luci-app-s-s #SS兲朝上網(已棄)
LuCI ---> Applications ---> luci-app-s-s-libes #SS-libev服務端
LuCI ---> Applications ---> luci-app-shairplay #支持AirPlay功能
LuCI ---> Applications ---> luci-app-siitwizard #SIIT配置向導 SIIT-Wizzard
LuCI ---> Applications ---> luci-app-simple-adblock #簡單的廣告攔截
LuCI ---> Applications ---> luci-app-softethervirtual** #SoftEther virtual服務器 NAT穿透 *
LuCI ---> Applications ---> luci-app-splash #Client-Splash是無線MESH網絡的一個熱點認證系統
LuCI ---> Applications ---> luci-app-sqm #流量智能隊列管理(QOS)
LuCI ---> Applications ---> luci-app-squid #Squid代理服務器
-------------------------------------------------------------------------------------------
LuCI ---> Applications ---> luci-app-S-S R-plus #S-S R兲朝上網Plus+
LuCI ---> Applications ---> luci-app-S-S R-plus ---> Include s-s New Versiong #新SS代理
LuCI ---> Applications ---> luci-app-S-S R-plus ---> Include v2瑞 #透明代理
LuCI ---> Applications ---> luci-app-S-S R-plus ---> Include Kcptun #Kcptun代理
LuCI ---> Applications ---> luci-app-S-S R-plus ---> Include s-sR Server #S-S R服務器
LuCI ---> Applications ---> luci-app-S-S R-plus ---> Include s-sR Socks and Tunnel #S-S R代理
-------------------------------------------------------------------------------------------
LuCI ---> Applications ---> luci-app-S-S R-pro #S-S R-Pro(已棄)
LuCI ---> Applications ---> luci-app-S-S Rserver-python #s-sR Python服務器
LuCI ---> Applications ---> luci-app-statistics #流量監控工具
LuCI ---> Applications ---> luci-app-syncdial #多撥虛擬網卡(原macvlan)
LuCI ---> Applications ---> luci-app-tinyproxy #Tinyproxy是 HTTP(S)代理服務器
LuCI ---> Applications ---> luci-app-transmission #BT下載工具
LuCI ---> Applications ---> luci-app-travelmate #旅行路由器
LuCI ---> Applications ---> luci-app-ttyd #網頁終端命令行
LuCI ---> Applications ---> luci-app-udpxy #udpxy做組播服務器
LuCI ---> Applications ---> luci-app-uhttpd #uHTTPd Web服務器
LuCI ---> Applications ---> luci-app-unblockmusic #解鎖網易雲灰色歌曲
LuCI ---> Applications ---> luci-app-unbound #Unbound DNS解析器
LuCI ---> Applications ---> luci-app-upnp #通用即插即用UPnP(端口自動轉發)
LuCI ---> Applications ---> luci-app-usb-printer #USB 打印服務器
LuCI ---> Applications ---> luci-app-v2瑞-server #服務器
LuCI ---> Applications ---> luci-app-v2瑞-pro #透明代理(已棄,集成S-S R)
LuCI ---> Applications ---> luci-app-verysync #微力同步 *
LuCI ---> Applications ---> luci-app-vlmcsd #KMS服務器設置
LuCI ---> Applications ---> luci-app-vnstat #vnStat網絡監控(圖表)
LuCI ---> Applications ---> luci-app-virtualbypass #virtual** BypassWebUI 繞過virtual設置
LuCI ---> Applications ---> luci-app-vsftpd #FTP服務器
LuCI ---> Applications ---> luci-app-watchcat #斷網檢測功能與定時重啟
LuCI ---> Applications ---> luci-app-webadmin #Web管理頁面設置
LuCI ---> Applications ---> luci-app-webshell #網頁命令行終端(已棄)
LuCI ---> Applications ---> luci-app-wifischedule #WiFi 計划
LuCI ---> Applications ---> luci-app-wireguard #virtual服務器 WireGuard狀態
LuCI ---> Applications ---> luci-app-wireless-regdb #WiFi無線
LuCI ---> Applications ---> luci-app-wol #WOL網絡喚醒
LuCI ---> Applications ---> luci-app-wrtbwmon #實時流量監測
LuCI ---> Applications ---> luci-app-xlnetacc #迅雷快鳥
LuCI ---> Applications ---> luci-app-zerotier #ZeroTier內網穿透
---------------------------------------------------------------------------------------------------
支持 iPv6:
Extra packages ---> ipv6helper (選定這個后下面幾項自動選擇了)
Network ---> odhcp6c
Network ---> odhcpd-ipv6only
LuCI ---> Protocols ---> luci-proto-ipv6
LuCI ---> Protocols ---> luci-proto-ppp
Utilities ---> open-vm-tools #打開適用於VMware的VM Tools