1 错误产生原因

在使用apt-get指令从源服务器的仓库中安装软件时,有时会产生Unable to locate package的错误,如图1所示。

 

图1 安装软件错误

该错误的意思是“不能定位互联网仓库中的包的位置”,主要的原因是Kali Linux的源列表配置有问题。

2 解决方法

解决上述问题的方法是更新Kali Linux的源服务器地址列表。

2.1 Kali Linux的源服务器地址列表

Kali Linux的源列表位于/etc/apt/sources.list中,保存了Kali Linux软件下载和更新时的源服务器地址。

2.2 更新原服务器地址

使用vim打开源服务器地址列表文件,如图2所示。

 

图2 打开源服务器地址列表文件

输入如图3所示的内容

 

图3 更新源服务器地址

2.3 格式说明

图3中的以“#”开头的行表示注释,不以“#”开头的行,每一行表示一个服务器的地址及属性,其格式为

档案类型 镜像URL 版本代号 软件包分类

2.3.1 档案类型

在图3中,deb表示档案类型是二进制预编译软件包。除此之外,档案类型还可以是deb-src,表示软件包的源代码。

2.3.2 镜像URL

图3中红色字体表示镜像URL,可以是http、ftp以及本地文件等路径。以图3中的第一行为例,此时的镜像URL是“http://http.kali.org/kali”,在浏览器的地址栏中输入该URL得到如图4的内容。

 

图4 镜像URL内容

(1)dists文件夹

在以上内容中,dists和pool两个文件夹最为重要,其中dists文件夹中包含了当前库的所有软件包的索引,该文件夹中的文件如图5所示.

 

图5 dists文件夹中的文件

从图5中可以看出,dists文件夹中的文件夹对应了不同版本的Kali Linux。

(2)pool文件夹

pool文件夹中包含的是软件包的物理地址,如图6所示。

 

图6 pool文件夹中的文件

从图6中可以看出,为了方便管理,pool目录下按照软件的属性分为contrib、main和non-free三类。其中main表示官方支持的软件;contrib表示带有非自由依赖关系的DFSG兼容软件;non-free表示非DFSG兼容软件。每个目录下又按照源代码包名称的首字母归档。

相关链接1 DFSG,是Debian Free Software Guidelines即Debian自由软件指导方针的简称。该方针的主要内容包括自由的再次发行、程序必须包括源代码、必须保证作者源代码的完整性等。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