我正在运行Ubuntu 12.10,并且,如果可能的话,我想获取已安装的给定软件包可用的配置文件列表。
如果可能,我宁愿使用dpkg或apt来执行此操作,但是如果需要/推荐使用其他工具(如aptitude或dselect)则没有问题。
我正在运行Ubuntu 12.10,并且,如果可能的话,我想获取已安装的给定软件包可用的配置文件列表。
如果可能,我宁愿使用dpkg或apt来执行此操作,但是如果需要/推荐使用其他工具(如aptitude或dselect)则没有问题。
Answers:
cat
如果我正确理解了您的意图,则无需使用以外的任何其他方法:
cat /var/lib/dpkg/info/<package>.conffiles
应该给你你想要的。例如,对于zsh软件包:
% cat /var/lib/dpkg/info/zsh.conffiles
/etc/zsh/zlogin
/etc/zsh/zlogout
/etc/zsh/zprofile
/etc/zsh/zshenv
/etc/zsh/zshrc
/etc/zsh/newuser.zshrc.recommended
对于给定的程序包没有此类文件的情况-程序包维护者可以将某些文件指定为配置文件。如果未正确完成此操作,则应在适当的地方提交错误。
在这种情况下,您有两种选择。
列出/ etc /中属于该软件包的文件:
dpkg -L package | grep '/etc'
提取并检查源包,以了解其编译方式(这还将向您显示期望其配置文件位于的位置)。
apt-get source package
less package-x.y.z/debian/rules
查找上游项目页面以查找文档。
例如,让我们测试该软件包apt
以获取配置文件。
理解.conffiles
要检查哪些内容才能查看信息可能很棘手,因此建议您使用它grep
来寻找线索。
locate *.conffiles | grep apt
/var/lib/dpkg/info/apt-config-icons.conffiles
/var/lib/dpkg/info/apt.conffiles
/var/lib/dpkg/info/aptdaemon.conffiles
/var/lib/dpkg/info/apturl-common.conffiles
/var/lib/dpkg/info/libatk-adaptor:amd64.conffiles
和cat
任何这些特别是如果你根据马辛的答案卡明斯基有兴趣。
另一个技巧是阅读手册,例如,man apt
将带您进入“ 另请参阅”部分man apt.conf
,apt
在此情况下,您可以从此处调用配置文件的位置:/etc/apt/apt.conf
。
但是,配置文件/etc/apt/apt.conf
可能甚至不存在。搜索配置文件时要注意这一点。
在Linux中,配置文件应位于/etc/
目录中。您可以dpkg-query -L your_package | grep etc
用来列出目录中的所有软件包文件和/etc/
目录。
dpkg -S [package-name]怎么样?不能在这里提到它。
root@homehub:/# dpkg -S nginx
nginx-common: /usr/share/nginx/html
nginx-full: /usr/share/man/man8/nginx.8.gz
libnginx-mod-http-xslt-filter: /usr/share/doc/libnginx-mod-http-xslt-filter/copyright
nginx-common: /etc/logrotate.d/nginx
libnginx-mod-mail: /usr/share/doc/libnginx-mod-mail/changelog.gz
libnginx-mod-http-upstream-fair: /usr/share/doc/libnginx-mod-http-upstream-fair
libnginx-mod-http-auth-pam: /usr/share/doc/libnginx-mod-http-auth-pam/changelog.Debian.gz
libnginx-mod-http-image-filter: /usr/lib/nginx/modules/ngx_http_image_filter_module.so
nginx-common: /etc/nginx/snippets
libnginx-mod-mail: /usr/share/doc/libnginx-mod-mail/copyright
nginx-common: /etc/nginx/snippets/fastcgi-php.conf
libnginx-mod-http-xslt-filter: /usr/share/doc/libnginx-mod-http-xslt-filter/changelog.Debian.gz
nginx-full: /usr/share/doc/nginx-full/copyright
nginx-common: /usr/share/doc/nginx-common
nginx-common: /etc/ufw/applications.d/nginx
libnginx-mod-http-upstream-fair: /usr/share/doc/libnginx-mod-http-upstream-fair/changelog.gz
libnginx-mod-stream: /usr/share/nginx/modules-available/mod-stream.conf
nginx-common: /etc/nginx/sites-enabled
libnginx-mod-http-upstream-fair: /usr/share/doc/libnginx-mod-http-upstream-fair/copyright
libnginx-mod-http-subs-filter: /usr/share/doc/libnginx-mod-http-subs-filter/changelog.gz
libnginx-mod-http-dav-ext: /usr/share/nginx/modules-available/mod-http-dav-ext.conf
nginx-common: /etc/nginx/koi-utf
nginx-common: /etc/nginx/mime.types
nginx-common: /usr/share/vim/addons/syntax/nginx.vim
nginx-common: /usr/share/doc/nginx-common/NEWS.Debian.gz
nginx-common: /usr/share/doc/nginx-common/README.Debian
nginx-full: /usr/share/doc/nginx-full
libnginx-mod-mail: /usr/share/nginx/modules-available/mod-mail.conf
libnginx-mod-http-auth-pam: /usr/share/doc/libnginx-mod-http-auth-pam/changelog.gz
nginx: /usr/share/doc/nginx
nginx-common: /etc/nginx/win-utf
libnginx-mod-http-dav-ext: /usr/share/doc/libnginx-mod-http-dav-ext
....
有时取决于文件名的结构,如果将其输送到包含“ .conf”的grep名称,则可能会更好:
root@homehub:/# dpkg -S nginx |grep ".conf"
nginx-common: /etc/nginx/snippets/fastcgi-php.conf
libnginx-mod-stream: /usr/share/nginx/modules-available/mod-stream.conf
libnginx-mod-http-dav-ext: /usr/share/nginx/modules-available/mod-http-dav-ext.conf
libnginx-mod-mail: /usr/share/nginx/modules-available/mod-mail.conf
libnginx-mod-http-auth-pam: /usr/share/nginx/modules-available/mod-http-auth-pam.conf
nginx-common: /etc/nginx/fastcgi.conf
nginx-common: /etc/init/nginx.conf
nginx-common: /etc/nginx/conf.d
libnginx-mod-http-subs-filter: /usr/share/nginx/modules-available/mod-http-subs-filter.conf
libnginx-mod-http-geoip: /usr/share/nginx/modules-available/mod-http-geoip.conf
libnginx-mod-http-echo: /usr/share/nginx/modules-available/mod-http-echo.conf
libnginx-mod-http-upstream-fair: /usr/share/nginx/modules-available/mod-http-upstream-fair.conf
nginx-common: /etc/init/nginx.conf
libnginx-mod-http-xslt-filter: /usr/share/nginx/modules-available/mod-http-xslt-filter.conf
nginx-common: /etc/nginx/snippets/snakeoil.conf
nginx-common: /etc/nginx/nginx.conf
libnginx-mod-http-image-filter: /usr/share/nginx/modules-available/mod-http-image-filter.conf