嵌入式LINUX开发系列之ARM板子如何替换debian镜像源

这篇具有很好参考价值的文章主要介绍了嵌入式LINUX开发系列之ARM板子如何替换debian镜像源。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

LINUX系列文章目录

第一章 ARM板子如何替换debian镜像源


前言

当你做嵌入式开发过程中拿到一个开发板,遇到apt update,发现无法成功,镜像源无法使用,这样的话大大增加了开发难度。最近一个项目遇到这个问题,搜寻网络却无法得到有效答案,本人作为一名嵌入式开发工程师,在这里总结了一下,希望对大家做开发有所帮助,共同进步,这是我的第一篇文章,都是干货,希望大家多多支持,点点关注订阅,持续更新,致力于有效解决我们项目开发过程中遇到问题。


一、镜像源是什么?

下面先普及一下概念(此部分来源于网络)

  1. 源: 源就是来源,就是你安装软件时,程序从哪里获取软件包(安装程序在你的机器上,但需要安装的东西在软件源服务器上)。
  2. 镜像:镜像原意是光学里指的物体在镜面所成之像。引用到电脑网络上,一个网站的镜像是指对一个网站内容的拷贝。镜像通常用于为相同信息内容提供不同的源,特别是在下载量大的时候提供了一种可靠的网络连接。
  3. 镜像源:镜像源就是把官方的源作为一个镜像,你可以在这下载软件。比如ubuntu官方源在国外,下载软件可能会很慢,这时候就需要换成国内的镜像源。

二、问题复现

root@zynq:/etc/apt# apt-get update
Ign http://mirrors.tuna.tsinghua.edu.cn jessie InRelease
Ign http://mirrors.tuna.tsinghua.edu.cn jessie-updates InRelease
Ign http://mirrors.tuna.tsinghua.edu.cn jessie/updates InRelease
Ign http://mirrors.tuna.tsinghua.edu.cn jessie Release.gpg
Ign http://mirrors.tuna.tsinghua.edu.cn jessie-updates Release.gpg
Ign http://mirrors.tuna.tsinghua.edu.cn jessie/updates Release.gpg
Ign http://mirrors.tuna.tsinghua.edu.cn jessie Release
Ign http://mirrors.tuna.tsinghua.edu.cn jessie-updates Release
Ign http://mirrors.tuna.tsinghua.edu.cn jessie/updates Release
Err http://mirrors.tuna.tsinghua.edu.cn jessie/main Sources
  404  Not Found [IP: 101.6.15.130 80]
Err http://mirrors.tuna.tsinghua.edu.cn jessie/contrib Sources
  404  Not Found [IP: 101.6.15.130 80]
Err http://mirrors.tuna.tsinghua.edu.cn jessie/non-free Sources
  404  Not Found [IP: 101.6.15.130 80]
Err http://mirrors.tuna.tsinghua.edu.cn jessie/main armhf Packages
  404  Not Found [IP: 101.6.15.130 80]
Err http://mirrors.tuna.tsinghua.edu.cn jessie/contrib armhf Packages
  404  Not Found [IP: 101.6.15.130 80]
Err http://mirrors.tuna.tsinghua.edu.cn jessie/non-free armhf Packages
  404  Not Found [IP: 101.6.15.130 80]
Ign http://mirrors.tuna.tsinghua.edu.cn jessie/contrib Translation-en_US
Ign http://mirrors.tuna.tsinghua.edu.cn jessie/contrib Translation-en
Ign http://mirrors.tuna.tsinghua.edu.cn jessie/main Translation-en_US
Ign http://mirrors.tuna.tsinghua.edu.cn jessie/main Translation-en
Ign http://mirrors.tuna.tsinghua.edu.cn jessie/non-free Translation-en_US
Ign http://mirrors.tuna.tsinghua.edu.cn jessie/non-free Translation-en
Err http://mirrors.tuna.tsinghua.edu.cn jessie-updates/main Sources
  404  Not Found [IP: 101.6.15.130 80]
Err http://mirrors.tuna.tsinghua.edu.cn jessie-updates/contrib Sources
  404  Not Found [IP: 101.6.15.130 80]
Err http://mirrors.tuna.tsinghua.edu.cn jessie-updates/non-free Sources
  404  Not Found [IP: 101.6.15.130 80]
Err http://mirrors.tuna.tsinghua.edu.cn jessie-updates/main armhf Packages
  404  Not Found [IP: 101.6.15.130 80]
