百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT知识 > 正文

OpenWrt国内源配置和使用

liuian 2025-02-07 18:19 54 浏览

目前OpenWrt官方最新的固件是23.05.5, 这是9月28日更新的,整个社区还是非常活跃。

官方固件镜像下载地址是:
https://downloads.openwrt.org/releases/23.05.5/targets/x86/64/

这里23.05.5 是固件的版本 :targets是归档的镜像文件 ,x86/64 表示x86架构,64位系统。 各位可以根据自己的硬件来选择。

对于一些传统路由器来刷机的,OpenWrt提供了firmware selector 工具来选择。 不过这个需要严格按照给出的固件文件来进行更新,比如刷写的顺序等。 不过这个固件提供的功能也只有最精简的,如果需要更多插件,需要自己去找。

前面写了篇国内怎么搭建测试环境,参考win11下搭建openwrt学习环境,今天说下这些固件,这些包怎么来。

固件分类

这里对这官网提供的固件文件,简单写下各个文件的作用:

固件文件文件说明generic-ext4-combined-efi.img.gzext4文件格式,带efi引导的镜像,可扩展磁盘格式generic-ext4-combined.img.gzext4文件格式,非efi引导的镜像,可扩展磁盘格式generic-ext4-rootfs.img.gzrootfs的镜像,不带引导,可自行定义用grub或者syslinux来引导。 Ext4格式generic-kernel.bin单一的内核文件generic-squashfs-combined-efi.img.gzsquashfs格式的,带efi引导的镜像,可以一键恢复出厂设置generic-squashfs-combined.img.gzsquashfs格式的,非efi引导的镜像,恢复出厂设置generic-squashfs-rootfs.img.gzrootfs的镜像,不带引导,可自行定义用grub或者syslinux来引导。 sqarshfs格式rootfs.tar.gzrootfs不带引导

不同的架构可能支持的文件不一样,根据实际情况选择即可。

另外,这里说明一下名词中出现的一些名词的解释:

kernel:内置最简文件系统的Linux内核,适用于首次安装或故障恢复

sysupgrade:从本来就是openwrt的固件基础上升级,或者无刷机引导限制的机器上直接刷入此格式文件

factory:用于从设备的原厂固件刷入factory,再刷入breed之类不死使用

ext4 :ext4文件系统,可以扩展磁盘空间大小

squashfs :可以使用 重置功能(恢复出厂设置)

efi : efi引导,非BIOS引导(优先使用efi固件,无法启动时再换无efi固件)

rootfs :不带引导,可自行定义用grub或者syslinux来引导

combined :表示带引导

.img :镜像文件格式,img一般用于物理机

以上是官网的固件的解释,另外还有一种就是一些发烧友自己编译的固件。这些在一些论坛上都能找到,大家都存放在网盘里面,烧录的步骤也很详细。不过这类固件都是作者根据需要来编译的,可能有很多是自己不需要的, 额外还造成了资源浪费。

怎么选择这些固件,说下我这里的思路

  1. 最简单的,选择squashfs,一键还原,还是非常好用的
  2. 是否选择efi,看你的固件的支持。
  3. 如果自己对linux的一些引导,内核等都掌握比较好,那就随便选了,想怎么折腾怎么折腾。

国内如何加速下载

找到固件之后,将其下载到本地,在对你的硬件进行升级,这是每一个人的做法。 但是openwrt官网的下载太慢了,我们可以选择国内的加速站来下载。

国内的包括腾讯阿里等提供的镜像源都可以下载到对应的固件,另外还有一些搞笑,具体地址如下: 腾讯:https://mirrors.cloud.tencent.com/openwrt/ 阿里:https://mirrors.aliyun.com/openwrt/releases/ 清华源:https://mirrors.tuna.tsinghua.edu.cn/openwrt 北大源:https://mirrors.pku.edu.cn/openwrt

这里我自己感觉用高校的源速度会快些,不知道是我网络的原因还是软件源做了限速。

opkg软件包国内源

前面说了怎么在国内找到OpenWrt的固件。安装完成之后,还需要安装各种插件,各种包,比如中文语言包。OpenWrt采用okpg来管理各种安装包。 登录页面,系统 -- 软件包 可以到到管理的页面。

默认的是从官网的去下载,但是可以替换为国内的源。点击配置opkg,可以编辑对应的配置,其中 opkg.conf 用于全局配置——这个一般不修改 customfeeds.conf 用于自定义仓库——这个在有自定义的时候可以修改。比如我们自己编译或者额外需要的。 但是我们这里是需要提供OpenWrt对应版本下自带的软件包为国内源。我们可以直接修改/etc/opkg/distfeeds.conf部分。 比如采用阿里源,按照如下贴入到框中。注意:架构和版本需要同你的路由器匹配。

src/gz openwrt_core https://mirrors.aliyun.com/openwrt/releases/23.05.4/targets/x86/64/packages
src/gz openwrt_base https://mirrors.aliyun.com/openwrt/releases/23.05.4/packages/x86_64/base
src/gz openwrt_luci https://mirrors.aliyun.com/openwrt/releases/23.05.4/packages/x86_64/luci
src/gz openwrt_packages https://mirrors.aliyun.com/openwrt/releases/23.05.4/packages/x86_64/packages
src/gz openwrt_routing https://mirrors.aliyun.com/openwrt/releases/23.05.4/packages/x86_64/routing
src/gz openwrt_telephony https://mirrors.aliyun.com/openwrt/releases/23.05.4/packages/x86_64/telephony

