温馨提示×

yum如何设置代理

小樊
86
2026-07-23 08:05:40
栏目: 编程语言

yum(CentOS / RHEL / Rocky / Alma 等) 中设置代理,常见有 全局代理仅 yum 代理 两种方式,下面按使用场景说明。


一、仅对 yum 设置代理(推荐)

方法 1:修改 yum 配置文件(最常用)

编辑 yum 配置文件:

sudo vi /etc/yum.conf

在文件末尾添加(按你的代理情况选择):

HTTP 代理

proxy=http://代理IP:端口

带用户名密码的代理

proxy=http://用户名:密码@代理IP:端口

HTTPS 代理

proxy=https://代理IP:端口

示例:

proxy=http://192.168.1.100:8080

保存后直接生效:

yum clean all
yum makecache

二、临时为当前命令设置代理

yum clean all
proxy=http://代理IP:端口 yum install 软件名

⚠️ 只对当前命令有效,不推荐长期使用。


三、系统级代理(影响所有程序)

1️⃣ 设置环境变量

编辑:

sudo vi /etc/environment

添加:

http_proxy="http://代理IP:端口"
https_proxy="http://代理IP:端口"
ftp_proxy="http://代理IP:端口"
no_proxy="localhost,127.0.0.1"

或临时生效:

export http_proxy="http://代理IP:端口"
export https_proxy="http://代理IP:端口"

四、如果代理需要认证(常见问题)

✅ 正确格式:

proxy=http://用户名:密码@代理IP:端口

⚠️ 注意:

  • 密码中如果有 @:/ 等特殊字符,需要 URL 编码
    例如:@%40

五、验证代理是否生效

yum repolist

或:

curl -x http://代理IP:端口 http://www.google.com

六、常见问题排查

1. yum 卡住 / 超时

  • 检查代理是否通
  • 是否 HTTPS 代理但写成 http
  • 是否被防火墙拦截

2. 代理不生效

  • 确认写在 /etc/yum.conf
  • 执行 yum clean all
  • 检查是否使用了 dnf(RHEL 8+)

七、RHEL 8 / CentOS 8+(dnf)

如果你用的是 dnf(yum 的替代):

sudo vi /etc/dnf/dnf.conf

添加同样内容:

proxy=http://代理IP:端口

如果你愿意,可以告诉我:

  • ✅ 操作系统版本
  • ✅ 代理类型(HTTP / SOCKS5 / 公司代理)
  • ✅ 是否带认证

我可以给你 精确配置示例

0