Was bietet / etc / export und wie finde ich das heraus?

8

Ich habe zwei virtuelle Debian-Maschinen, die aus derselben Netinstall-ISO erstellt wurden, aber wahrscheinlich unterschiedliche Pakete installiert haben. Einer von ihnen hat eine /etc/exportsDatei für NFS-Mounts, der andere nicht. Ich möchte, dass beide diese Datei vom Paketmanager installiert haben.

Ich komme aus der Fedora-Welt und wäre ich noch dabei, würde ich yum whatprovides /etc/exports. Mir wurde gesagt, dass ich es im Debian-Land tun sollte apt-file search. Ich erhalte jedoch keine Ergebnisse mit:

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

Was fehlt mir hier?

drs
quelle
askubuntu.com/questions/481/…
Ciro Santilli 法轮功 病毒 病毒 审查. 事件 29.

Antworten:

13

Wenn Sie nach einer Datei suchen, die zu einem Paket gehört, das auf Ihrem Computer installiert ist, können Sie Folgendes verwenden dpkg -S(entspricht dpkg-query -S):

dpkg -S /etc/exports

In diesem Fall wird jedoch nichts gefunden, da /etc/exportses von einem Betreuerskript erstellt wird (und dieser Dateityp explizit nicht von dpkg-queryoder für diese Angelegenheit behandelt wird apt-file).

Also , wenn apt-fileund dkpg -Snicht um eine Datei zu finden, können Sie versuchen , durch die Betreuerskripte suchen:

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

Dies sollte mit nfs-kernel-serverden Betreuerskripten übereinstimmen . Das ist das Paket, das /etc/exportszumindest auf meinen NFS-Servern erstellt wird.

Stephen Kitt
quelle
6

Unter Debian /etc/exportsist in keinem Paket enthalten. Es gibt eine Beispielkonfigurationsdatei:

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

Sie können dies nach / etc / export kopieren und zu Ihrer Zufriedenheit bearbeiten (möglicherweise gibt es nach der Installation einige NFS-Einstellungen, in die dies kopiert wird /etc). Diese Datei wird als Teil des nfs-kernel-serverPakets bereitgestellt:

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

Ohne apt-fileund wenn das gesuchte Paket nicht installiert ist (dann dpkg -Sist es Ihr Freund), können Sie auf der Debian-Website nach der Datei suchen:

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

Es kann jedoch einfacher sein, das Webformular zu verwenden (ich habe eine Shell-Funktion, die $BROWSERfür mich auf diese URL erweitert wird ):

Wie /etc/exportsdie obigen Websites zeigen, ist es in keinem Paket direkt enthalten. Wenn Sie das Paket jedoch bereits installiert haben, können Sie in Betreuerskripten danach suchen:

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

Das Ergebnis enthält /var/lib/dpkg/info/nfs-kernel-server.postinst, was auf unseren inzwischen bekannten Schuldigen für die Datei hinweist.

Andernfalls können Sie auf der Website nach ähnlich benannten Dateien suchen. Diese Suche nach "Paketen, die Dateien enthalten, deren Namen das Schlüsselwort enthalten" hat zu viele Ergebnisse, aber die Suche nach Pfaden, die mit dem Schlüsselwort enden, hat nur 14 Ergebnisse, von denen eines das ist /usr/share/nfs-kernel-server/conffiles/etc.exports nfs-kernel-server [not kfreebsd-amd64, kfreebsd-i386], wonach wir gesucht haben.

AIUI Es gibt keine webbasierte Suche über die Betreuer-Skripte aller Pakete (noch?).

Mirabilos
quelle