Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Necessito scriptino in bash/perl/pyton...
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian)
View previous topic :: View next topic  
Author Message
quantumwire
Guru
Guru


Joined: 15 Oct 2003
Posts: 403
Location: Lausanne

PostPosted: Fri Sep 23, 2005 12:31 pm    Post subject: Necessito scriptino in bash/perl/pyton... Reply with quote

Ho bisogno di un semplicissimo scriptino (perferibilmente in bash) per monitorare il traffico rete totale sia in entrata che in uscita su una generica scheda di rete.

Chiamiamo questo scriptino "netmonitor".

Volendo basarmi sull'output di ifconfig:

Code:
[root@sigaro ~]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:80:C8:37:70:4F
          inet addr:128.178.54.96  Bcast:128.178.54.255  Mask:255.255.255.0
          inet6 addr: fe80::280:c8ff:fe37:704f/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1910381 errors:0 dropped:0 overruns:0 frame:0
          TX packets:113297 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:268007982 (255.5 Mb)  TX bytes:10605309 (10.1 Mb)

eth1      Link encap:Ethernet  HWaddr 00:80:C8:37:46:13
          inet addr:192.168.0.1  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::280:c8ff:fe37:4613/64 Scope:Link
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:28950 errors:0 dropped:0 overruns:0 frame:0
          TX packets:633 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:2861987 (2.7 Mb)  TX bytes:64537 (63.0 Kb)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:1200 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1200 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:99870 (97.5 Kb)  TX bytes:99870 (97.5 Kb)


vi spiego cosa deve fare lo script "netmonitor":

1 - deve ricevere come parametri il device da monitorare ed il nome di un file dove poter scrivere il traffico tipo: "# netmonitor eth0 traffic.dat"
2 - deve leggere l'output di ifconfig e memorizzarsi i due valori in Mb(yte) per il traffico totale in entrata ed in uscita ("RX bytes:268007982 (255.5 Mb) TX bytes:10605309 (10.1 Mb)")
3 - deve aspettare un certo periodo di tempo (ad esempio in bash: sleep 10m)
4 - deve rileggere l'output di ifconfig e memorizzarsi i due nuovi valori per il traffico totale in entrata ed in uscita ("RX bytes:268007982 (400 Mb) TX bytes:10605309 (10.9 Mb)")
5 - deve fare la differenza tra i rispettivi valori del traffico (400 - 255.5 e 10.9 - 10.1) e scriverli in due colonne distinte sul file "traffic.dat"
6 - tornare al punto 3

Il file "traffic.dat" dovrebbe risultare cosi formattato:
Code:
144.5  0.8
130.6  1.2
126.1  0.3
....


Chiaramente il plot delle due colonne mi dara' il traffico totale in & out avuto ogni 10 minuti dal momento in cui e' stato lanciato "netmonitor".

Grazie a tutti.
Back to top
View user's profile Send private message
comio
Advocate
Advocate


Joined: 03 Jul 2003
Posts: 2191
Location: Taranto

PostPosted: Fri Sep 23, 2005 1:26 pm    Post subject: Reply with quote

non me ne volere... ma la tua richiesta mi turba.

Prova a scrivere qualche riga di codice... magari ci dici cosa non ti va, e noi ti diamo una mano.

Ti consiglio di vedere: awk, cut, sed, sleep

ciao
_________________
RTFM!!!!

e

http://www.comio.it
:)
Back to top
View user's profile Send private message
IlGab
Guru
Guru


Joined: 26 Nov 2004
Posts: 486

PostPosted: Fri Sep 23, 2005 1:26 pm    Post subject: Reply with quote

Al posto che usare ifconfig non ti conviene leggere i dati da
Code:
/proc/net/dev
?
Back to top
View user's profile Send private message
xchris
Advocate
Advocate


Joined: 10 Jul 2003
Posts: 2824

PostPosted: Fri Sep 23, 2005 1:27 pm    Post subject: Reply with quote

io vorrei il porting di autocad sotto linux..
chi me lo fa? :lol:

scusa la battuta... ma comio ha ragione ;)
scrivi qc ed eventualmente ti aiutiamo :)

ciao
_________________
while True:Gentoo()
Back to top
View user's profile Send private message
ProT-0-TypE
Veteran
Veteran


Joined: 20 Dec 2003
Posts: 1624
Location: Cagliari

PostPosted: Fri Sep 23, 2005 1:29 pm    Post subject: Reply with quote

usa direttamente questo:
Code:
* net-analyzer/vnstat
     Available versions:  ~1.1 1.4 ~1.4-r1
     Installed:           1.4
     Homepage:            http://humdi.net/vnstat/
     Description:         Console-based network traffic monitor that keeps statistics of network usage

_________________
[Vuoi guadagnare navigando?]
Back to top
View user's profile Send private message
.:deadhead:.
Advocate
Advocate


Joined: 25 Nov 2003
Posts: 2963
Location: Milano, Italy

PostPosted: Fri Sep 23, 2005 1:44 pm    Post subject: Reply with quote

