Kurulu bir paket için tüm yapılandırma dosyaları nasıl listelenir?


11

Ubuntu 12.10 kullanıyorum ve mümkünse, önceden yüklenmiş olan belirli bir paket için kullanılabilir yapılandırma dosyalarının listesini almak istiyorum.

Mümkünse dpkg veya apt kullanarak yapmayı tercih ederim, ancak yetenek veya dselect gibi diğer araçlara ihtiyaç duyulursa / önerilir.

Yanıtlar:


16

catNiyetinizi doğru anladıysam, başka bir şey kullanmanıza gerek yok :

cat /var/lib/dpkg/info/<package>.conffiles

size peşinde olduğunuz şeyi vermelisiniz. Örneğin zsh paketi için:

% 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

Belirli bir paket için böyle bir dosyanın bulunmadığı bir durumda, belirli dosyaları yapılandırma olarak belirlemek paket yöneticisine bağlıdır. Bu doğru şekilde yapılmadıysa, uygun olan yerlerde bir hata vermelisiniz.

Bu gibi durumlarda birkaç seçeneğiniz vardır.

  1. / Etc / dizinindeki pakete ait dosyaları listeleyin:

    dpkg -L package | grep '/etc'
    
  2. Nasıl derlendiğini öğrenmek için kaynak paketi getirin ve inceleyin (bu da yapılandırma dosyalarının nerede bulunacağını nerede göstereceğini göstermelidir).

    apt-get source package
    less package-x.y.z/debian/rules
    
  3. Belgeleri bulmak için akış yukarı proje sayfasına bakın.


Belirli bir paket bu yol altında böyle bir dosyaya sahip değilse .conffiles, bu yapılandırma dosyaları kullanma anlamına mı geliyor?
Daniel Yuste Aroca

Mutlaka değil - aslında paket tarafından kullanılan yapılandırma dosyaları olabilir, ancak paketleyici paketlenmiş uygulamanın yapılandırma dosyalarının bir parçası olarak herhangi bir dosya belirlememiş olabilir.
Marcin Kaminski

.Conffiles dosya tüm yapılandırma dosyalarını listeler ile gemi paketi ve paketleyici tarafından gibi işaretlenmiştir. Otomatik olarak yüklenen ve görünmeyen bir paketleme hatası var, ancak bazı dosyaların (özellikle kullanıcının nokta dosyalarındaki kullanıcıya özel yapılandırma) paketle birlikte gönderilemeyeceğini ve zaten ne olduğunu bilmedikçe gerçekten otomatik olarak bulunamayacağını unutmayın. onlar.
Darael

1

Örneğin aptyapılandırma dosyalarını almak için paketi test edelim .

.conffilesBilgileri görmek için neleri kontrol etmeniz gerektiğini anlamak zor olabilir , bu yüzden grepipucunu bulmak için kullanmanızı öneririm .

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

Ve catbunların herhangi birine özellikle Marcin'in Kaminski cevabına göre ilgileniyorsanız.

Örneğin bir diğer hile, el kitabını okumaktır man aptArayabileceğin yerden AYRICA bölümü SEE götürecektir man apt.confiçin yapılandırma dosyasının konumunu göreceksiniz nerede aptbu durumda: /etc/apt/apt.conf.

Ancak, yapılandırma dosyası /etc/apt/apt.confbile olmayabilir. Yapılandırma dosyalarını ararken buna dikkat edin.

Linux'ta yapılandırma dosyaları /etc/dizinin içinde olmalıdır . dpkg-query -L your_package | grep etcDizindeki tüm paket dosyalarını ve dizinleri listelemek için kullanabilirsiniz /etc/.


1

Dpkg -S [paket adı] ne dersiniz? Burada bahsedildiğini göremiyorum.

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
....

Ve bazen dosya adı yapısına bağlı olarak, ".conf" içeren grep adlarına yönlendirilse iyi olabilir:

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
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.