Durata delle connessioni

Col seguente comando si può ottenere un grafico della durata delle connessioni ad Internet effettuate con pppd (dialup e adsl con pppoe o pppoa):

zcat /var/log/syslog*gz | cat /var/log/syslog /var/log/syslog.0 - | grep "Connect time" | sort | cut -f8 -d\ | nl | xgraph

Ci vuole il comando xgraph ed i permessi per leggere i file di log.

Installare un desktop Debian

Visto che mi sto ritrovando ad installare dei desktop Debian uno dopo l’altro, ecco una check list delle cose da fare per farlo velocemente e bene:

  1. Far partire l’installazione con linux26
  2. Non installare pacchetti aggiuntivi dal task manager
  3. Modificare le sorgenti dei pacchetti da stable a testing (per avere le chiavette usb che appaiono sul desktop)
  4. Aggiungere i pacchetti di Marillat: deb ftp://ftp.nerim.net/debian-marillat/ etch main
  5. Aggiornare il kernel all’ultimo disponibile in testing, riavviare e rimuovere il vecchio kernel
  6. Fare un upgrade del sistema a testing
  7. Installare gnome, kde, firefox, thunderbird, x-window-system-core, acroread, mplayer, flashplayer-mozilla
  8. Tornare il giorno dopo se la connessione è lenta, dopo venti minuti se la connessione è veloce
  9. Creare tutti gli utenti necessari e consegnare il sistema

Memorie flash

Sulla mailing list linux-kernel si è formato un lungo therad molto interessante sulle memorie flash. Ci sono sia informazioni sull’interazione tra Linux e questo tipo di dispositivi, sugli ultimi algoritmi implementati nel firmware per uniformare il consumo delle memorie e consigli spiccioli su come recuperare una flash che sia diventata illegibile in seguito ad una mancanza di corrente.
Ecco il link: http://lkml.org/lkml/2005/5/13/144

Penultimo esame!

Sul fronte tesi ho dovuto fare una pausa per dare un esame, ora ne manca uno solo che conto di dare verso giugno.
Gli ultimi giorni prima di iniziare a studiare ho cercato delle schede wireless PCMCIA, con due connettori per le antenne, ben supportate da Linux e in grado di funzionare in modalità Access Point. Il risultato della ricerca è che solo i driver hostap possono fare da AP e le uniche schede supportate da quel driver sono quelle basate su chipset Prism. Alla fine ci siamo diretti verso delle schede della Senao che dovrebbero avere tutto quello che ci serve. Ne abbiamo ordinata una come campione, appena arriva la proviamo.
La modalità AP ci serve per due motivi, come rete di sicurezza nel caso il routing dinamico non abbia prestazioni sufficienti e come come esperimenti per vedere se è possibile usare dei mini pc linux come access point invece di hardware apposito, più costoso e delicato.

Galleria fotografica

Ho appena finito di uploadare la nuova galleria fotografica, l’ho scritta in questi ultimi giorni, dopo essermi stufato di quella vecchia. Ho speso parecchio tempo a costruire un buon formato sul disco per l’organizzazione delle foto e alla fine sono arrivato ad una doppia struttura. Le foto sono organizzate in directory per anno e mese, così se decido di cambiare la grafica o la categoria non perdo i bookmark e i motori di ricerca. L’organizzazione sta in un albero di directory separato, con una serie di file di testo che elencano le fotografie appartenenti a ciascuna suddivisione.
Ho usato solo XHTML e CSS, ma non ho ancora verificato se valida sul sito del w3c. Devo anche rifare tutte le thumbnail, in modo che abbiano le stesse dimensioni.

Acrobat Reader 7 per Linux

La Adobe ha finalmente aggiornato la versione di acrobat reader per Linux, facendo un salto di qualità da paura. Il download è grosso (40Mbyte e più), ma ne vale decisamente la pena. L’evento è passato in sordina, non so il motivo, forse perché non si tratta di software open source.
A me non importa molto, ho sempre usato acroread per vedere i pdf su Linux, visto che è l’unico che si beve qualunque pdf visualizzandolo sempre in modo decente. Probabilmente lo uso per lo stesso motivo per cui Torvalds usa Bitkeeper: funziona e non ci sono alternative OS allo stesso livello.
Grazie Adobe, di acroread 5 non ne potevamo più.

Subversion online!

Per una volta seguendo attentamente le istruzioni sono riuscito ad ottenere il risultato alla prima! Complimenti davvero agli autori dell’SVN Red Book, è fatto veramente bene.

Se volete accedere al repository del driver sis900, l’indirizzo è questo:
http://teg.homeunix.org/svn/sis900