ho bisogno di:

latte
biscotti
letto con trapuntina
vista montagne innevate
dolce presenza sull'altra piazza del mio letto a tre piazze
il letto a piazze di cui sopra

:roll: :roll:
_________________
Proudly member of the Gentoo Documentation Project: the Italian Conspiracy ! ;)
Back to top
View user's profile Send private message
Cazzantonio
Bodhisattva
Bodhisattva


Joined: 20 Mar 2004
Posts: 4514
Location: Somewere around the world

PostPosted: Fri Sep 23, 2005 1:49 pm    Post subject: Reply with quote

Io invevce preferirei un isola caraibica alle montagne innevate e due dolci presenze al posto di una (ma rinuncerei alla trapunta)... mi accontento in ogni caso... :lol:

A parte gli scherzi ma è un progetto di script che hai intenzione di creare te oppure stai cercando uno che te lo faccia? (immagino a pagamento... in questo caso mi sa che il gentoo forum non è il posto adatto per offrire contratti di lavoro :lol: )
_________________
Any mans death diminishes me, because I am involved in Mankinde; and therefore never send to know for whom the bell tolls; It tolls for thee.
-John Donne
Back to top
View user's profile Send private message
quantumwire
Guru
Guru


Joined: 15 Oct 2003
Posts: 403
Location: Lausanne

PostPosted: Fri Sep 23, 2005 2:57 pm    Post subject: Reply with quote

Ho provato vnstat e va bene... ha comunque il problema dei 4Gb che avrei anch'io scrivendo lo script. Credo infatti sia un limite nel numero di bits devoluti all'interno del kernel per la conta del numero di bytes trasmessi e ricevuti.

Il problema e' allora come monitorare il traffico gi una rete ad 1GB dato che il transfer rate e' di circa 90/100 Mb/sec... per trasmettere/ricevere 4Gb basta meno di un minuto.

PS: Non e' un progetto... e' solo che stanno monitorando il traffico della rete che sto gestendo e devo sapere se quello che "loro" mi dicono corrisponde a verita'... e' solo un problema di tempo perche questo monitoraggio "esterno" e' partito oggi e finira' domani ed io l'ho saputo solo all'ultimo minuto... tutto qua.
Chiedo scusa se la mia richiesta per la scrittura di uno script "alla buona" e' sembrata un "fammelo tu che io non ne ho voglia mezza" quando invece era un "mi potete aiutare che sto con l'acqua alla gola ed ho bisogno di qualcosa di funzionante al volo".

FLAME ON
Questo atteggiamento mi ricorda quello che quasi tutti noi abbiamo nel guidare la nostra macchina ovvero... pensiamo che tutti gli altri guidatori siano per definizione dei "cogli__i". Immaginate la solita scena: il semaforo diventa verde e la macchina che avete davanti non parte immedatamente... e' molto piu' difficile per noi pensare che magari quella macchina possa avere un problema.
FLAME OFF


Last edited by quantumwire on Fri Sep 23, 2005 3:22 pm; edited 5 times in total
Back to top
View user's profile Send private message
comio
Advocate
Advocate


Joined: 03 Jul 2003
Posts: 2191
Location: Taranto

PostPosted: Fri Sep 23, 2005 3:00 pm    Post subject: Reply with quote

quantumwire wrote:
Ho provato vnstat e va bene... ha comunque il problema dei 4Gb che avrei anch'io scrivendo lo script. Credo infatti sia un limite nel numero di bits devoluti all'interno del kernel per la conta del numero di bytes trasmessi e ricevuti.

Il problema e' allora come monitorare il traffico gi una rete ad 1GB dato che il transfer rate e' di circa 90/100 Mb/sec... per trasmettere/ricevere 4Gb basta meno di un minuto.


pensato di usare qualche cosa di serio... tipo MRTG, ntop (ok... avevo detto serio...)?

ciao
_________________
RTFM!!!!

e

http://www.comio.it
:)
Back to top
View user's profile Send private message
akiross
Veteran
Veteran


Joined: 02 Mar 2003
Posts: 1170
Location: Mostly on google.

PostPosted: Fri Sep 23, 2005 3:01 pm    Post subject: Reply with quote

Giusto per stare in topic con la firma di comio: http://www.tldp.org/LDP/abs/html/

Ohh, non serve che ci ringrazi! Qui siamo tutti disponibili a linkare manuali da leggere.

Buon lavoro :D

EDIT: Scherzi a parte, lo scriptino l'ho capito ma non mi e' chiaro cosa c'entrano i 4gb.
_________________
Libera scienza in libero stato.
Horizon of Events
Back to top
View user's profile Send private message
makoomba
Bodhisattva
Bodhisattva


Joined: 03 Jun 2004
Posts: 1856

PostPosted: Fri Sep 23, 2005 3:05 pm    Post subject: Reply with quote

