我现在多次遇到这个问题。
您必须登录到您不知道的服务器,并且必须找到应用程序的安装位置及其配置文件的位置。
我知道大多数应用程序配置都在/etc/
...例如/etc/nagios/nrpe.cfg
但知道并不可靠。我怎样才能找到有保证的产品?
检查和研究配置的好方法是什么?大多数应用程序允许包含其他文件,因此配置可以分为多个文件,这需要很长时间才能写下所有文件的位置并单独查看所有文件,如果结构是级联的,情况会变得更糟。
答案1
这是 Linux 的通用方法。安装strace
并执行以下操作:
sudo strace -e file -fF -o /tmp/application.log application
然后您可以检查/tmp/application.log
并查看所有打开的文件。如果应用程序使用/etc
您可以的文件grep /etc /tmp/application.log
。
sudo
仅系统范围的守护进程/服务需要使用上述内容。
答案2
您可以做的就是列出软件包的内容。 Linux 上的大多数配置文件都位于/etc/
.所以你可以这样做:
在 Arch Linux 上:
pkgfile <package name> | grep etc
对于 AUR 包,您可以对构建的 TAR 文件进行 tar,例如
tar tvf ~/.cache/yay/<package name>/<package name and version>.tar.xz | grep etc
在 Debian / Ubuntu / Linux Mint 上:
apt-file <package name> | grep etc
您还可以在其他 Linux 发行版中找到类似的 CLI 命令。
作为额外的好处,你确切地知道其中为给定包安装了所有文件。
答案3
每个应用程序开发人员都必须自己选择该应用程序的配置文件的存储位置。它是每个用户的配置吗?它是系统范围的配置吗?
人们可以找到配置文件 - 它包含在application
.
strings $(type -p application)
阅读man strings
以优化。