You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Linux从Artifactory安装RPM包遇认证失败,如何使用curl解决?

使用Curl解决Artifactory RPM包安装的认证问题

绝对可行!rpm命令本身对带HTTP认证的URL支持很有限,这也是你遇到transfer failed的核心原因——它没法处理Artifactory要求的用户名/密码验证。而curl是处理这类带认证的HTTP下载场景的绝佳工具,下面给你两种常用的解决方式:

方法1:先下载RPM到本地再安装

这种方式更稳妥,方便后续复用或验证包的完整性:

  1. 用curl下载包(替换username和password为你的Artifactory凭据):

    curl -u username:password -O https://artifactory.com/myrpm.rpm
    
    • -u:指定HTTP认证的用户名和密码,格式为用户名:密码
    • -O:将下载的文件保存为远程服务器上的原文件名(这里就是myrpm.rpm)
      👉 安全提示:不想在命令行明文暴露密码的话,可以只写-u username,回车后curl会交互式提示你输入密码,避免密码被记录到shell历史中。
  2. 下载完成后,用rpm命令安装本地包:

    rpm -ihv --nodeps --force myrpm.rpm
    

方法2:通过管道直接安装(无需本地保存)

如果只是临时安装,不想留下本地文件,可以用管道直接把curl的输出传给rpm:

curl -u username:password https://artifactory.com/myrpm.rpm | rpm -ihv --nodeps --force -

这里最后一个-是告诉rpm从标准输入读取包内容,跳过本地文件存储的步骤。

额外注意事项

  • 确保系统已经安装curl:如果没装,用你的包管理器安装,比如yum install curl(RHEL/CentOS)或apt install curl(Debian/Ubuntu)。
  • Artifactory API密钥替代:有些场景下,你可以用Artifactory的API密钥代替密码,格式依然是-u username:api_key,具体是否支持可以参考你的Artifactory配置。
  • 持久化认证(可选):如果经常需要从这个Artifactory下载包,可以把认证信息写入~/.curlrc文件(设置文件权限为chmod 600 ~/.curlrc保证安全),内容如下:
    user = "username:password"
    
    之后用curl下载时就不用每次加-u参数了。

内容的提问来源于stack exchange,提问作者Adrian

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.13 08:16:31