Zimri

Zimri - xlog

生活就像海洋 🌊
github

Linux 安全高效地更换源

几乎 90% 的 Linux 安装后都没有默认国内源,本文将尽可能收集整理出相对齐全且安全更换源的方法,以便解决国内使用 Linux 更新镜像加速

系统版本#

首先查询系统的发行版本:

lsb_release -a

回显如下:

# 🌰 No.1
root@lightweight:~# lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 22.04.1 LTS
Release:	22.04
Codename:	focal

该命令并不适用所有发行版 Linux,如果不能确定发行系统 没有该命令的建议选择这个开源项目:高级系统信息工具 neofetch 安装方法

neofetch
root@VPSServer:~# neofetch
            .-/+oossssoo+/-.               root@VPS107-GitServer
        `:+ssssssssssssssssss+:`           ---------------------
      -+ssssssssssssssssssyyssss+-         OS: Ubuntu 22.04.3 LTS x86_64
    .ossssssssssssssssssdMMMNysssso.       Host: KVM/QEMU (Standard PC (Q35 + ICH9, 2009)
   /ssssssssssshdmmNNmmyNMMMMhssssss/      Kernel: 5.15.0-88-generic
  +ssssssssshmydMMMMMMMNddddyssssssss+     Uptime: 1 hour, 43 mins
 /sssssssshNMMMyhhyyyyhmNMMMNhssssssss/    Packages: 700 (dpkg), 4 (snap)
.ssssssssdMMMNhsssssssssshNMMMdssssssss.   Shell: bash 5.1.16
+sssshhhyNMMNyssssssssssssyNMMMysssssss+   Terminal: /dev/pts/0
ossyNMMMNyMMhsssssssssssssshmmmhssssssso   CPU: Intel Xeon W-1290 (2) @ 3.191GHz
ossyNMMMNyMMhsssssssssssssshmmmhssssssso   GPU: 00:01.0 Vendor 1234 Device 1111
+sssshhhyNMMNyssssssssssssyNMMMysssssss+   Memory: 349MiB / 1963MiB
.ssssssssdMMMNhsssssssssshNMMMdssssssss.
 /sssssssshNMMMyhhyyyyhdNMMMNhssssssss/
  +sssssssssdmydMMMMMMMMddddyssssssss+
   /ssssssssssshdmNNNNmyNMMMMhssssss/
    .ossssssssssssssssssdMMMNysssso.
      -+sssssssssssssssssyyyssss+-
        `:+ssssssssssssssssss+:`
            .-/+oossssoo+/-.

root@VPSServer:~#

更换源#

确定了系统后,按照下方不同系统方法操作

Debian apt 源一般修改 /etc/apt/sources.list 文件。所有修改之前先备份一个原来的文件,以防止出错可恢复:

cp /etc/apt/sources.list /etc/apt/sources.list.bak

上面的命令 将 /etc/apt/ 目录下 sources.list 文件复制一份并重命名为 sources.list.bak

只需要将 Debian 的默认源地址改成新的地址即可,比如将将/etc/apt/目录下 sources.list文件中的 http://deb.debian.org 改成 https://mirrors.163.com

可使用以下这条命令:

sed -i 's#http://deb.debian.org#http://mirrors.163.com#g' /etc/apt/sources.list

注意,如果安装源是 https 协议的,我们还需要安装软件包 apt-transport-https。 执行

apt-get install apt-transport-https,随后再执行 apt-get update 即可。

⚠️⚠️⚠️ 方法失效不可用?查看下方注意事项

⚠️ 注意事项#

授人以鱼不如授人以渔

本文旨在涵盖所有的发行版 Linux 更换更新源,但实际收集下来发现很难实现一一收集,原因主要是每个地区、厂商对于更新源地址都会有一些不同之处,此处直接替换源地址的方法就不能实现复制代码即可更改的效果。

但本文给出的源替换方法是最安全的方法之一,原理是直接替换源的 URL 其他配置均不去动,首先了解 Linux 源文件大概构造,以Ubuntu22.04(Jammy)为例,在源中 URL 的参数如下:

cat /etc/apt/sources.list

Ubuntu22.04: /etc/apt/sources.list

得知此处默认的镜像地址为:http://archive.ubuntu.com

根据 Debian 换源例子,此处更换为 163 源的命令即为:

sed -i 's#http://archive.ubuntu.com#http://mirrors.163.com#g' /etc/apt/sources.list

实现了如下的效果:

执行命令后,sources.list 内容如下:

deb http://mirrors.163.com/ubuntu jammy main restricted universe multiverse

deb http://mirrors.163.com/ubuntu jammy-updates main restricted universe multiverse

deb http://mirrors.163.com/ubuntu jammy-security main restricted universe multiverse

只是单独的替换了源 URL,并没有去动 sources.list 内的其他结构,这个点非常重要;本文面对的用户可能会有各个水平阶层;所以使用替换 URL 的方法是最安全有效且稳定的。

不稳定的🌰#

以百度搜索 “Linux 更换源” 为关键词,打开了前 3 个某最大社区给的方案:

WechatIMG132

如果照搬,很遗憾,无论你的系统是什么,最终你的源将被替换成Ubuntu发行版 版本代号focal 对应20.04 LTS

So~ 并不是 Diss 任何人或者其他方法,本文只是尝试总结了最安全有效的方法

国内源汇总#

企业源:

来源源地址 URLIP 支持HTTPS 支持
阿里云开源镜像站http://mirrors.aliyun.com/IPv4/IPv6HTTP/HTTPS
搜狐开源镜像站http://mirrors.aliyun.com/IPv4/IPv6HTTP/HTTPS
网易开源镜像站http://mirrors.aliyun.com/IPv4/IPv6HTTP/HTTPS
腾讯开源镜像站http://mirrors.cloud.tencent.com/IPv4/IPv6HTTP/HTTPS

教育源:

来源源地址 URLIP 支持HTTPS 支持
中国科学技术大学http://mirrors.ustc.edu.cn/IPv4/IPv6HTTP/HTTPS
中国科学技术大学http://mirrors4.ustc.edu.cn/IPv4 OnlyHTTP/HTTPS
中国科学技术大学http://mirrors6.ustc.edu.cn/IPv6 OnlyHTTP/HTTPS
清华大学开源镜像站https://mirrors.tuna.tsinghua.edu.cn/IPv4/IPv6HTTPS Only
加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。