Netcat (nc) pacchetto tradizionale per RHEL 6.x?


12

Sto cercando di utilizzare il modello Percona Apache Monitoring [Cacti] per Memcached .

In effetti avvertono che non è possibile utilizzare la versione openbsd del pacchetto e forniscono una soluzione per gli utenti Ubuntu / Debian, ovvero:

È necessario nc sul server. Alcune versioni di nc accettano diverse opzioni della riga di comando. È possibile modificare le opzioni utilizzate configurando lo script PHP. Se non vuoi farlo per qualche motivo, puoi invece installare una versione di nc conforme alle aspettative codificate nella configurazione predefinita dello script. Su Debian / Ubuntu, netcat-openbsd non funziona, quindi hai bisogno del pacchetto netcat-tradizionale e devi passare a /bin/nc.traditional ...

Dal momento che la versione RHEL 6.x proviene davvero da openbsd (confermato da rpm -qi nc) come si fa a installarlo su RHEL / CentOS?

Qualcun altro che esegue questi modelli Percona su RHEL / CentOS? Che cosa hai fatto? alienil pacchetto Debian?

Aggiornamento 1 : FWIW, ho provato a usare GNU netcat compilandolo dal sorgente ma non sembra avere nemmeno le opzioni esatte richieste dal modello Cacti (cioè non c'è analogia per -C o -q1 quindi sembra)

Aggiornamento 2 : I alien [ed] il pacchetto netcat-traditional_1.10-38_amd64.deb per creare un .tgz e produce un binario "nc.traditional" e quella versione ha l'opzione -q ma no -C

Aggiornamento 3 : Alied [ed] netcat-openbsd_1.89-3ubuntu2_amd64.deb come suggerito da cjc e sebbene fornisca le opzioni -C e -q non sembra funzionare con il modello. Ho anche rimosso l'opzione -q1 da nc_cmd come suggerito da quanta. Non rappresenta ancora graficamente né produce output dalla riga di comando.

Aggiornamento 4 : ho creato l'RPM di origine come suggerito da dmourati e ho lasciato fuori -q1 come suggerito da quanti e ancora non rappresenta graficamente o produce output dalla riga di comando. Forse la soluzione RPM di origine e / o non passa -q1 funziona su RHEL 5.x, non lo so. A questo punto ammetto la sconfitta.

Saluti


Hmm. Ecco un rpm "netcat tradizionale" per 5.x: rpm.pbone.net/index.php3/stat/4/idpl/2392833/dir/redhat_5.x/com/… Potresti essere in grado di fare qualcosa con SRPM, in termini di costruzione su RHEL / CentOS 6.x.
cjc,

@cjc, vedi il mio aggiornamento 2 Mi aspetto lo stesso problema con quel RPM.
HTTP500,

hmm, guardando più da vicino l'nc installato sul mio Ubuntu 10.04 box, vedo che la versione che ha sia "-C" che "-q1" è quella openbsd, versione 1.89-3ubuntu2. Quello nc.tradizionale no. Prova a alienare netcat-openbsd forse?
cjc,


4
È quasi come se i produttori di modelli trollassero apposta. "L'installazione di questo modello è semplice! Assicurati solo che il tuo netcat abbia entrambe le opzioni -C e -q. <Ghigno malvagio>"
Janne Pikkarainen,

Risposte:


2

installa il pacchetto chiamato nmap-ncat e controllalo.


-1

Ecco una soluzione parziale (e opposta) che si rivolge a -C ma non a -q.

Ho iniziato qui:

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

Questo almeno spiega cosa dovrebbe fare l'opzione -C, fornire un CRLF.

Quella pagina mi porta a un'antica bugzilla:

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

Qui puoi trovare un SRPM con patch per il problema -C.

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

Scarica quel SRPM, ricostruiscilo (funziona bene nel mio ambiente di build CentOS 6 RPM) e puoi installare il nc risultante. Controlla la pagina man, voilà, supporto per -C.

-C Invia CRLF come fine riga

Per la mia modifica, che cosa fa l'opzione -q1?

EDIT : Ah, vedo che -q1 deve uscire dopo 1 secondo. Per il netcat sopra, l'opzione è "-w" per il timeout. Potresti essere in grado di apportare quella semplice modifica allo script percona e far funzionare i tuoi grafici. Passare un EOF secondo necessità.


1
La mia impressione è che "-q1" differisca dal timeout "-w". Quest'ultimo è il timeout per stabilire una connessione. Il primo, almeno secondo i documenti, è un ritardo nella chiusura di una connessione stabilita.
cjc,

-1

Nella mia casella Ubuntu 10.04, vedo che la versione che ha sia "-C" che "-q1" è quella openbsd, versione 1.89-3ubuntu2. Quello nc.tradizionale in effetti no.

Prova a alienare il pacchetto netcat-openbsd, forse?

È interessante notare che le varie fonti per netcat su Internet non hanno il set completo di funzionalità offerto dalla versione di Ubuntu. Non ho guardato il manifest del pacchetto Ubuntu per vedere cosa hanno fatto.


Premiato perché soddisfa i criteri pubblicati ma nota che questa soluzione non funziona per il problema più ampio (cioè con il modello Memcached Cactus Percona), quindi non offre la migliore risposta.
HTTP500,

-1

Puoi utilizzare l'opzione di configurazione nc_cmd nel modello, come indicato nel commento appena sopra il tuo ultimo commento alla segnalazione di bug nel progetto modello Cacti codice Google, dove ti sei collegato a questa domanda.

Inoltre, dovresti sapere che stai utilizzando modelli obsoleti. Come affermato sul progetto Better Cacti Templates, tale progetto è stato interrotto e ora fa parte dei plug-in di monitoraggio Percona. Vedi http://www.percona.com/software/percona-monitoring-plugins/ e nota che questo software è completamente coperto da contratti di supporto o consulenza Percona, il che è un ottimo modo per ottenere aiuto con l'installazione. Oppure, nel caso improbabile che esista una reale incompatibilità che non ti consenta di ottenere i modelli da installare così com'è, sarai in grado di ottenere correzioni di bug nel software.


Io sto usando il modello Plugin Percona monitoraggio come indicato nel post originale. Ho aggiunto un commento a quel thread per frustrazione, le mie scuse. E ho modificato l'opzione di configurazione nc_cmd nel file ../scripts/ss_get_by_ssh.php. È solo questo modello che mi ha causato dolore e probabilmente non è degno di un contratto di supporto / consulenza in questo momento, ma grazie per il suggerimento.
HTTP500,

Oh, errore mio, scusami per non aver letto abbastanza da vicino. Sono saltato a una conclusione. In ogni caso, nc_cmd dovrebbe essere la soluzione giusta, a meno che non ci sia qualcosa nell'nc che stai usando che gli impedisce semplicemente di funzionare davvero. Se può funzionare affatto, dovrebbe essere una questione di trovare le giuste opzioni da usare per il tuo nc.
Barone Schwartz,

-3

In alternativa è possibile scrivere il proprio wrapper che utilizza le opzioni corrette e ignorare tutte le altre. Salvalo e usalo nei plugin di monitoraggio percona. Come suona


Un wrapper non sarebbe in grado di implementare la funzionalità fornita da queste opzioni. A meno che tu non stia suggerendo che riscrive lo stesso netcat.
Chutz,

-6
yum install nc
up2date install nc

e cambia lo script se ne hai bisogno


1
Hai letto la nota in cui ho detto che la versione che viene da Red Hat utilizza la versione openbsd di nc giusto?
HTTP500,

"È possibile modificare le opzioni utilizzate configurando lo script PHP" e, se necessario, modificare lo script
GioMac,

L'opzione utilizzata dallo script che non è presente nella versione RHEL è -q1. Puoi suggerire un'opzione analoga? Grazie!
HTTP500,

Oh, probabilmente troverei il codice sorgente per netcat di cui ho bisogno e creerei RPM, o lo compilerei e lo avrei installato direttamente (make, make install).
GioMac,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.