Err http://mirrors.tuna.tsinghua.edu.cn jessie-updates/contrib armhf Packages
  404  Not Found [IP: 101.6.15.130 80]
Err http://mirrors.tuna.tsinghua.edu.cn jessie-updates/non-free armhf Packages
  404  Not Found [IP: 101.6.15.130 80]
Ign http://mirrors.tuna.tsinghua.edu.cn jessie-updates/contrib Translation-en_US
Ign http://mirrors.tuna.tsinghua.edu.cn jessie-updates/contrib Translation-en
Ign http://mirrors.tuna.tsinghua.edu.cn jessie-updates/main Translation-en_US
Ign http://mirrors.tuna.tsinghua.edu.cn jessie-updates/main Translation-en
Ign http://mirrors.tuna.tsinghua.edu.cn jessie-updates/non-free Translation-en_US
Ign http://mirrors.tuna.tsinghua.edu.cn jessie-updates/non-free Translation-en
Err http://mirrors.tuna.tsinghua.edu.cn jessie/updates/main Sources
  404  Not Found [IP: 101.6.15.130 80]
Err http://mirrors.tuna.tsinghua.edu.cn jessie/updates/contrib Sources
  404  Not Found [IP: 101.6.15.130 80]
Err http://mirrors.tuna.tsinghua.edu.cn jessie/updates/non-free Sources
  404  Not Found [IP: 101.6.15.130 80]
Err http://mirrors.tuna.tsinghua.edu.cn jessie/updates/main armhf Packages
  404  Not Found [IP: 101.6.15.130 80]
Err http://mirrors.tuna.tsinghua.edu.cn jessie/updates/contrib armhf Packages
  404  Not Found [IP: 101.6.15.130 80]
Err http://mirrors.tuna.tsinghua.edu.cn jessie/updates/non-free armhf Packages
  404  Not Found [IP: 101.6.15.130 80]
Ign http://mirrors.tuna.tsinghua.edu.cn jessie/updates/contrib Translation-en_US
Ign http://mirrors.tuna.tsinghua.edu.cn jessie/updates/contrib Translation-en
Ign http://mirrors.tuna.tsinghua.edu.cn jessie/updates/main Translation-en_US
Ign http://mirrors.tuna.tsinghua.edu.cn jessie/updates/main Translation-en
Ign http://mirrors.tuna.tsinghua.edu.cn jessie/updates/non-free Translation-en_US
Ign http://mirrors.tuna.tsinghua.edu.cn jessie/updates/non-free Translation-en
W: Failed to fetch http://mirrors.tuna.tsinghua.edu.cn/debian/dists/jessie/main/source/Sources  404  Not Found [IP: 101.6.15.130 80]

W: Failed to fetch http://mirrors.tuna.tsinghua.edu.cn/debian/dists/jessie/contrib/source/Sources  404  Not Found [IP: 101.6.15.130 80]

W: Failed to fetch http://mirrors.tuna.tsinghua.edu.cn/debian/dists/jessie/non-free/source/Sources  404  Not Found [IP: 101.6.15.130 80]

W: Failed to fetch http://mirrors.tuna.tsinghua.edu.cn/debian/dists/jessie/main/binary-armhf/Packages  404  Not Found [IP: 101.6.15.130 80]

W: Failed to fetch http://mirrors.tuna.tsinghua.edu.cn/debian/dists/jessie/contrib/binary-armhf/Packages  404  Not Found [IP: 101.6.15.130 80]

W: Failed to fetch http://mirrors.tuna.tsinghua.edu.cn/debian/dists/jessie/non-free/binary-armhf/Packages  404  Not Found [IP: 101.6.15.130 80]

W: Failed to fetch http://mirrors.tuna.tsinghua.edu.cn/debian/dists/jessie-updates/main/source/Sources  404  Not Found [IP: 101.6.15.130 80]

W: Failed to fetch http://mirrors.tuna.tsinghua.edu.cn/debian/dists/jessie-updates/contrib/source/Sources  404  Not Found [IP: 101.6.15.130 80]

W: Failed to fetch http://mirrors.tuna.tsinghua.edu.cn/debian/dists/jessie-updates/non-free/source/Sources  404  Not Found [IP: 101.6.15.130 80]

W: Failed to fetch http://mirrors.tuna.tsinghua.edu.cn/debian/dists/jessie-updates/main/binary-armhf/Packages  404  Not Found [IP: 101.6.15.130 80]

