2.5.4. 获取用于软件包的元数据
当使用 APT 工具时,如 aptitude
, apt-get
, synaptic
, apt-file
, auto-apt
,我们需要更新包含 Debian 档案库信息元数据的本地拷贝。这些本地拷贝的文件名称,和在 “/etc/apt/sources.list
“ 文件里面的 distribution
, area
, architecture
相应名称一致。 (参见 第 2.1.4 节 “Debian 档案库基础”).
“
/var/lib/apt/lists/deb.debian.org_debian_dists_<distribution>_Release
““
/var/lib/apt/lists/deb.debian.org_debian_dists_<distribution>_Release.gpg
““
/var/lib/apt/lists/deb.debian.org_debian_dists_<distribution>_<area>_binary-<architecture>_Packages
““
/var/lib/apt/lists/deb.debian.org_debian_dists_<distribution>_<area>_source_Sources
““
/var/cache/apt/apt-file/deb.debian.org_debian_dists_<distribution>_Contents-<architecture>.gz
“ (apt-file
)
前 4 种类型的文件是所有相关的 APT 命令共享的,并且可以通过 “apt-get update
” 或 “aptitude update
” 在命令行中进行更新。如果在 “/etc/apt/sources.list
” 中有相应的 “deb
” 行,则 “软件包
” 元数据会进行更新。如果在 “/etc/apt/sources.list
” 中有相应的 “deb-src
” 行,则 “源代码
” 元数据会进行更新。
“Packages
“ 和 “Sources
“ 的元数据文件包含有“Filename:
”字段,指向二进制和源代码包文件的位置。目前,这些软件包都统一放在”pool/
“目录树下,这样可以改善跨版本发布的传输。
“软件包
”元数据的本地副本可以使用 aptitude
来进行交互式的搜索。专门的搜索命令 grep-dctrl(1) 可以搜索“软件包
”和“源代码
”元数据的本地副本。
“Contents-<architecture>
“元数据的本地拷贝,能够被”apt-file update
“更新,它的位置和其它 4 个不同。参见 apt-file(1). (auto-apt
的 “Contents-<architecture>.gz
“文件的本地拷贝默认也使用不同的位置。)