我正在寻找 apt-get WSL 中包的源代码。
$ apt-get source bash
Reading package lists... Done
E: You must put some 'source' URIs in your sources.list
这些是安装时附带的默认源:
deb http://archive.ubuntu.com/ubuntu/ xenial main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ xenial-updates main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu/ xenial-security main restricted universe multiverse
它们驻留在哪里以及我应该如何继续添加它们?
答案1
由于没有人充分回答这个问题,而我来这里寻找答案,但自己找到了答案,我想我会添加它,以便其他人受益。
在 WSL Ubuntu 16.04 (xenial) 上,源位于/etc/apt/sources.list
您可以直接在您喜欢的编辑器中编辑它,然后运行sudo apt update
以查看更改。请注意,默认情况下,源作为注释包含在内,因此只需通过删除#
(并根据需要添加其他存储库)来取消注释它们就可以非常简单地完成。
编辑:
如果由于某种原因您的sources.list
文件已损坏和/或根本没有它们,您可以从以下位置下载原始源图像的当前版本https://cloud-images.ubuntu.com/xenial/current,然后找到并下载该xenial-server-cloudimg-amd64-wsl.rootfs.tar.gz
文件(注意AMD64和瓦斯尔文件名的一部分)。在该存档中,您可以在 处找到原始文件etc/apt/sources.list
,您可以用它来替换或从中获取以补充当前文件。
其他较新版本的 WSL Ubuntu 也可以在主目录中找到https://cloud-images.ubuntu.com/地址。
答案2
解决方案是添加这一行:
deb-src http://archive.ubuntu.com/ubuntu/ xenial main restricted universe multiverse
答案3
以防万一您出于与我相同的原因提出这个问题:
我刚刚安装/激活了 WSL,我想打开 Midnight Commander。我打字了mc
,没有mc。于是我按照系统推荐的做了apt install mc
,系统却说从来没有听说过mc。
我/etc/apt/sources.list
按照申克的建议进行了检查,发现了很多来源!没必要去打猎。所缺少的是
apt update
。
之后我就可以安装 Ubuntu 已知的所有软件了。
答案4
仅供参考,到 2021 年,以下内容不再有效。
deb-srchttp://archive.ubuntu.com/ubuntu/Xenial主要受限宇宙多元宇宙
使用 apt-add-repository 代替:
apt-add-repository http://archive.ubuntu.com/ubuntu/