CentOS 7 и Puppet не могут установить NC

У меня странная проблема с тем, что марионетка принудительно применяет пакет nc.

Я установил его вручную в итоге через: yum install nc

Я вижу, что марионетка делает это через:
/usr/bin/yum -d 0 -e 0 -y list nc
Возвращает: Ошибка: нет подходящих пакетов для списка

Я также проверил это с помощью командной строки:
yum list nc
Возвращает Ошибка: нет подходящих пакетов в списке

Тем не менее, когда я это сделаю:
yum install nc
Возвращает: Пакет 2: nmap-ncat-6.40-4.el7.x86_64 уже установлен и последняя версия

Что мне не хватает?


person Werner    schedule 14.03.2015    source источник


Ответы (3)


В этом случае вы можете использовать случай, чтобы разделить версии, в одном примере используется FACT os (которая возвращает версию и т. Д. Вашей системы ... команда facter вернет детали:

root@sytem# facter -p os
{"name"=>"CentOS", "family"=>"RedHat", "release"=>{"major"=>"7", "minor"=>"0", "full"=>"7.0.1406"}}

#we capture release hash
$curr_os = $os['release']

case $curr_os['major'] {
  '7': { .... something }
  *: {something}
}

Это быстрый пример: могут быть опечатки или нет. Но используя системные факты, вы можете увидеть, что происходит.

Факты об ОС предоставляют вам 3 основные переменные: имя, семейство, выпуск ... В выпуске у вас есть небольшой словарь с дополнительной информацией о вашем Операционные системы! объединяя их, вы можете создавать кейсы для достижения ваших целей.

person Vassilis Aretakis    schedule 15.03.2015
comment
Мне потребовалось некоторое время, но теперь я понял. Это ответ на комментарий @Werner о решении @ VassilisAretakis, работающем только в некоторых версиях ОС, но не в других версиях. Чтобы он мог применять разные решения в зависимости от версии ОС. В ПОРЯДКЕ. - person Jesse Chisholm; 12.05.2020

Nc - это ссылка на nmap-ncat.

Было бы неплохо использовать nmap-ncat в вашей марионетке, потому что NC - это виртуальное имя nmap-ncat.

Puppet не может понять ссылки / виртуальные имена

ваша марионетка должна быть:

package {
  'nmap-ncat':
    ensure => installed;
}
person Vassilis Aretakis    schedule 14.03.2015
comment
Отлично, это работает для 7, но нарушает 6.6: выполнение '/ usr / bin / yum -d 0 -e 0 -y list nmap-ncat' вернуло 1: Ошибка: нет подходящих пакетов в списке Придется ли мне обновлять свои манифесты разделить по версии, или есть другой вариант? - person Werner; 15.03.2015
comment
@Werner - это то, что я бы сделал. И надеюсь, что они не сломают эту функцию в будущем. ;) - person Brad Knowles; 17.03.2015

yum install nmap-ncat.x86_64

решил мою проблему

person wonbin2011    schedule 25.11.2018
comment
yum нашел для меня версию x84_64 без добавления этого суффикса fwiw, поэтому я сделал yum install nmap-ncat - person Grant Humphries; 10.05.2019