Package traditionnel Netcat (nc) pour RHEL 6.x?


12

J'essaie d'utiliser le modèle Percona Apache Monitoring [Cacti] pour Memcached .

Ils avertissent en effet que vous ne pouvez pas utiliser la version openbsd du paquet et fournissent une solution pour les utilisateurs d'Ubuntu / Debian, à savoir:

Vous avez besoin de nc sur le serveur. Certaines versions de nc acceptent différentes options de ligne de commande. Vous pouvez modifier les options utilisées en configurant le script PHP. Si vous ne voulez pas le faire pour une raison quelconque, vous pouvez installer une version de nc conforme aux attentes codées dans la configuration par défaut du script. Sur Debian / Ubuntu, netcat-openbsd ne fonctionne pas, vous avez donc besoin du paquet netcat-traditional, et vous devez basculer vers /bin/nc.traditional ...

Étant donné que la version RHEL 6.x provient en effet de openbsd (confirmé par rpm -qi nc), comment procéder pour l'installer sur RHEL / CentOS?

Quelqu'un d'autre qui exécute ces modèles Percona sur RHEL / CentOS? Qu'est-ce que tu as fait? alienle paquet Debian?

Mise à jour 1 : FWIW, j'ai essayé d'utiliser GNU netcat en le compilant à partir de la source mais il ne semble pas non plus avoir les options exactes requises par le modèle Cacti (c'est-à-dire qu'il n'y a pas d'analogie pour -C ou -q1, il semble)

Mise à jour 2 : j'ai alien [ed] le paquet netcat-traditional_1.10-38_amd64.deb pour faire un .tgz et il produit un binaire "nc.traditional" et cette version a l'option -q mais pas -C

Mise à jour 3 : j'ai allié [ed] netcat-openbsd_1.89-3ubuntu2_amd64.deb comme suggéré par cjc et bien qu'il fournisse les options -C et -q, il ne semble pas fonctionner avec le modèle. J'ai également supprimé l'option -q1 de nc_cmd comme suggéré par quanta. Ne génère pas de graphique ni ne produit de sortie à partir de la ligne de commande.

Mise à jour 4 : J'ai construit le RPM source comme suggéré par dmourati et laissé de côté le -q1 comme suggéré par quanta et il ne représente pas graphiquement ou ne produit pas de sortie à partir de la ligne de commande. Peut-être que la solution source RPM et / ou ne passant pas -q1 fonctionne sur RHEL 5.x, je ne sais pas. À ce stade, j'admets la défaite.

À votre santé


Hmm. Voici un rpm "netcat traditionnel" pour 5.x: rpm.pbone.net/index.php3/stat/4/idpl/2392833/dir/redhat_5.x/com/… Vous pourriez peut-être faire quelque chose avec le SRPM, en termes de construction sur RHEL / CentOS 6.x.
cjc

@cjc, voir ma mise à jour 2 J'attends le même problème avec ce RPM.
HTTP500

hmm, en regardant de plus près le nc installé sur ma boîte Ubuntu 10.04, je vois que la version qui a à la fois "-C" et "-q1" est la version openbsd, la version 1.89-3ubuntu2. Le nc.traditional ne fait pas. Essayez d'alien netcat-openbsd peut-être?
cjc


4
C'est presque comme si les créateurs de modèles trollaient exprès. "L'installation de ce modèle est facile! Assurez-vous simplement que votre netcat dispose des options -C et -q. <Evil grin>"
Janne Pikkarainen

Réponses:


2

veuillez installer le package appelé nmap-ncat et le vérifier.


-1

Voici une solution partielle (et opposée) qui traite le -C mais pas le -q.

J'ai commencé ici:

http://www.reidea.hu/netcatcrlf/

Cela explique au moins ce que l'option -C est censée faire, fournir un CRLF.

Cette page m'a conduit à un ancien bugzilla:

https://bugzilla.redhat.com/show_bug.cgi?id=203931

Vous pouvez y trouver un SRPM patché pour le problème -C.

https://bugzilla.redhat.com/attachment.cgi?id=134827

Téléchargez ce SRPM, reconstruisez-le (fonctionne bien dans mon environnement de génération CentOS 6 RPM) et vous pouvez installer le nc résultant. Consultez la page de manuel, voila, support pour -C.

