如何在使用 apt 安装相关软件包时不覆盖自定义存储库

如何在使用 apt 安装相关软件包时不覆盖自定义存储库

例如,使用以下命令将覆盖 /etc/apt/sources.list.d 文件夹中的 google-chrome.list 文件和 skype-stable.list 文件:

sudo apt -y install google-chrome-stable skypeforlinux

原始 skype-stable.list 文件包含:

deb [signed-by=/usr/share/keyrings/skypeforlinux-archive-keyring.gpg] https://repo.skype.com/deb stable main
deb-src [signed-by=/usr/share/keyrings/skypeforlinux-archive-keyring.gpg] https://repo.skype.com/deb stable main

被覆盖的 skype-stable.list 文件包含:

### THIS FILE IS AUTOMATICALLY CONFIGURED ###
# You may comment out this entry, but any other modifications may be lost.
deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main

原始 google-chrome.list 文件包含:

deb [signed-by=/usr/share/keyrings/google-archive-keyring.gpg] http://dl.google.com/linux/chrome/deb stable main
deb-src [signed-by=/usr/share/keyrings/google-archive-keyring.gpg] http://dl.google.com/linux/chrome/deb stable main

覆盖的 google-chrome.list 文件包含:

### THIS FILE IS AUTOMATICALLY CONFIGURED ###
# You may comment out this entry, but any other modifications may be lost.
deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main

我该如何避免这种情况?

答案1

通常会安装一个更新脚本来/etc/cron.daily/覆盖该.list文件。

例如,对于 chrome 来说,它是/etc/cron.daily/google-chrome。可以进行一些配置,但通常没有办法.list完全禁用更新文件。

最简单的解决方法是创建该.list文件的副本,例如my-google-chrome.list包含所需的内容,然后注释掉原始.list文件中的行(不要直接删除原始.list文件,因为它会被重新创建)。

相关内容