quantumwire wrote:
Il problema e' allora come monitorare il traffico gi una rete ad 1GB dato che il transfer rate e' di circa 90/100 Mb/sec... per trasmettere/ricevere 4Gb basta meno di un minuto.

aumenti la frequenza di campionamento e tieni conto dell'azzeramento del contatore
Back to top
View user's profile Send private message
ProT-0-TypE
Veteran
Veteran


Joined: 20 Dec 2003
Posts: 1624
Location: Cagliari

PostPosted: Fri Sep 23, 2005 3:05 pm    Post subject: Reply with quote

mrtg e ntop sono abbastanza diversi da quello che voleva fare lui (e hanno molte più funzioni che probabilmente non gli servono)

per quanto riguarda il problema dei 4gb... beh dovresti far andare lo script ogni minuto :D
_________________
[Vuoi guadagnare navigando?]
Back to top
View user's profile Send private message
Ic3M4n
Advocate
Advocate


Joined: 02 Nov 2004
Posts: 3489
Location: Bergamo.

PostPosted: Fri Sep 23, 2005 3:18 pm    Post subject: Reply with quote

oppure utilizzare più variabili ed aumentarne una ad una soglia dell'altra...
es banale: centinaia decine unità...
Back to top
View user's profile Send private message
randomaze
Bodhisattva
Bodhisattva


Joined: 21 Oct 2003
Posts: 9985

PostPosted: Fri Sep 23, 2005 8:10 pm    Post subject: Reply with quote

quantumwire wrote:
Questo atteggiamento mi ricorda quello che quasi tutti noi abbiamo nel guidare la nostra macchina ovvero... pensiamo che tutti gli altri guidatori siano per definizione dei "cogli__i". Immaginate la solita scena: il semaforo diventa verde e la macchina che avete davanti non parte immedatamente... e' molto piu' difficile per noi pensare che magari quella macchina possa avere un problema.


Verissimo. Sarebbe molto piú facile se il guidatore della macchina con il probema spendesse una frazione di secondo per mettere le doppie frecce.

Esattamente come una tua precisazione del tipo "purtroppo ne ho bisogno entro oggi e con le mie conoscenze di scripting non ci riuscirei" sarebbe stata gradita. Certo, non sarebbe stata in grado di assicurarti una soluzione ma sicuramente qualche acida risposta in meno la avresti avuta.
_________________
Ciao da me!
Back to top
View user's profile Send private message
xchris
Advocate
Advocate


Joined: 10 Jul 2003
Posts: 2824

PostPosted: Fri Sep 23, 2005 10:02 pm    Post subject: Reply with quote

cmq non mi pare che ci fosse tutto questo acidume...
in fin dei conti si sta scherzando :)
se in qualunque modo ti ho offeso accetta la me scuse...

era solo uno scherzo ad un post un po' insolito :)
ciao ;)
_________________
while True:Gentoo()
Back to top
View user's profile Send private message
GiRa
l33t
l33t


Joined: 07 Apr 2005
Posts: 717

PostPosted: Sat Sep 24, 2005 5:45 am    Post subject: Reply with quote

Beh: primo Come fare domande in modo intelligente.

Poi: io ti consiglio di usare iptables per fare una cosa del genere. Se hai molta molta fretta installi webmin, nella sezione net c'è il bandwidth monitor basato su iptables.


Edit: detesto il parsing di phpbb che immagina che io non chiuda i tag quando in realtà li chiudo (e li apro a mano).
Back to top
View user's profile Send private message
akiross
Veteran
Veteran


Joined: 02 Mar 2003
Posts: 1170
Location: Mostly on google.

PostPosted: Sat Sep 24, 2005 6:57 am    Post subject: Reply with quote

Sara' che ho da poco la patente (9 mesi), sara' che sono paziente, sara' che sono intelligente, ma non ho mai suonato un clacson o fatto i fari per dire a qualcuno di muoversi al semaforo (anzi, mai usati in strada se non per segnalazione :P)

Si comunque concordo col dire che potevi anche risparmiarti un atteggiamento simile. Per carita' nessuno sa tutto, pero' venire a chiedere "mi date una mano?" oppure venire a dire "fatemi questo perche' mi serve", la sostanza e' anche quella (io te lo avrei fatto in 5 minuti lo scriptino, anche volentieri), ma e' la forma che non va bene, per questo ti ho linkato l'ABS anziche' farti lo script.

@GiRa: non puoi aprirli e chiuderli con lo stesso metodo? fai prima mi sa :D

Ciauz
_________________
Libera scienza in libero stato.
Horizon of Events
Back to top
View user's profile Send private message
GiRa
l33t
l33t


Joined: 07 Apr 2005
Posts: 717

PostPosted: Sat Sep 24, 2005 7:53 am    Post subject: Reply with quote

akiross wrote:

@GiRa: non puoi aprirli e chiuderli con lo stesso metodo? fai prima mi sa :D

E' quello che faccio! Faccio tutto a mano altrimenti cerca il mouse, muovilo, fatica! :D E' phpBB che ha voglia di essere luserfriendly ;)
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum