Linux 包管理换源 + v2rayN 代理完整备忘录
(本文适合作为长期保存的 Markdown 备忘文档)
一、目标
- 在网络受限环境下稳定使用 Linux
- 包管理器使用国内镜像源
- 通过 v2rayN(Windows)为 Linux 提供代理
- 可随时开启/关闭代理
二、v2rayN 基础准备(Windows)
必须开启的本地端口
| 类型 | 地址 | 端口 |
|---|---|---|
| HTTP | 127.0.0.1 | 10809 |
| SOCKS5 | 127.0.0.1 | 10808 |
模式建议:全局模式(最简单稳定)
三、Linux 包管理器换源
3.1 Ubuntu / Debian(APT)
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo nano /etc/apt/sources.list
Ubuntu 22.04 示例(清华源):
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
更新:
sudo apt update
3.2 CentOS / Rocky / Alma
sudo mkdir -p /etc/yum.repos.d/bak
sudo mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak/
sudo curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
sudo yum makecache
3.3 Arch Linux
sudo nano /etc/pacman.d/mirrorlist
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch
Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch
sudo pacman -Syy
四、Linux 使用 v2rayN 代理
4.1 临时代理(推荐)
export http_proxy=http://127.0.0.1:10809
export https_proxy=http://127.0.0.1:10809
export ALL_PROXY=socks5://127.0.0.1:10808
测试:
curl ipinfo.io
4.2 apt 专用代理
sudo nano /etc/apt/apt.conf.d/99proxy
Acquire::http::Proxy "http://127.0.0.1:10809";
Acquire::https::Proxy "http://127.0.0.1:10809";
五、常用工具代理配置
Git
git config --global http.proxy http://127.0.0.1:10809
git config --global https.proxy http://127.0.0.1:10809
取消:
git config --global --unset http.proxy
git config --global --unset https.proxy
pip
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
pip install requests --proxy http://127.0.0.1:10809
npm
npm config set registry https://registry.npmmirror.com
npm config set proxy http://127.0.0.1:10809
npm config set https-proxy http://127.0.0.1:10809
Docker 代理
sudo mkdir -p /etc/systemd/system/docker.service.d
sudo nano /etc/systemd/system/docker.service.d/http-proxy.conf
[Service]
Environment="HTTP_PROXY=http://127.0.0.1:10809"
Environment="HTTPS_PROXY=http://127.0.0.1:10809"
sudo systemctl daemon-reexec
sudo systemctl restart docker
六、代理开关脚本
# proxy_on
export http_proxy=http://127.0.0.1:10809
export https_proxy=http://127.0.0.1:10809
export ALL_PROXY=socks5://127.0.0.1:10808
# proxy_off
unset http_proxy https_proxy ALL_PROXY
七、常见问题
- apt 卡住:v2rayN 是否启动
- curl 有效 apt 无效:未配置 apt.conf.d
- git clone 慢:git 未单独设置代理
八、总结
换源解决速度问题
代理解决访问问题
临时代理最安全