已安装的 deb 包中缺少文件(定制的 dockerized debian)

已安装的 deb 包中缺少文件(定制的 dockerized debian)

我需要实现 ldap + kerberos 集成。我用于 ldap 端的 docker 镜像是:https://github.com/osixia/docker-openldap

目前我正在关注:https://help.ubuntu.com/lts/serverguide/kerberos-ldap.html 然而我被卡住了,似乎缺少文件:/usr/share/doc/krb5-kdc-ldap/kerberos.schema.gz

跑步:

apt-get update && apt-get upgrade -yy && apt-get install -yy  krb5-kdc-ldap && ls -l /usr/share/doc/krb5-kdc-ldap/kerberos.schema.gz

容器内部:osixia/openldap:1.1.2没有这样的文件。知道为什么会这样吗?

但是如果我运行:

apt-get update && apt-get install -yy apt-file && apt-file update && apt-file list krb5-kdc-ldap

我懂了:

krb5-kdc-ldap: /etc/insserv/overrides/krb5-kdc
krb5-kdc-ldap: /lib/systemd/system/krb5-admin-server.service.d/slapd-before-kdc.conf
krb5-kdc-ldap: /lib/systemd/system/krb5-kdc.service.d/slapd-before-kdc.conf
krb5-kdc-ldap: /usr/lib/x86_64-linux-gnu/krb5/libkdb_ldap.so.1
krb5-kdc-ldap: /usr/lib/x86_64-linux-gnu/krb5/libkdb_ldap.so.1.0
krb5-kdc-ldap: /usr/lib/x86_64-linux-gnu/krb5/plugins/kdb/kldap.so
krb5-kdc-ldap: /usr/sbin/kdb5_ldap_util
krb5-kdc-ldap: /usr/share/doc/krb5-kdc-ldap/NEWS.Debian.gz
krb5-kdc-ldap: /usr/share/doc/krb5-kdc-ldap/changelog.Debian.gz
krb5-kdc-ldap: /usr/share/doc/krb5-kdc-ldap/copyright
krb5-kdc-ldap: /usr/share/doc/krb5-kdc-ldap/kerberos.ldif.gz
krb5-kdc-ldap: /usr/share/doc/krb5-kdc-ldap/kerberos.schema.gz
krb5-kdc-ldap: /usr/share/man/man8/kdb5_ldap_util.8.gz

此外,如果我在 docker 容器内运行命令debian:jessie

   apt-get update && apt-get upgrade -yy && apt-get install -yy  krb5-kdc-ldap && ls -l /usr/share/doc/krb5-kdc-ldap/kerberos.schema.gz

我可以看到存在的文件。

为什么安装包后,特定容器中缺少其中一个文件?我该如何获取kerberos.schema.gz容器中的文件:osixia/openldap:1.1.2

答案1

为了完整起见,此文档错误已经有解决方案, 我引用:

该图像具有防止安装文档和语言环境的配置,以使其尽可能轻量。

要安装文档,请删除该文件/etc/dpkg/dpkg.cfg.d/01_nodoc

rm -f /etc/dpkg/dpkg.cfg.d/01_nodoc

并安装区域设置删除/etc/dpkg/dpkg.cfg.d/01_nolocales

rm -f /etc/dpkg/dpkg.cfg.d/01_nolocales

安装完成后krb5-kdc-ldap文件/usr/share/doc/krb5-kdc-ldap/kerberos.schema.gz就应该在那里。

答案2

文件名中的 .gz 部分可能表示在创建时使用了某种形式的压缩,例如 gzip。如果是这样,您可以尝试将文件的未压缩版本(名称相同但没有 .gz 部分)添加到同一目录中。

另外,您可以通读安装过程,看看它是否下载该文件、使用它,然后删除它。

相关内容