pciids安装加速
参考资料
pciids安装加速
pciids 安装加速
一、pci.ids 是什么
`pci.ids` 是 PCI 设备 ID 数据库,保存了厂商 ID、设备 ID 与可读名称的对应关系。`lspci`、`lshw` 等工具读取它,把一长串十六进制数字翻译成人类可读的设备名: bash lspci -nn
03:00.0 VGA compatible controller [0300]: NVIDIA Corporation ... [10de:1c82]
常见位置随发行版不同:
| 发行版 | 默认路径 |
|---|---|
| Debian / Ubuntu | `/usr/share/misc/pci.ids` |
| RHEL / CentOS / Fedora | `/usr/share/hwdata/pci.ids` |
| 部分容器镜像 | 由 `pciutils` 包提供,可能缺失 |
`pciutils` 自带 `update-pciids` 命令,用于从上游拉取最新数据库: bash sudo update-pciids
二、为什么更新会慢
`update-pciids` 默认从上游站点下载文本文件。慢的原因通常不是文件大(约几百 KB 到 1 MB 级),而是:
- 上游源在境外,跨境链路抖动明显;
- 单连接下载,没有并发加速;
- DNS 解析慢或走了不理想的 CDN 节点;
- 内网环境无外网出口,或必须经过代理;
- 每次全量下载,没有本地缓存复用。
理解这几点后,加速就有明确方向:换源、并发、代理、离线分发、缓存。
三、加速思路总览
| 方法 | 适用场景 | 效果 |
|---|---|---|
| 更换下载源 | 有可访问的镜像 | 最直接 |
| 多线程下载工具 | 单源速度受限 | 中高 |
| 走代理 | 内网统一出口 | 高 |
| 离线分发 | 多台机器批量更新 | 最高 |
| 包管理器缓存 | 只需与发行版同步 | 稳定 |
四、方法一:更换下载源
`update-pciids` 本质是一个 shell 脚本,内部有一个 `URL` 变量指向下载地址。可以先查看: bash which update-pciids head -n 40 /usr/sbin/update-pciids 找到 `URL=` 那一行后,可以把它改成访问更快、可用的镜像地址。稳妥做法是先备份再改: bash sudo cp /usr/sbin/update-pciids /usr/sbin/update-pciids.bak 也可以绕过脚本,手动下载后替换文件: bash
Debian / Ubuntu
sudo curl -fsSL -o /usr/share/misc/pci.ids <镜像地址>/pci.ids
RHEL 系
sudo curl -fsSL -o /usr/share/hwdata/pci.ids <镜像地址>/pci.ids 说明:`pci.ids` 由开源项目维护并在代码托管平台上公开,很多国内镜像站也会同步。具体可用地址请以你实际能访问的镜像为准,不要照抄不明来源的链接。
五、方法二:多线程下载工具
如果必须直连某个源,用多连接下载器替代默认的单线程 `wget`/`curl`,往往能明显提速: bash
aria2 多连接下载
aria2c -x 16 -s 16 -o pci.ids <镜像地址>/pci.ids
替换到目标位置
时间:2026-10-07
来源:https://mirror.ciilii.com/