主要分为6个部分: openwrt_core 、openwrt_base、openwrt_luci 、openwrt_packages 、openwrt_routing 和openwrt_telephony 。 每一个部分官网package下的不同光模块,全部替换完成,点击页面更新列表,即可看到可用的软件,根据需要选择安装即可。

另外也可以通过命令行,参考https://help.mirrors.cernet.edu.cn/openwrt/ 站点(这是很多高校国内源的汇总,我一般用这里的源)的方法,直接替换 登录到路由器,执行替换命令,比如这替换为清华源:

#替换
sed -i 's_https\?://downloads.openwrt.org_https://mirrors.tuna.tsinghua.edu.cn/openwrt_' /etc/opkg/distfeeds.conf

# 更新
opkg update

# 安装某个软件包
opkg install xxx

总结

通过以上方法,可以在国内快速的下载,配置和使用OpenWrt,不过有些地方也需要注意下:

  1. 官方站点提供的包,可能有些不一定全。比如之前做IPTV融合(参考OpenWrt应用场景:IPTV融合介绍)用的msd_lite在官方仓库就没有。
  2. 软件包采用okpg来管理,opkg对应的配置文件需要注意。 之前我们部署OMNP的时候,也是用okpg去管理,不过那个opkg和这里的是不一样的,需要替换环境变量。
  3. OpenWrt是为路由器设计,很多信息都是存在内存中,每一个opkg update 后的缓存信息,在断电之后是看不到的,需要重新update才能够看到。

相关推荐

python入门到脱坑函数—定义函数_如何定义函数python

Python函数定义:从入门到精通一、函数的基本概念函数是组织好的、可重复使用的代码块,用于执行特定任务。在Python中,函数可以提高代码的模块性和重复利用率。二、定义函数的基本语法def函数名(...

javascript函数的call、apply和bind的原理及作用详解

javascript函数的call、apply和bind本质是用来实现继承的,专业点说法就是改变函数体内部this的指向,当一个对象没有某个功能时,就可以用这3个来从有相关功能的对象里借用过来...

JS中 call()、apply()、bind() 的用法

其实是一个很简单的东西,认真看十分钟就从一脸懵B到完全理解!先看明白下面:例1obj.objAge;//17obj.myFun()//小张年龄undefined例2shows(...

Pandas每日函数学习之apply函数_apply函数python

apply函数是Pandas中的一个非常强大的工具,它允许你对DataFrame或Series中的数据应用一个函数,可以是自定义的函数,也可以是内置的函数。apply可以作用于DataF...

Win10搜索不习惯 换个设定就好了_window10搜索用不了怎么办

Windows10的搜索功能是真的方便,这点用惯了Windows10的小伙伴应该都知道,不过它有个小问题,就是Windows10虽然会自动联网搜索,但默认使用微软自家的Bing搜索引擎和Edge...

面试秘籍:call、bind、apply的区别,面试官为什么总爱问这三位?

引言你有没有发现,每次JavaScript面试,面试官总爱问你call、bind和apply的区别?好像这三个方法成了通关密码,掌握了它们,就能顺利过关。其实不难理解,面试官问这些问题,不...

记住这8招,帮你掌握“追拍“摄影技法—摄影早自习第422日

杨海英同学提问:请问叶梓老师,我练习追拍时,总也不能把运动的人物拍清晰,速度一般掌握在1/40-1/60,请问您如何把追拍拍的清晰?这跟不同的运动形式有关系吗?请您给讲讲要点,谢谢您!摄影:Damia...

[Sony] 有点残酷的测试A7RII PK FS7

都是好机!手中利器!主要是最近天天研究fs5,想知道fs5与a7rii后期匹配问题,苦等朋友的fs5月底到货,于是先拿手里现有的fs7小测一下,十九八九也能看到fs5的影子,另外也了解一下fs5k标配...

AndroidStudio_Android使用OkHttp发起Http请求

这个okHttp的使用,其实网络上有很多的案例的,但是,如果以前没用过,copy别人的直接用的话,可以发现要么导包导不进来,要么,人家给的代码也不完整,这里自己整理一下.1.引入OkHttp的jar...

ESL-通过事件控制FreeSWITCH_es事务控制

通过事件提供的最底层控制机制,允许我们有效地利用工具箱,适时选择使用其中的单个工具。FreeSWITCH是一个核心交换与混合矩阵,它周围有几十个模块提供各种功能特性。我们完全控制了所有的即时信息,这些...

【调试】perf和火焰图_perf生成火焰图

简介perf是linux上的性能分析工具,perf可以对event进行统计得到event的发生次数,或者对event进行采样,得到每次event发生时的相关数据(cpu、进程id、运行栈等),利用这些...

文本检索控件也玩安卓?dtSearch Engine发布Android测试版

dtSearchEngineforLinux(原生64-bit/32-bitC++和JavaAPIs)和dtSearchEngineforWin&.NET(原生64-bi...

网站后台莫名增加N个管理员,记一次SQL注入攻击

网站没流量,但却经常被SQL注入光顾。最近,网站真的很奇怪,网站后台不光莫名多了很多“管理员”,所有的Wordpres插件还会被自动暂停,导致一些插件支持的页面,如WooCommerce无法正常访问、...

多元回归树分析Multivariate Regression Trees,MRT

多元回归树(MultivariateRegressionTrees,MRT)是单元回归树的拓展,是一种对一系列连续型变量递归划分成多个类群的聚类方法,是在决策树(decision-trees)基础...

JMETER性能测试_JMETER性能测试指标

jmeter为性能测试提供了一下特色:jmeter可以对测试静态资源(例如js、html等)以及动态资源(例如php、jsp、ajax等等)进行性能测试jmeter可以挖掘出系统最大能处...