W: Failed to fetch http://mirrors.tuna.tsinghua.edu.cn/debian/dists/jessie-updates/contrib/binary-armhf/Packages  404  Not Found [IP: 101.6.15.130 80]

W: Failed to fetch http://mirrors.tuna.tsinghua.edu.cn/debian/dists/jessie-updates/non-free/binary-armhf/Packages  404  Not Found [IP: 101.6.15.130 80]

W: Failed to fetch http://mirrors.tuna.tsinghua.edu.cn/debian-security/dists/jessie/updates/main/source/Sources  404  Not Found [IP: 101.6.15.130 80]

W: Failed to fetch http://mirrors.tuna.tsinghua.edu.cn/debian-security/dists/jessie/updates/contrib/source/Sources  404  Not Found [IP: 101.6.15.130 80]

W: Failed to fetch http://mirrors.tuna.tsinghua.edu.cn/debian-security/dists/jessie/updates/non-free/source/Sources  404  Not Found [IP: 101.6.15.130 80]

W: Failed to fetch http://mirrors.tuna.tsinghua.edu.cn/debian-security/dists/jessie/updates/main/binary-armhf/Packages  404  Not Found [IP: 101.6.15.130 80]

W: Failed to fetch http://mirrors.tuna.tsinghua.edu.cn/debian-security/dists/jessie/updates/contrib/binary-armhf/Packages  404  Not Found [IP: 101.6.15.130 80]

W: Failed to fetch http://mirrors.tuna.tsinghua.edu.cn/debian-security/dists/jessie/updates/non-free/binary-armhf/Packages  404  Not Found [IP: 101.6.15.130 80]

E: Some index files failed to download. They have been ignored, or old ones used instead.

我们用apt-get update时候发现更新失败,查询发现国内debian镜像源已经不维护这个jessie版本的源,所以导致更新失败。怎么去解决呢?毫无疑问,这个时候需要换一个国内持续维护的debian镜像源

三、更换镜像源步骤

  1. 先选择一个目前还在维护合适的镜像源:https://mirrors.tuna.tsinghua.edu.cn/help/debian/
  2. 在arm开发板上更换国内镜像源,这里我选择的debian 11 bullseye。
    # 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
    deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free
    # deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free
    
    deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free
    # deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free
    
    deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free
    # deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free
    
    deb https://security.debian.org/debian-security bullseye-security main contrib non-free
    # deb-src https://security.debian.org/debian-security bullseye-security main contrib non-free
    
  3. 执行apt update,之后会发现报错,信息如下:
    嵌入式LINUX开发系列之ARM板子如何替换debian镜像源,linux开发,linux
    解决方法:
    cd /usr/lib/apt/methods
    ln -s http https
    
    再次执行apt update,发现又出现报错,信息如下:
    嵌入式LINUX开发系列之ARM板子如何替换debian镜像源,linux开发,linux
    解决方法:
    apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 0E98404D386FA1D9 6ED0E7B82643E131 605C66F00D6C9793 112695A0E562B32A 54404762BBB6E853
    
    最后再次执行:apt update 无报错。
  4. 执行apt upgrade,问题解决。

总结

以上就是今天要讲的内容,本文简单介绍了ARM板子debian镜像源替换方法,一个好的稳定的镜像源可以有效提升我们嵌入式开发效率。希望大家点点关注,订阅,持续更新,张工致力于有效解决我们项目开发过程中遇到的问题。文章来源地址https://www.toymoban.com/news/detail-843029.html