Per ora è l’unico, ma presto spero di metterne su un altro. Ovviamente è in sola lettura, ci si può andare col browser (e si vede solo l’ultima versione) o col client svn (e si può accedere a tutta la storia).
Ho visto che esistono anche dei fogli XSLT per personalizzare l’aspetto delle pagine generate da mod_dav_svn, ma ho visto anche che l’unico browser col supporto in buon stato è Mozilla/Firefox, e io che uso Safari sarei tagliato fuori completamente (si vede solo una pagina bianca).
Quindi finché Safari non ha il supporto, niente XSLT.

La giornata del sistemista

Oggi ho passato la giornata a a giocare al piccolo sistemista. Tenendo iTunes in background con una radio online di sola musica anni ’80 e lavorando via ssh sul server casalingo ho giocato un po’ con tethereal e subversion, ottenendo delle cose abbastanza utili.

Stamattina tethereal. Fino ad oggi usavo tcpdump e uno scriptino bash per recuperare le informazioni su certi pacchetti che mi interessano, però la soluzione non era ottimale perché catturava poche informazioni su troppi pacchetti, dato che tcpdump non ha filtri per protocolli ad alto livello.
Con tethereal posso catturare solo i pacchetti che mi interessano in un certo periodo di tempo e metterne il dump in un file (in formato pcap). Uno script chiamato da cron, ad intervalli regolari, uccide il processo di cattura, esegue di nuovo tethereal sul file di cattura con parametri differenti (per fargli risolvere gli indirizzi IP) passando l’output ad un programmino in Python per estrarre solo le informazioni interessanti. Alla fine mi manda il tutto via mail e rimette in esecuzione il processo di cattura su un file vuoto. Quei simpaticoni di Echelon a confronto sono dei pivellini.

Il pomeriggio, invece, l’ho passato a litigarmi con subversion, apache2, mod_ssl e mod_auth_pam, però alla fine ne ho avuto ragione…
La configurazione che mi ero posto come obiettivo era:

  1. area pubblica in sola lettura
  2. autenticazione per poter modificare il repository

Avevo già l’autenticazione grazie a svn+ssh, ma dove sto facendo la tesi escono su Internet solo con un proxy (anche se ogni tanto si esce tranquilli con un NAT, dipende dalle maree e da certi riti sull’altare che hanno in terrazzo, credo) e volevo anche poter fornire accesso al ‘grande pubblico’, in particolare per il driver sis900.

L’unico tipo di autenticazione su http che funziona con mod_auth_pam (non volevo avere ancora un’altra password diversa) è ‘Basic’, con la password che viaggia in chiaro per mezzo mondo. La soluzione è stata usare mod_ssl. Non ci sono alternative se non criptare l’intera connessione, anche se l’unica cosa che vuoi tenere segreta è la password. Bah.

Mi sono creato la mia CA fasulla e l’ho usata per firmare il mio certificato fasullo anche lui e ora ho la mia brava connessione su https, alla faccia di tutti quelli che dicono che non si può avere SSL insieme ai virtual host di Apache (certo, non si può se si fanno le cose sul serio, con dei certificati veri, ma se uno fa finta di non vedere un paio di warning all’avvio di apache, problemi non ce ne sono…). Ora su https magari ci metto pure su un webmail, così posso leggermi la posta anche quando il sistemista in ditta si dimentica di fare i sacrifici agli dei.

Alla fine pure mod_auth_pam ha iniziato a funzionare senza particolari problemi (occhio che su Debian bisogna attivarlo con “AuthPAM_Enabled on”, anche se nella documentazione sul sito dice che quello è il valore di default).

Ora devo solo attivare un po’ di controllo di accesso sui singoli repository, attraverso un altro modulo dav_svn_<qualcosa>.

Appena c’è qualche cosa di significativo visibile all’esterno posto un link.

Tesi 2, la vendetta

Dopo aver abbandonato una tesi sulla bioinformatica a favore di un’argomento più promettente, in particolare quanto a prospettive lavorative, sembra che finalmente lunedì potrò iniziare.
Dovrò lavorare allo sviluppo di un sistema di comunicazioni wireless con routing dinamico e idealmente senza infrastruttura fissa da utilizzare in ambiente portuale.
Il tutto dovrebbe offrire un’interfaccia generica per permettere a qualunque tipo di applicazione di lavorare in modo trasparente, si va dal semplice scambio di dati sulle merci spostate al VoIP. Ovviamente ci sono anche degli studi di affidabilità e velocità da fare sugli algoritmi attualmente esistenti.
Il tutto si baserà su Linux, che è il sistema che già usano nella ditta presso cui vado a fare il tirocinio.
La mia intenzione è di tenere qui un diario degli avanzamenti, vedremo se ciò mi sarà possibile…