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

OpenWrt国内源配置和使用

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

目前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才能够看到。

相关推荐

面试问了解Linux内存管理吗?10张图给你安排的明明白白!

来源:https://www.cnblogs.com/NanoDragon/p/12736887.html今天来带大家研究一下Linux内存管理。对于精通CURD的业务同学,内存管理好像离我们很远...

Linux Kernel 6.12震撼发布:实时性能飙升,开启全新计算时代!

概述LinusTorvalds在邮件列表中宣布推出LinuxKernel6.12,该版本带来了多项重要的更新和功能增强。更新亮点PREEMPT_RT支持主要内容:LinuxKernel...

linux Grub2功能、常见配置及使用方式

Grub2(GrandUnifiedBootloaderversion2)是一款功能强大的引导加载程序,提供了以下功能和常见配置:多操作系统支持:Grub2可以加载和引导多个操作系统,包括不同...

Linux内核必备知识点-platform总线详解

platform总线是学习linux驱动必须要掌握的一个知识点。本文参考已发布:Linux3.14内核一、概念嵌入式系统中有很多的物理总线:I2c、SPI、USB、uart、PCIE、APB、AHB...

linux kernel内核的头文件获取、安装等方法

交叉编译时经常会用到这些头文件。下载合适版本的linux地址:https://mirrors.aliyun.com/linux-kernel/https://mirrors.edge.kernel.o...

600个常用 Linux 命令,收藏备用!

本文为Linux命令大全,从A到Z都有总结,建议大家收藏以便查用,或者查漏补缺!A命令描述access用于检查调用程序是否可以访问指定的文件,用于检查文件是否存在accton用于打开或关闭记帐进程或...

Linux 中 `/proc/cpuinfo`文件中最常见的标志

/proc/cpuinfo是一个虚拟文件系统,在Linux系统中提供有关CPU(中央处理器)的信息。通过读取该文件,您可以获取有关处理器的详细信息,如型号、频率、核心数、缓存大小等。本文将介绍...

600个Linux命令大全,从A到Z,2023年收藏大吉!

本文为Linux命令大全(有PDF),从A到Z都有总结,建议大家收藏以便查用,或者查漏补缺!A命令描述access用于检查调用程序是否可以访问指定的文件,用于检查文件是否存在accton用于打开或关闭...

Linux下如何查看硬件信息?

我们在Linux下进行开发时,有时也需要知道当前的硬件信息,比如:CPU几核?使用情况?内存大小及使用情况?USB设备是否被识别?等等类似此类问题。下面良许介绍一些常用的硬件查看命令。lshwls...

从PXE到GRUB到VHD文件启动

今天玩点花活儿,之前的文章再探从VHD文件中启动Windows及Grub双启动VHD文件+TinyCoreLinux中研了一下GRUB和VHD文件的关联应用,那么结合PXE又会是怎么样的呢?...

bootra1n教学:Windows用户用U盘Linux实现checkra1n越狱方法

checkra1n越狱工具在前几天推出Linux版本,相信对于Windows用户可能也看得很模糊,甚至要切割硬碟到安装Linux系统太过于繁杂,这篇要来教大家最简易最快速利用U盘Linux...

不了解NUMA,就看不懂Linux内核

哈喽,我是子牙,一个很卷的硬核男人深入研究计算机底层、Windows内核、Linux内核、Hotspot源码……聚焦做那些大家想学没地方学的课程。为了保证课程质量及教学效果,一年磨一剑,三年先后做了这...

Linus Torvalds接受微软Hyper-V升级 下一代Linux启动会更快

虽然Windows的粉丝和Linux的粉丝经常喜欢进行激烈的键盘大战,但操作系统的制造商们自己也了解彼此的优缺点。毫无疑问,微软也明白这一点,事实上,它甚至鼓励用户尝试Linux,尽管是使用...

deepin使用笔记——开机卡LOGO,无法正常关机的解决办法

第一次使用deepin操作系统,很容易遇到几种情况:1,开机卡LOGO,无法进入系统。2,开机可以进入系统,但是进入系统后桌面环境无法正常打开,一直卡着什么都不能用。3,开机后看似一切正常,但关机的时...

如何检查Linux系统硬件信息?从CPU到显卡,一网打尽!

你可能会问:“我为什么要关心硬件信息?”答案很简单:硬件是Linux系统的根基,了解它可以帮你解决很多实际问题。比如:性能调优:知道CPU核心数和内存大小,才能更好地调整程序运行参数。故障排查:系统卡...