到了这里,关于嵌入式LINUX开发系列之ARM板子如何替换debian镜像源的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 嵌入式Linux:如何进行嵌入式Linux开发?

    目录 1、裸机开发 2、SDK开发 3、驱动开发 3.1、字符设备驱动 3.2、块设备驱动 3.3、网络设备驱动 4、应用开发 嵌入式Linux开发主要有四种方式:裸机开发、SDK开发、驱动开发和应用开发。 裸机开发通常指在没有操作系统支持的环境中直接在硬件上运行程序的开发。这种开发方

    2024年01月25日
    浏览(79)
  • 嵌入式Linux驱动开发系列六:Makefile

    Makefile是什么? gcc hello.c -o hello gcc aa.c bb.c cc.c dd.c ... make工具和Makefile make和Makefile是什么关系? make工具:找出修改过的文件,根据依赖关系,找出受影响的相关文件,最后按照规则单独编译这些文件。 Makefile文件:记录依赖关系和编译规则。 必须要学精Makefile吗? 怎么学习Makefi

    2024年02月13日
    浏览(59)
  • 嵌入式Linux驱动开发系列五:Linux系统和HelloWorld

    三个问题 了解Hello World程序的执行过程有什么用? 编译和执行:Hello World程序的执行分为两个主要步骤:编译和执行。编译器将源代码转换为可执行文件,然后计算机执行该文件并输出相应的结果。了解这个过程可以帮助我们理解如何将代码转化为可运行的程序。 语法和语义

    2024年02月13日
    浏览(56)
  • 【嵌入式开发 Linux 常用命令系列 7 -- awk 常用方法】

    上篇文章:嵌入式开发 Linux 常用命令系列 6 – 字符提取 cut 命令使用 下篇文章:嵌入式开发 Linux 常用命令系列 8 – 二进制转为16进制常用命令 AWK是一种强大的文本分析工具,最初是由 Aho, Weinberger 和 Kernighan 设计和实现的,AWK 的名称就来源于他们三人的姓氏首字母。在Lin

    2024年02月15日
    浏览(60)
  • 嵌入式开发——ARM介绍

    ARM是一种芯片架构,由英国的ARM Holdings公司开发和授权,被广泛应用于各种嵌入式系统、移动设备和消费电子产品中。ARM架构被设计成低功耗、高性能、可定制化的特点,能够满足各种应用场景下的需求。 ARM架构主要设计了以下几个部分内容: 指令集架构 (Instruction Set Ar

    2024年02月04日
    浏览(68)
  • 【ARM 嵌入式 编译系列 10.4 -- 生成二进制文件】

    在嵌入的工作中,经常会使用到二进制文件,那么我们如何自己生成一个二进制文件呢?接下来介绍如何将一个只包含将32位数据的文件转化为二进制文件,原文件如下(数据一共 64bytes): 我们使用 gcc 对齐先进行编译然后再进行反汇编: 具体命令如下: 通过上面命令会生成

    2024年02月02日
    浏览(53)
  • 【ARM 嵌入式 编译系列 3.5 -- gcc 链接参数介绍】

    请阅读 【嵌入式开发学习必备专栏 之 ARM GCC 编译专栏】 上篇文章【ARM 嵌入式 编译系列 3.4 – 查看所依赖库文件的路径 详细介绍】一直在提 链接参数 ,那么链接参数有哪些,它们又有什么作用呢? 如前一篇文章中的的链接参数到底是什么意思呢? -L : 指定了 链接库的路径

    2024年01月17日
    浏览(46)
  • 【ARM 嵌入式 编译系列 2.1 -- GCC 编译参数学习】

    请阅读 【ARM GCC 编译专栏导读】 上篇文章:ARM 嵌入式 编译系列 2 – GCC 编译过程介绍 下篇文章:ARM 嵌入式 C 入门及渐进 3 – GCC attribute ((weak)) 弱符号使用 上篇文章 ARM 嵌入式 编译系列 2 – GCC 编译过程介绍 已经介绍过了具体的编译流程,本篇文章主要介绍变过程中常见的

    2024年02月13日
    浏览(44)
  • ARM裸机开发——简易嵌入式游戏开发

    利用LCD屏,实现简易的图片展示,展示个人信息 利用图片显示与按键功能实现简易的游戏设计,需要包含动画连贯展示   本实验主要为具体游戏设计,主要包含游戏架构设计、底层硬件设计、具体代码实现四部分,设计了本项目方案的架构图如图2.1所示。 图2.1 游戏设计整

    2024年02月06日
    浏览(54)
  • 嵌入式培训机构四个月实训课程笔记(完整版)-Linux ARM驱动编程第三天-ARM Linux ADC和触摸屏开发 (物联技术666)

    链接:https://pan.baidu.com/s/1V0E9IHSoLbpiWJsncmFgdA?pwd=1688 提取码:1688   教学内容: 1 、 ADC S3C2440 的 A/D 转换器包含一个 8 通道的模拟输入转换器,可以将模拟输入信号转换成 10 位数字编码。 在 A/D 转换时钟频率为 2.5MHz 时,其最大转换率为 500KSPS ( 5 个时钟周期完成一次转换) 输

    2024年02月20日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包