发布于2026-07-06 阅读(0)
扫一扫,手机访问
统信UOS里如果同时挂着好几个软件源,APT默认只会按加载顺序挑包,搞不好就从低质量源拉了个旧版本,甚至触发依赖冲突,导致`sudo apt install`失败或者系统更新翻车。稳妥的做法是在`/etc/apt/preferences.d/`下建一个`.pref`文件,用Pin-Priority来管优先级——比如官方源设900,清华源设800,而且必须严格对好`apt policy`里`o=`后面的那个origin值,大小写一个都不能差。图形界面只认`trusted=yes`这种信任开关,不支持数字优先级;直接在`sources.list`里嵌`priority`参数风险不小,而且不能跟`[trusted=yes]`一起用。

统信UOS系统中多个软件源共存时,若未设置优先级,APT可能从低质量源拉取旧版本包甚至引发依赖冲突,导致sudo apt install失败或系统更新异常。所以,把优先级搞清楚确实是件要紧事。
这是最稳妥、也被推荐最多的做法。它不动全局策略,还能精确到某个包名来控制,灵活性很高。
操作流程其实很直接:先确认目录是否存在——sudo mkdir -p /etc/apt/preferences.d。然后新建一个以.pref结尾的策略文件,比如official-pin.pref:sudo vim /etc/apt/preferences.d/official-pin.pref。接着写入下面这些内容,注意空格和冒号后面必须跟个空格:
Package: * Pin: origin "packages.uniontech.com" Pin-Priority: 900 Package: * Pin: origin "mirrors.tuna.tsinghua.edu.cn" Pin-Priority: 800
保存退出后,执行apt policy看看效果。你会看到uniontech.com源的包显示为“900”,清华源则是“800”,优先级已经生效。这一步的关键在于origin字段必须严格匹配——【origin值必须与apt policy输出中“o=”后的字符串完全一致,大小写敏感】。
如果不太习惯敲命令行,又想快速启用第三方源,图形界面也能帮忙。不过它只适用于通过“软件源”控制面板添加的条目,而且不支持设置数值优先级。
操作上两种方式:一是在【其他软件】选项卡里点击【添加】,粘贴deb行后,在地址末尾手动追加[trusted=yes]参数,比如:deb [trusted=yes] https://mirrors.ustc.edu.cn/uniontech/ eagle main contrib non-free
二是如果源已经添加但没启用,先勾选条目前面的框,再点右侧【编辑】按钮,在弹出窗口勾选【信任此源】复选框,然后确定。
注意,图形界面勾选【信任此源】只相当于加了[trusted=yes],不会改变APT默认的500优先级,仅仅是跳过了GPG签名验证。想调优先级?还是得用前面的配置方案。
这条路风险偏高,只推荐高级用户在有明确预期的情况下尝试。搞错了可能让所有源都失效,得不偿失。
打开源配置文件:sudo vim /etc/apt/sources.list。在任意deb行开头插入[arch=amd64,priority=750](示例值),完整格式像这样:deb [arch=amd64,priority=750] https://mirrors.aliyun.com/uniontechos/ eagle main contrib non-free
保存后执行sudo apt clean && sudo apt update。操作本身不复杂,但【priority参数只对当前这一行deb生效,且不能与[trusted=yes]混用在同一对方括号内】,否则apt update会报错并拒绝加载该行。谨慎再谨慎。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
4
5
6
7
8
9