为什么 add-apt-repository 添加源仓库失败?

Lor*_*ein 7 apt

如果我尝试添加源存储库, add-apt-repository 会引发错误:

这有效:

sudo add-apt-repository 'deb http://dl.ajaxplorer.info/repos/apt squeeze main'
Run Code Online (Sandbox Code Playgroud)

这失败并出现错误:

sudo add-apt-repository 'deb-src http://dl.ajaxplorer.info/repos/apt squeeze main'
Error: 'deb-src http://dl.ajaxplorer.info/repos/apt squeeze main' invalid
Run Code Online (Sandbox Code Playgroud)

去掉引号没有帮助:

sudo add-apt-repository deb-src http://dl.ajaxplorer.info/repos/apt squeeze main
Error: need a repository as argument
Run Code Online (Sandbox Code Playgroud)

Tel*_*ele 16

如果您还想将您的存储库添加为源存储库,您必须在命令行中添加 -s 标志:

sudo add-apt-repository -s 'deb http://dl.ajaxplorer.info/repos/apt squeeze main'
Run Code Online (Sandbox Code Playgroud)

就这样。

这将添加:

deb http://dl.ajax...
Run Code Online (Sandbox Code Playgroud)

deb-src http://dl.ajax...
Run Code Online (Sandbox Code Playgroud)

以及。


ish*_*ish 3

手册apt-add-repository(添加了强调):

REPOSITORY 可以是可以直接添加到的行 sources.list(5),也可以是...

在第一种形式中, REPOSITORY 将仅附加/etc/apt/sources.list.

现在,虽然deb-src是合法类型,sources.list并且您可能希望提交错误,但似乎这也能完成这项工作,因为 GPG 密钥仅为 PPA 下载:

sudo sh -c "echo deb-src http://dl.ajaxplorer.info/repos/apt squeeze main \ >> /etc/apt/sources.list"
Run Code Online (Sandbox Code Playgroud)