有可能吗,也许通过钉住或者其他,限制存储库可以在白名单基础上升级哪些软件包?
例子:
如果我将docker repo添加到apt:
deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable
并且我想指定 docker repo 只能安装或升级我指定的软件包列表:
docker-ce
docker-ce-cli
(当然 PPA repos 也一样)。所以现在 docker repo 不能替代其他软件或欺骗我。
她如何才能将每个存储库的软件包安全列入白名单?
Ubuntu 18.04
答案1
如果您想要apt-mark hold
查看所有当前安装的软件包:
跑步dpkg --get-selections|grep -v deinstall |cut -f1|sed 's/$/ hold/g'| dpkg --set-selections
您还可以设置适当的优先事项.0 就是你想要的。Wireguard应该给你一个很好的例子:
sudo sh -c "printf 'Package: *\nPin: release a=unstable\nPin-Priority: 90\n' >> /etc/apt/preferences.d/limit-unstable"
Docker 示例:
$ cat /etc/apt/preferences.d/docker
Package: docker-ce
Pin: origin download.docker.com
Pin-Priority: 1001