是什么提供了/ etc / exports,我如何发现呢?


8

我有两个Debian虚拟机是从相同的netinstall iso构建的,但是可能安装了不同的软件包。其中一个有一个/etc/exports用于nfs挂载的文件,而另一个没有。我希望他们俩都可以通过软件包管理器安装此文件。

我来自Fedora的世界,现在我仍然在其中yum whatprovides /etc/exports有人告诉我在Debian土地上应该这样做apt-file search。但是,我没有得到任何结果:

apt-file update
apt-file search /etc/exports

我在这里想念什么?


Answers:


13

当您查找属于您计算机上安装的软件包的文件时,可以使用dpkg -S(等效于dpkg-query -S):

dpkg -S /etc/exports

在这种情况下,尽管它什么也找不到,因为它/etc/exports是由维护者脚本创建的(并且该文件的类型显然不是由dpkg-query或来处理的apt-file)。

所以,如果apt-filedkpg -S无法找到一个文件,你可以尝试通过维护者脚本来看看:

grep /etc/exports /var/lib/dpkg/info/*

这应该与nfs-kernel-server的维护者脚本匹配;那是/etc/exports至少在我的NFS服务器上创建的包。


6

在Debian上,/etc/exports不包含在任何软件包中。有一个示例配置文件:

/usr/share/nfs-kernel-server/conffiles/etc.exports

您可以将其复制到/ etc / exports并对其进行编辑,以达到满意的效果(很可能会有一些nfs安装后设置将其复制到/etc)。该文件作为nfs-kernel-server软件包的一部分提供:

$ apt-file search /usr/share/nfs-kernel-server/conffiles/etc.exports
nfs-kernel-server: /usr/share/nfs-kernel-server/conffiles/etc.exports

2

没有apt-file,并且如果您要查找的软件包没有安装(然后dpkg -S是您的朋友),则可以在Debian网站上查看该文件:

https://packages.debian.org/search?searchon=contents&keywords=/etc/exports&mode=path&suite=unstable&arch=any

不过,使用Web表单可能更容易(我有一个shell函数可以$BROWSER为我扩展到该URL ):

至于/etc/exports–如以上站点所示,它没有直接包含在任何程序包中。但是,如果您已经安装了软件包,则可以在维护脚本中对其进行grep:

fgrep -r etc/exports /var/lib/dpkg/info

结果包含/var/lib/dpkg/info/nfs-kernel-server.postinst,它指向我们目前所知的文件罪魁祸首。

失败的话,您可以在网站上搜索名称相似的文件。这种搜索“包含名称中包含关键字的文件的软件包”的结果太多,但是搜索以关键字结尾路径只有14个结果,其中之一是/usr/share/nfs-kernel-server/conffiles/etc.exports nfs-kernel-server [not kfreebsd-amd64, kfreebsd-i386],这正是我们想要的。

AIUI尚未对所有软件包的维护者脚本进行基于Web的搜索(还可以吗?)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.