如何在不编辑 /etc/apt/sources.list 的情况下添加 apt-get 存储库?

如何在不编辑 /etc/apt/sources.list 的情况下添加 apt-get 存储库?

我想通过脚本用户将存储库添加到 apt-get(而不会弄乱 /etc/apt/sources.list)。此脚本可能会运行多次,因此我不能每次都附加条目。有什么方法可以在包含条目的目录中添加单个文件吗?

我知道您可以为 yum 执行此操作,但我不确定 apt-get 是否可以执行此操作。如果我需要添加更多信息,请告诉我。

答案1

您可以将文件放在 中。 (type )/etc/apt/sources.list.d的手册页中对此进行了描述。手册页中写道:sources.listman sources.list

较旧的 SOURCES.LIST.D

/etc/apt/sources.list.d 目录提供了一种在单独文件中添加 sources.list 条目的方法。格式与常规 sources.list 文件相同。文件名需要以 .list 结尾,并且只能包含字母(az 和 AZ)、数字(0-9)、下划线 (_)、连字符 (-) 和句点 (.)。否则它们将被默默忽略。

更新:

2016 来源.列表.D

/etc/apt/sources.list.d 目录提供了一种在单独的文件中添加 sources.list 条目的方法。允许使用两种不同的文件格式,如下两节所述。文件名需要具有扩展名 .list 或 .sources,具体取决于所包含的格式。文件名只能包含字母(az 和 AZ)、数字(0-9)、下划线(_)、连字符(-)和句点(.)。否则,APT 将打印一条通知,表明它已忽略某个文件,除非该文件与 Dir::Ignore-Files-Silently 配置列表中的模式匹配 - 在这种情况下,它将被默默忽略。

答案2

您可以尝试:

add-apt-repository <REPOSITORY LINE>

存储库行只是您要附加到 sources.list 或 PPA 存储库的内容。查看手册页这里,或者执行:

man add-apt-repository

答案3

我(认为我)需要将 ppa repo 添加到 crunchbang,(debian)安装
:(注意:“raring” 是与我使用的 debian 版本相匹配的 ubuntu 版本),因此我执行以下操作:

sudo su -

# you can call the file anything that you want, but it has to end with .list to be a valid for apt-get
echo 'deb http://ppa.launchpad.net/yannubuntu/boot-repair/ubuntu/ raring main'>> /etc/apt/sources.list.d/boot-repair.list

# get the keys for that repo so that apt can verify the signed .deb files
wget http://ppa.launchpad.net/yannubuntu/boot-repair/ubuntu/dists/raring/Release.gpg
apt-key add Release.gpg
#gpg --search-keys 60D8DA0B

apt-get update

其中大部分内容已在启动修复页,(虽然最后测试磁盘进而分区是我真正需要恢复丢失的分区和损坏的 MBR。)这可能不是Debian 方式 (TM),但它对我来说有效。

有些 debian 仓库是“老式的”,那么您只需要一行:

deb http://repo.alexx.net/apt/ /
# the trailing slash needs to be there

如果您有 add-apt-repository 的话,它会很好用,但是它似乎更适合 ubuntu。

答案4

add-apt-repository有第三种形式(除了 PPA URL 和完整的 apt 行),可以启用分发组件:

sudo add-apt-repository universe
sudo add-apt-repository contrib

这是在 12.10(Quantal)中引入的。

相关内容