-C Envoyer CRLF comme fin de ligne

Pour ma propre édification, que fait l'option -q1?

EDIT : Ah, je vois que le -q1 est de quitter après 1 seconde. Pour le netcat ci-dessus, l'option est "-w" pour le délai d'expiration. Vous pourrez peut-être apporter cette modification simple au script percona et faire fonctionner vos graphiques. Passez un EOF si nécessaire.


1
Mon impression est que le "-q1" diffère du délai d'attente "-w". Ce dernier est le délai pour établir une connexion. Le premier, du moins selon les documents, est un retard dans la fermeture d'une connexion établie.
cjc

-1

Sur ma boîte Ubuntu 10.04, je vois que la version qui a à la fois "-C" et "-q1" est celle openbsd, la version 1.89-3ubuntu2. Le nc.traditionnel ne fait pas.

Essayez d'alien netcat-openbsd, peut-être?

Fait intéressant, les différentes sources de netcat sur Internet ne disposent pas de l'ensemble des fonctionnalités offertes par la version Ubuntu. Je n'ai pas regardé le manifeste du paquet Ubuntu pour voir ce qu'ils ont fait.


Prime récompensée car elle répond aux critères affichés, mais notez que cette solution ne fonctionne pas pour le problème plus large (c'est-à-dire avec le modèle Percona Cacti Memcached), donc n'accordez pas la meilleure réponse.
HTTP500

-1

Vous pouvez utiliser l'option de configuration nc_cmd dans le modèle, comme indiqué dans le commentaire juste au-dessus de votre dernier commentaire au rapport de bogue sur le projet de modèle Google Code Cacti, où vous avez lié à cette question.

En outre, vous devez savoir que vous utilisez des modèles obsolètes. Comme indiqué dans le projet Better Cacti Templates, ce projet a été interrompu et fait maintenant partie des plugins de surveillance Percona. Voir http://www.percona.com/software/percona-monitoring-plugins/ et notez que ce logiciel est entièrement couvert par les contrats de support ou de consultation de Percona, ce qui est un excellent moyen d'obtenir de l'aide pour l'installation. Ou, dans le cas peu probable où il y aurait une réelle incompatibilité qui ne vous permettrait pas d'installer les modèles tels quels, vous pourrez obtenir des corrections de bogues pour le logiciel.


Je suis en utilisant le modèle Plugins Suivi Percona comme indiqué dans le message original. J'ai ajouté un commentaire à ce fil par frustration, mes excuses. Et j'ai modifié l'option de configuration nc_cmd dans le fichier ../scripts/ss_get_by_ssh.php. C'est seulement ce modèle qui m'a causé du chagrin et probablement pas digne d'un contrat de support / conseil pour le moment mais merci pour la suggestion.
HTTP500

Oh, mon erreur, désolé de ne pas avoir lu assez attentivement. J'ai sauté à une conclusion. Dans tous les cas, nc_cmd devrait être la bonne solution, sauf s'il y a quelque chose à propos du nc que vous utilisez qui l'empêche simplement de fonctionner. Si cela peut fonctionner, il devrait s'agir de trouver les bonnes options à utiliser pour votre nc.
Baron Schwartz

-3

Alternativement, vous pouvez écrire votre propre wrapper en utilisant les bonnes options et en ignorant toutes les autres. L'enregistrer et l'utiliser dans les plugins de surveillance percona. Comment ça sonne?


Un wrapper ne serait pas en mesure d'implémenter les fonctionnalités fournies par ces options. À moins que vous ne suggériez qu'il réécrit netcat lui-même.
chutz

-6
yum install nc
up2date install nc

et changez le script si vous en avez besoin


1
Vous avez lu la note où j'ai dit que la version qui vient de Red Hat utilise la version openbsd de nc non?
HTTP500

"Vous pouvez changer les options utilisées en configurant le script PHP", et changer le script si vous en avez besoin
GioMac

L'option utilisée par le script qui n'est pas présent dans la version RHEL est -q1. Pouvez-vous suggérer une ou des options analogues? Merci!
HTTP500

Oh, je trouverais probablement le code source pour netcat dont j'ai besoin et créerais un RPM, ou le compilerais et l'installerais directement (make, make install).
GioMac
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.