J'utilise des marionnettes pour gérer un tas de serveurs Debian au travail, en partie si cela inclut l'installation de paquets. Un package que j'installe sur plusieurs systèmes est nmap qui est utilisé pour vérifier que les règles de pare-feu sont correctement configurées. Sur Debian 7.0, si vous avez activé APT :: Install-Recommends, vous obtenez tout un tas de conneries avec nmap (voir ci-dessous).
Je ne veux pas que toutes les conneries qui installent nmap avec les recommandations activées soient incluses. Une solution serait de mettre à jour ma configuration apt avec APT::Install-Recommends "0";
. Mais je ne veux pas que ce soit la valeur par défaut. La majorité du temps que je veux recommande inclus. Les packages recommandés sont généralement très bien, et je ne reçois pas des tonnes de choses dont je n'ai pas besoin. Mais il y a quelques paquets qui font penser que je ne veux pas / n'ai pas besoin.
package { 'nmap':
ensure => installed,
require => Class['apt'],
}
Existe-t-il une méthode pour contrôler si les recommandations sont installées via une marionnette lors de l'utilisation du fournisseur de packages «apt»? Je ne veux pas jouer avec le fournisseur d'aptitude car apt et aptitude ne sont pas entièrement compatibles entre eux.
Avec recommande
root@fw-01:~# apt-get install nmap
Reading package lists... Done
Building dependency tree
Reading state information... Done
...
The following NEW packages will be installed:
fonts-droid fonts-liberation ghostscript gnuplot gnuplot-nox groff gsfonts
imagemagick imagemagick-common libblas3 libblas3gf libcroco3 libcupsimage2
libdjvulibre-text libdjvulibre21 libexiv2-12 libgfortran3 libgs9
libgs9-common libijs-0.35 libilmbase6 libjbig2dec0 liblcms1 liblcms2-2
liblensfun-data litesting firewall blensfun0 liblinear-tools liblinear1 liblqr-1-0
libmagickcore5 libmagickcore5-extra libmagickwand5 libnetpbm10 libopenexr6
libpaper-utils libpaper1 librsvg2-2 librsvg2-common libsvm-tools libwmf0.2-7
netpbm nmap poppler-data psutils ufraw-batch
0 upgraded, 45 newly installed, 0 to remove and 0 not upgraded.
Need to get 32.0 MB of archives.
After this operation, 93.8 MB of additional disk space will be used.
Do you want to continue [Y/n]?
Sans recommande
root@fw-01:~# apt-get --no-install-recommends install nmap
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
libblas3 libblas3gf libgfortran3 liblinear1
Suggested packages:
liblinear-dev
Recommended packages:
liblinear-tools
The following NEW packages will be installed:
libblas3 libblas3gf libgfortran3 liblinear1 nmap
0 upgraded, 5 newly installed, 0 to remove and 0 not upgraded.
Need to get 4,405 kB of archives.
After this operation, 17.4 MB of additional disk space will be used.
Do you want to continue [Y/n]?
apt
classe.Réponses:
Ceci est désormais possible via le paramètre "install_options" du type "package" Puppet: http://docs.puppetlabs.com/references/latest/type.html#package-attribute-install_options
Par exemple:
Ce qui précède garantit que l'option "--no-install-recommend" est transmise à apt-get, qui ignore les packages recommandés uniquement pour cette installation: http://manpages.ubuntu.com/manpages/precise/man8/apt-get .8.html
la source
J'ai trouvé les solutions suivantes jusqu'à présent, mais elles ne sont pas idéales.
Attendez qu'un correctif récemment ajouté en fasse la version publiée et la mise à niveau.
Utilisez simplement un exécutable pour installer au lieu du package, et utilisez un exécutable.
Mettre à jour globalement ma configuration apt, et passer le temps à trouver toutes les choses manquantes et ajuster mes manifestes pour également installer des packages que je voulais installer uniquement en étant recommandé.
Définissez la variable d'environnement APT_CONFIG avant d'exécuter la marionnette.
la source