在这里也找到了一个关于这个 Description-md5 定义的详细描述:
https://wiki.debian.org/DebianRepository/Format#Description-md5
按这个帖子说明,我把 软件包英文描述,长描述的字符串,在 shell 里面 echo 到管道给 md5sum ,确实可以得到正确的 Description-md5 的值。
比如说:
Package: zfs-zed
Description-md5: d631b1d9b4cd78d49e3305a0739095ab
Description-en: OpenZFS Event Daemon
The Z file system is a pooled filesystem designed for
maximum data
integrity, supporting data snapshots, multiple copies, and
data
checksums.
.
This package provides the OpenZFS Event Daemon (zed).
在 shell 里面执行:
echo "OpenZFS Event Daemon
> The Z file system is a pooled filesystem designed for
maximum data
> integrity, supporting data snapshots, multiple copies, and
data
> checksums.
> .
> This package provides the OpenZFS Event Daemon
(zed)."|md5sum
d631b1d9b4cd78d49e3305a0739095ab -
得到的 MD5 值是正确的。
但同样的方法,用在中文描述,怎么也没有得到正确的 MD5 指,在行尾增加空行,也不行。不知道是不是对中文字符,换行,空格等,是否有做什么特殊处理呢?
如 Debian 官方镜像里面的文件: mirrors.cloud.tencent.com_debian_dists_buster_main_i18n_Translation-zh
Package: sysvinit-core
Description-md5: 33be387f0c3f6dc398cbbfb9bd97351d
Description-zh: 类系统V启动程序
本软件包包含了用于启动 Debian 系统以及进行基本进程管理的程序。
.
本软件包中最重要的文件是
/sbin/init。它是启动时第一个运行的程序,并且以进程号1继续运行直到关机。所有其它的进程都是它启动的。
echo "类系统V启动程序
> 本软件包包含了用于启动 Debian 系统以及进行基本进程管理的程序。
> .
> 本软件包中最重要的文件是
/sbin/init。它是启动时第一个运行的程序,并且以进程号1继续运行直到关机。所有其它的进程都是它启动的。"|md5sum
3d94bbb034ed85a70ae77e01bfe114ae -
~~~~~~~~~~~~~,得到的这个MD5值和 Description-md5 是不匹配的。
Hi, 铜豌豆 Linux <atzlinux@yeah.net> 于2020年3月24日周二 上午11:26写道:大家好! 现在 Debian 的很多软件包都有了中文描述,这些中文描述是放在 Debian 镜像的 i18n 目录下的。 如:http://mirrors.huaweicloud.com/debian/dists/Debian10.3/main/i18n/ 中文翻译文件是:Translation-zh.bz2 和 Translation-zh_CN.bz2。 文件内容格式如下: Package: sysvinit-core Description-md5: 33be387f0c3f6dc398cbbfb9bd97351d Description-zh: 类系统V启动程序 本软件包包含了用于启动 Debian 系统以及进行基本进程管理的程序。 . 本软件包中最重要的文件是 /sbin/init。它是启动时第一个运行的程序,并且以进程号1继续运行直到关机。所有其它的进程都是它启动的。 我现在想请教的是,这个文件里面的 Description-md5: 值是如何生成的? Debian 下有工具或者软件包命令,自动生成这个值吗? 在网上搜索了 DDTP 等相关资料,也只是说是这个值是描述的 MD5 值,没有找到如何制作这类文件的信息。如果只是想找信息是怎么生成的话,可以看 DDTP 的源代码: https://salsa.debian.org/l10n-team/ddtp 虽然暂时还没有深入读代码,但我相信这只是将翻译字符串做了 md5 而已,没有什么特别的地方。 可以考虑使用 Description-md5 或者 md5 作为关键字在整个代码仓库内寻找相关信息。
-- 肖盛文 Faris Xiao 邮箱:atzlinux@yeah.net 微信:atzlinux QQ:909868357 铜豌豆 Linux 基于 Debian 的 Linux 中文桌面操作系统:https://www.atzlinux.com