几乎 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 个某最大社区给的方案:
如果照搬,很遗憾,无论你的系统是什么,最终你的源将被替换成Ubuntu发行版
版本代号focal
对应20.04 LTS
So~ 并不是 Diss 任何人或者其他方法,本文只是尝试总结了最安全有效的方法
国内源汇总#
企业源:
来源 | 源地址 URL | IP 支持 | HTTPS 支持 |
---|---|---|---|
阿里云开源镜像站 | http://mirrors.aliyun.com/ | IPv4/IPv6 | HTTP/HTTPS |
搜狐开源镜像站 | http://mirrors.aliyun.com/ | IPv4/IPv6 | HTTP/HTTPS |
网易开源镜像站 | http://mirrors.aliyun.com/ | IPv4/IPv6 | HTTP/HTTPS |
腾讯开源镜像站 | http://mirrors.cloud.tencent.com/ | IPv4/IPv6 | HTTP/HTTPS |
教育源:
来源 | 源地址 URL | IP 支持 | HTTPS 支持 |
---|---|---|---|
中国科学技术大学 | http://mirrors.ustc.edu.cn/ | IPv4/IPv6 | HTTP/HTTPS |
中国科学技术大学 | http://mirrors4.ustc.edu.cn/ | IPv4 Only | HTTP/HTTPS |
中国科学技术大学 | http://mirrors6.ustc.edu.cn/ | IPv6 Only | HTTP/HTTPS |
清华大学开源镜像站 | https://mirrors.tuna.tsinghua.edu.cn/ | IPv4/IPv6 | HTTPS Only |