22/01/2015

Benvenuto Banana PI

Mi rendo conto solo ora che è passato quasi un secolo da quando presentai su questo blog il mio leggendario server domestico basato su Via Epia.

Da allora la mia attenzione in questo campo è aumentata in modo esponenziale e dopo elocubrazioni varie ho varcato la soglia del mondo ARM con Raspberry PI.
Sia chiaro, considero Raspberry PI un progetto STUPENDO e RIUSCITISSIMO, sia dal punto di vista tecnico che di comunicazione, tant’è che ne ho comprati ben due e l’ultimo di questi mi sta fedelmente servendo da parecchio tempo.

Ciò nonostante le limitazioni di Raspberry PI sono palesi, tecnicamente e anche eticamente (etica informatica? Già, perchè no?).
Tecnicamente parlando il SOC di cui è dotato è parecchio datato e poco potente, ottimo per tantissime attività ma dalle performance scarse in molti campi (ad esempio come nas o backup repository, come webserver o application server).
Inoltre bisogna ammettere che il sottosistema di I/O è progettato piuttosto male, tant’è che una delle più frequenti cause di problemi è proprio il controller USB su cui ricadono sia la scheda di rete (a 100 Mbps) che le porte USB, unica connessione disponibile per storage capiente e alternativo alla scheda SD.
Io stesso sono stato costretto a pensionare il mio primo esemplare a causa del controller USB che una volta posto sotto stress disconnetteva il device USB corrispondente al disco esterno da 2.5″ dove risiedono i miei file.
Dal punto di vista etico invece non posso fare a meno di notare la stridente contraddizione di un progetto che ha fatto della filosofia Open Source la sua bandiera, ma che di fatto è fortemente “closed”, tant’è che ad oggi non sono stati resi pubblici gli schemi dell’hardware stesso.

Visto il successo di questo progetto è bastato poco perchè nascessero molte iniziative simili, alcune con tutti i requisiti tecnici per surclassare Raspberry PI (una molto interessante ma dal costo esageratamente elevato è Cubietruck di cui avevo già parlato).
Per fortuna alcune di queste si sono consolidate, hanno creato una discreta comunità di utenti e, cosa che non guasta mai, hanno proposto le loro soluzioni a prezzi accessibili; tra queste le principali sono Banana PI e le board Olimex (delle quali la più interessante ad oggi è la Lime2).

Tecnicamente si tratta di due progetti molto simili, basati entrambi su SOC ARM Cortex-A7 dual-core (Allwinner A20), 1GB di ram, controller SATA, scheda di rete gigabit ethernet e prezzo tutto sommato allineato (circa 45 euro); rispetto a Raspberry PI la potenza computazionale e le performance di I/O sono sbalorditive, e nonostante questo l’assorbimento è persino più basso.
Anche eticamente le due schede sono simili, di entrambi infatti sono disponibili i sorgenti e tutta la documentazione.

Come è intuibile dal titolo ho scelto Banana PI, ero molto incuriosito dal prodotto Olimex ma la disponibilità da Amazon mi ha fatto propendere per il concorrente; oggi poi mi è pure stato recapitato il case in plexiglass con relativo cavo SATA (con alimentazione integrata), per cui quale migliore occasione per immortalare questo magico scatolino?

A breve mi aspetta una colossale migrazione (lavorativa), appena avrò finito e sarò riuscito a tirare un po’ il fiato procederò con la migrazione (domestica) del muletto al nuovo Bananone :)

bananapi03

29/11/2014

Non è un paese per Sam

Quoto Crozza, l’Italia è un paese di bifolchi!

20/11/2014

MM3 Proxy switch

Generalmente preferisco non usare troppe estensioni sui miei browser (principalmente Firefox e Chrome) per non ritrovarmi i browser “seduti” oppure per rendere un eventuali disinstallazione e reinstallazione snella e veloce (guardacaso mi è successo pochi giorni fa dopo l’ennesimo upgrade di Firefox).

Une estensione di Firefox a cui però non riesco proprio a rinunciare è MM3 Proxy switch, che come suggerisce il nome serve ad attivare, disattivare o cambiare impostazioni del proxy in modo pratico e veloce.
Esistono parecchie altre estensioni che fanno tutto questo, ma tra tutte quelle che ho provato questa mi è sempre sembrata la più leggera e semplice da usare, riassumendo: un click per attivare il proxy, un click per disattivare il proxy, una dropdown per selezionare i vari profili e un file di configurazione semplice da editare al volo.

Essendo una estensione di Firefox utilizza la stessa sintassi per definire le eventuali esclusioni di indirizzi, sottoreti, hostname o domini, se doveste avere dubbi trovate una veloce guida a questo link.

Come dicevo poco sopra la sintassi della configurazione è decisamente semplice, ogni profilo è delimitato da parentesi quadre, è possibile definire un proxy differente a seconda del protocollo utilizzato (http, ftp, ssl o socks) oppure per tutti i protocolli (all) e infine definire le esclusioni (noProxy).

[Proxy1
  all=10.0.0.1:8080
  noProxy=127.0.0.1, 10.0.0.0/8, 81.82.83.0/24, dominio.tld, ced.azienda.local
  clear=cache
]
[Proxy2
  http=10.0.0.2:3128
  http=10.0.0.2:3128
  ftp=10.0.0.3:80
  noProxy=127.0.0.1, 10.0.0.0/8, 81.82.83.0/24, dominio.tld, ced.azienda.local
  clear=cache 
]
[SocksSSH
   socks=127.0.0.1:777
   config:network.proxy.socks_remote_dns=true
   noProxy=127.0.0.1, 192.168.0.0/24, domain.external.local
   clear=cache
]

Ottimo software imho, l’unica miglioria possibile potrebbe essere quella di aggiungere una direttiva di configurazione che permetta di lanciare uno script al cambio di profilo, pensiamo ad esempio all’avvio di una connessione ssh che incapsuli il traffico del proxy (via http o socks, vedi ad esempio il profilo SocksSSH di esempio con proxy socks in ascolto sulla porta 777) .

15/11/2014

E.R. – Medici in prima linea

erAmo le serie tv, le amo da quando si sono sganciate dal classico modello anni ’80 con puntate tutte uguali, le guardo a prescindere dai difetti e dalle incongruenze spesso affezionandomi ai personaggio e ignorando le incongruenze o i voli pindarici degli scenaggiatori.

Ne ho viste molte, diverse mi sono piaciute, poche mi hanno deluso profondamente, di certo però le mie preferite sono X-Files, Star Trek Voyager e ER medici in prima linea.
Oggi ho terminato di vedere la quindicesima e ultima stagione di ER, l’unica serie tv che abbia visto per intero ben due volte.

Ricordo con piacere gli anni in cui la serie veniva trasmessa in prima serata su RAI2, mi isolavo dal mondo, scappavo dal trambusto di casa rifugiandomi nell’appartamento di mia nonna e mi godevo le canoniche due puntate tutte l’un fiato per rimanere in trepidante attesa per i successivi 7 giorni.
Era un rito, era un piacere, la trama, l’ambientazione così lontana da tutti quei cloni con la puzza sotto il naso come il celebre e patetico Dr. House o Grey’s anatomy, i personaggi così vivi e reali, tragici nelle loro vicende personali e legati tra loro quel tanto da creare vicende interessanti ma non tanto da essere asfissianti come in una soap opera.

Qualche mese fa facendo zapping sono incappato su non so quale canale dove stavano trasmettendo una puntata delle prime stagioni, e li è scattata di nuovo la scintilla, ho affilato la carta di credito, mi sono fatto spedire tutti i cofanetti dvd e me le sono sparate tutte, tutti i 331 episodi uno dietro l’altro senza sosta e con grande, grande piacere.
Credo che questo sia sufficiente per dimostrare il mio affetto nei confronti della creatura di Michael Crichton, ragion per cui ho deciso di farne un mio personalissimo My2Cents

ATTENZIONE, da qui in avanti seguono spoiler senza ritegno!

Prosegui con la lettura »

05/11/2014

Export Oracle 9i

Trovandomi spesso a lavorare con vecchi catorci non è infrequente che abbia a che fare con vecchi database Oracle 9i a cui puntalmente manca storage (o quantomeno non avanza mai…).
Spesso poi si tratta di database che girano in modalità no archivelog (e non sia mai che si modifichi una virgola di un servizio che funziona, nemmeno quando può migliorare sensibilmente la vita e la manutenibilità del servizio… :\ ) e su cui l’unica forma di backup è la classica export omnicomprensiva (tanto poi in caso di disastro c’è sempre il dba pirla che ricostruisce tutto e importa il dump…).

A questo aggiungete che solo da Oracle 10g è possibile effettuare export compresse mediante data pump, ecco quindi che si rende necessario adottare i cosidetti “accrocchi con gli stecchini e nastro adesivo”, insomma una sorta di puntata di MacGyver in salsa Oracle…

Ecco quindi la soluzione, utilizzare il buon vecchio mknod per creare una pipe in cui infilare l’output del dump, redirigendo l’output su gzip, redirigendo l’output dello stesso su filesystem sottoforma di file compresso.
Detto così sembra complicato, in realtà si tratta del solito gioco di scatole cinesi e redirezioni di output (non di uno stream di testo ma di binari, la sostanza non cambia), quello che mi sono sempre chiesto è perchè Oracle non abbia mai rilasciato un piccolo aggiornamento per fare quello che qualsiasi server unix like può fare dalla notte dei tempi… e Mr Ellison non mi venga a dire che gli mancano le risorse…

Ovviamente il suddetto script bash funziona esclusivamente su GNU/Linux o sistemi operativi unix like, se usate Oracle su Windows non vi resta che cospargevi il capo di cenere, attaccarvi al tram e urlare in curva :D

export ORACLE_SID=<SID DATABASE>
dstr=$(date '+%Y%m%d-%H%M%S')
exp_dir=<DIRECTORY DESTINAZIONE EXPORT>
pfile=$exp_dir/p$dstr
dmptempl=$exp_dir/${ORACLE_SID}_
dmpfile=${dmptempl}$dstr.dmp.gz
logfile=${dmptempl}$dstr.log
$(which mknod) $pfile p
cat $pfile | $(which gzip) -6 -c > $dmpfile &
exp <UTENTE>/<PASSWORD> file=$pfile full=y direct=y consistent=y \
recordlength=65535 buffer=20000000 log=$logfile statistics=none
rm -f $pfile

« Post precedenti