Rsync: backup su Mac Os X

Rsync è una utility standard del mondo unix per sincronizzare tra loro due cartelle, sia in locale che in remoto (ad esempio via SSH). Rsync effettua una copia incrementale: se lancio una seconda volta il comando di sincronizzazione, rsync invierà solo i file che risultano modificati rispetto alla sincronizzazione precedente. Questo lo rende ottimo per fare copie di backup di cartelle di lavoro: io lo uso per tenere su una chiavetta USB la cartella contenente i miei lavori per l’università (una copia in più non fa mai male!).

Per usarlo su Mac Os X, bisogna però tenere conto di un paio di cosette che ho scoperto dopo noiose ricerche e quindi pubblico a beneficio dei miei 2 lettori:

1) Rsync è compreso nell’installazione standard di Mac Os X Snow Leopard (eh, lo so, ma il mio processore non è supportato da Lion quindi non ho informazioni più fresche); sfortunatamente è una versione giurassica. Si può risolvere aggiornando con MacPorts: supponendo che lo abbiate installato basta lanciare un comando:

sudo port install rsync

Una volta installato, però, non andrà a sovrascrivere la versione di rsync di default. Dovete quindi eseguirla andando a inserire il path completo in cui risulta installata la nuova versione:

/opt/local/bin/rsync

Per verificare la versione effettiva potete usare l’opzione –version

/opt/local/bin/rsync --version

2) Se volete essere sicuri di poter leggere i vostri backup con qualunque sistema operativo (cosa senz’altro desiderabile) conviene utilizzare una normalissima chiavetta usb formattata in FAT32. Questo però nasconde un’insidia: FAT32 gestisce le date a intervalli di 2 secondi.. se considerate che rsync va a vedere la data di modifica di un file per capire se copiarlo o meno, capirete che in assenza di provvedimenti ogni volta il backup sarà di TUTTI i file.. scomodo.. per rimediare si usa l’opzione

--modify-window=1

che lascia un margine di un secondo sulla valutazione del tempo di ultima modifica del file..

Concludendo, questa è la riga che uso per fare un backup dei miei dati (da una cartella /Users/mario/Documents/roba_di_scuola/ a una chiavetta con nome di partizione BACKUPPO); è un’unica riga, io l’ho separata per renderla più leggibile!

/opt/local/bin/rsync -aEv --modify-window=1 --progress
   /Users/mario/Documents/roba_di_scuola/ 
   /Volumes/BACKUPPO/roba_di_scuola/

Spero che vi possa essere d’aiuto, saluti a tutti!

Pubblicato in Uncategorized | Contrassegnato , , , | Lascia un commento

mvregen: un tool per rigenerare link MegaVideo

Ma quanto è bello MegaVideo? Per chi non lo sapesse, si tratta di una piattaforma per l’hosting di file video. Un utente si registra e carica i propri video su questo sito, e in cambio riceve un codice: usando quel codice un altro utente qualunque può vedere il suddetto video. Ovviamente, lo scopo nascosto (neanche troppo) della piattaforma è l’hosting di materiale protetto da copyright, ma si possono trovare anche cose legali.

Il problema è che, proprio per proteggere i contenuti (specie quelli illegali), non è possibile eseguire alcun tipo di ricerca sul sito: per vedere un video bisogna conoscerne il codice. Il codice è per intenderci quello nell’URL:

http://www.megavideo.com/?v=113GXHGK

E purtroppo i codici vengono spesso invalidati (o semplicemente scadono). Quindi capita molto spesso di trovarsi tra le mani con un elenco di URL che, una volta cliccati, puntano inesorabilmente a qualcosa del genere:

Per fortuna esiste la soluzione: in realtà, quando un file viene caricato su MegaVideo, ne vengono fatte più copie sui diversi server (o almeno così mi risulta), per meglio gestire il traffico sulla piattaforma. Quindi, per ogni URL cancellato spesso ne esistono altri che puntano allo stesso file. Si possono trovare facendo una ricerca (detta curiosamente “rigenerazione”) su certi siti specializzati, come ad esempio regen.megastreaming.org. Si va sul sito, si inserisce l’URL, si clicca, si aspetta, si dribbla la pubblicità, si ignorano i popup e forse alla fine si arriva al risultato (il risultato presentato in realtà mostra il link megavideo ma se cliccato porta a un servizio a pagamento, quindi bisogna pure fare il copia&incolla dell’url). Insomma, un pò lungo se uno si vuole rigenerare una lista completa di link..

E in questo punto si colloca mvregen. Si tratta di una simpatica utility in Python che si occupa di tutti i task noiosi relativi alla rigenerazione dei link MegaVideo. E’ sufficiente passare il codice da rigenerare da riga di comando (opzione -c):

./mvregen.py -c XXXXXXXX

oppure direttamente con l’url usando l’opzione -u:

./mvregen.py -u http://www.megavideo.com/v=XXXXXXXX

o addirittura si può passare un intero file esterno con un link per ogni riga, per rigenerare tutta una serie di link in un unico comando (vengono ignorate le linee vuote e quelle di commento, ovvero che iniziano con un #. Consiglio di mettere un commento prima di ogni link, poichè il commento viene stampato nell’output e aiuta a riconoscere il link rigenerato).

./mvregen.py -f miofile.txt

L’output (solo i link rigenerati più i commanti) può essere anche salvato su un file di testo, con l’opzione -o, o addirittura in formato HTML (per avere i link già pronti a essere cliccabili!), con l’opzione -t. Ad esempio, se ho un file di link megavideo non funzionanti chiamato link.txt e voglio creare un file HTML con i link rigenerati, basta usare:

./mvregen.py -f link.txt -t link.html

Per ulteriori informazioni è sufficiente lanciare il programma con l’opzione -h per leggere l’help online. Può anche essere interessante utilizzare l’opzione -v (verbose) per seguire i passaggi che il software esegue nel rigenerare i link.

Il tool, come dicevo, è scritto in Python, quindi si suppone che funzioni su qualunque piattaforma moderna. Io l’ho provato su MacOsX e Linux e funziona perfettamente. Lo sviluppo avviene su GitHub, da cui lo potete scaricare (c’è un pulsante “Downloads” da qualche parte). Ovviamente è rilasciato open source (sotto licenza MIT).

Spero possa essere utile a qualcuno. Se è così mi aspetto come minimo un commento 🙂

Ciao!

 

Pubblicato in Uncategorized | Contrassegnato , , , , | 6 commenti

Steam Locomotive

Il più inutile tra i programmi inutili in circolazione per Linux. Quante volte nella vostra vita di utenti Linux (o Mac Os) usate il comando LS? E quante volte, nella fretta, vi capita di sbagliare e scrivete invece SL? Normalmente il sistema vi risponde con un tristissimo:

-bash: sl: command not found

Da adesso possiamo unire l’utile al dilettevole con un simpatico programma che, rispondendo al nome di SL “Steam Locomotive”, disegna sul terminale… indovinate cosa…

Un simpatico modo per spezzare un pò la monotonia delle lunghe ore passate a compilare roba con nomi strani.. Il programmino è scritto in C, è stato realizzato da un tal Masashi Toyoda, e potete scaricare il sorgente a questo indirizzo. Una volta scompattato l’archivio TAR (qualcosa del tipo tar -xf sl.tar) basta dare il comando make per compilare il tutto. A questo punto è sufficiente copiare il file eseguibile in “/usr/local/bin” per averlo sempre a disposizione!

Ciao a tutti!

Pubblicato in Uncategorized | Contrassegnato , , | Lascia un commento

Convertire documenti LaTeX in Word (pfff..)

Negli scorsi giorni mi sono trovato ad affrontare una piccola tragedia personale, dalla quale sono riuscito a risollevarmi in modo abbastanza elegante.. vi descrivo la scena..

Supponete di aver passato gli ultimi due mesi della vostra vita a fare ricerche per un articolo.. e aver scritto quell’articolo come Dio comanda, quindi utilizzando LaTeX, onnipresente sistema di composizione tipografica orribile per i neofiti ma fantastico per i praticanti assidui come il sottoscritto. Supponete di aver utilizzato il suddetto sistema come degli utilizzatori scafati, sfruttandone le impareggiabili caratteristiche: posizionamento automatico delle immagini, impaginazione dinamica, riferimenti incrociati a immagini e capitoli, indici, sottoindici, bibliografia, librerie esterne per piazzare le immagini nello scorrimento del testo o per visualizzare listati di codice in maniera ottimale.. cose così.

Bello bello, direte voi.. risultato impeccabile.. poi mandate il tutto all’editor in chief della rivista che avete scelto per la pubblicazione, e cosa scoprite? Cosa scoprite? Scoprite che il suddetto editor in chief vuole l’articolo in M$merdaWord!!!!

Silenzio….

Dopo il dolore iniziale, beh, pota, mica posso buttare via tutto, no? All’inizio si riflette se vale la pena andare di copia&incolla, ma vi garantisco che è umanamente impossibile.. ho lavorato un’ora e ho ricostruito 3 pagine, tra immagini, riferimenti, didascalie e parole in corsivo da cercare una a una.. e ne devo mettere assieme 40.. nonono..

Poi per fortuna ho provato latex2rtf. Si tratta di un programmino geniale che converte file latex in RTF, che poi è facilmente aperto in Word. Ovviamente non può fare miracoli: supporta solo parte delle funzioni latex e nessuna libreria esterna.. ho dovuto modificare il sorgente e togliere alcune funzioni e classi personalizzate. Ma vi garantisco che il risultato è comunque molto, molto incoraggiante, ed è stato un grandioso punto di partenza per procedere poi alla sistemazione (controllare tutto, parola per parola, non si sa mai.. ogni tanto qualche erroruccio capita). Però niente male.

Ha funzionato senza problemi sul Mac. Mi è bastato scaricare i sorgenti dal sito (http://latex2rtf.sourceforge.net/), scompattarli e dargli un bel make seguito da un sudo make install. Bisogna poi avere pronto il file latex già compilato (in modo da avere i file temporanei già pronti). Compilatelo un paio di volte con il vostro sistema latex preferito per essere sicuri (non dimenticate il bibtex se volete anche una bibliografia). A quel punto basta lanciare:

latex2rtf nomefile

dove nomefile sarebbe il nomefile.tex che contiene il sorgente. Ed ecco pronto il file in RTF, pronto per essere aperto in Word! Fate attenzione alla bibliografia (la mia l’ha un pò incasinata) e controllate bene le didascalie delle foto, e che ci siano tutte le immagini.. E a quel punto siamo salvi, e ci siamo risparmiati una settimana di fatica e bestemmioni.

Ciao!

Pubblicato in Uncategorized | Contrassegnato , , | 5 commenti

iPhone Backup Analyzer

Annuncio il rilascio sotto licenza open source di “iPhone Backup Analyzer”, ultimo ritrovato nel campo dell’analisi dei dati di backup dei dispositivi Apple equipaggiati con iOS (iPhone, iPad, iPod touch).

Come forse molti di voi sanno, quando il dispositivo viene sincronizzato con iTunes, questi esegue un backup completo di tutti i dati nel dispositivo stesso e li salva in una specifica cartella sul disco del computer. Con l’iPBA è possibile esplorare il contenuto di questa cartella alla ricerca di informazioni interessanti.

Il software rappresenta una opportunità interessante sia per gli smanettoni che vogliono sapere cosa si nasconde sul suo computer sia per coloro che desiderano recuperare dati da vecchi backup o semplicemente un sistema comodo per sfogliare il contenuto e averlo a disposizione sul proprio pc (parliamo, tra le altre cose, di tutto l’archivio degli sms o della ribrica telefonica, quindi mica paglia 🙂 ). Ovviamente funziona anche sotto Linux (dovete avere comunque iTunes su un Mac o Windows per eseguire il backup, poi lo potete copiare su una macchina Linux e da lì utilizzare il programma).

Per ulteriori informazioni e per scaricare il programma potete andare all’indirizzo: http://ipbackupanalyzer.com

Il software è sperimentale e in fase di continuo sviluppo, ma perfettamente utilizzabile. Ovviamente sono sempre ben accetti commenti, bug report o offerte di collaborazione (è open source, fatevi sotto!). A quanto mi risulta non esiste nulla di paragonabile a iPBA nel mondo open source, quindi non sarebbe male farlo crescere fino a diventare un punto di riferimento per l’analisi (forense e non) di iDispositivi in ambito open source…

Ciao a tutti!

Pubblicato in Uncategorized | Contrassegnato , , , , , , | Lascia un commento

Ecco a voi Ganascina

Ecco a voi Ganascina, la mia ultima acquisizione in campo naturalistico.. l’ho presa settimana scorsa a Genova all’Euroflora 2011, e incredibilmente è ancora viva.. Dato che non so quanto potrà sopravvivere in mano mia ne pubblico una foto a futura memoria 🙂

Ganascina

Pubblicato in Uncategorized | Contrassegnato , | 3 commenti

Airport – utility Mac Os X per analisi delle reti wireless

Da qualche parte, nascosta tra le cartelle dell’installazione standard di Mac Os X, c’è una simpatica utility richiamabile da riga di comando che permette di fare alcune cose interessanti con la propria wireless: vedere/modificare i parametri della propria connessione, fare uno scan delle reti e mostrarne SNR e algoritmo di protezione, o addirittura fare packet sniffing. Tale utility si chiama Airport ed è nascosta qui:

/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport

Si, è abbastanza scomodo da ricordare, quindi possiamo farne un simpatico link simbolico in usr/bin (il seguente comando va scritto tutto di fila, senza andare a capo! è un comando unico!):

sudo ln -s /System/Library/PrivateFrameworks/Apple80211.framework
/Versions/Current/Resources/airport /usr/bin/airport

A questo punto possiamo richiamarla semplicemente scrivendo “airport” dalla riga di comando. Ma cosa ci possiamo fare? Innanzitutto lanciando l’utility senza parametri possiamo vedere una sorta di help.

Con il comando

airport en1 scan

possiamo avere una lista delle reti visibili nella zona, corredata di potenza del segnale e tipo di protezione. Con il comando

airport -I

possiamo vedere le caratteristiche della rete a cui siamo connessi. E per finire, con il comando

sudo airport en1 sniff 6

il sistema crea un file airportSniffXXXXXX.cap in /tmp in cui sniffa tutti i pacchetti che passano sul canale 6. Questo file può essere comodamente dato in pasto a programmi tipo Wireshark per l’analisi dei pacchetti.

Ciao a tutti!

 

 

Pubblicato in Uncategorized | Contrassegnato , , , , | Lascia un commento

Quick Bash Tip: come estrarre nome file ed estensione da un path

Continuano le piccole note di bash. Stavolta vediamo un paio di facili comandi per estrarre nome file ed estensione da un path. Inserisco il tutto in un piccolo script che analizza tutti i file nella directory corrente e ne stampa prima il nome e poi l’estensione.

for file in $(ls) ; do
  filename=${file##*/}
  basename=${filename%\.*}
  extension=${filename##*.}
  echo Nome: ${basename}, estensione: ${extension}
done

Ulteriori informazioni (per i non deboli di cuore) a questo indirizzo.

Pubblicato in Uncategorized | Contrassegnato , , , | 4 commenti

Quick tip: come creare un PDF da riga di comando a partire da un TXT

Piccolo suggerimento su un modo rapido per creare un pdf a partire da un file di testo con un unico comando da terminale (come sempre vale per Linux e Mac Os X). Supponiamo di voler convertire un file di nome “prova”:

cat prova | enscript -p - | ps2pdf - file.pdf

La prima parte apre il file e ne passa il contenuto alla seconda parte.

Nella seconda parte il programma “enscript” trasforma quanto ricevuto in formato PostScript e lo passa alla terza parte. Da notare che si deve usare l’opzione “-p” seguita da uno spazio e un altro trattino, per dire che il postscript deve essere inviato allo stdout (altrimenti viene inviato alla stampante di sistema).

Nella terza parte il programma “ps2pdf” trasforma quanto ricevuto nel file “file.pdf”.

Facile e indolore, ma lo scrivo perchè ci ho messo tipo mezz’ora a scoprirlo e magari in questo modo risparmio un pò di fastidio a qualcun altro.

Pubblicato in Uncategorized | Contrassegnato , , , , , | Lascia un commento

Quick tip: come splittare un file in più parti

Piccolo suggerimento su come suddividere un file in più parti di dimensione nota: il comando SPLIT, disponibile su Linux e Mac Os X.

split -b DIM FILE PREFISSO

l’opzione -b serve a specificare la dimensione dei componenti da creare (in byte). Si possono usare anche i suffissi b (512 byte), k (1 kb) e m (1 Mb). Ad  esempio, se scrivo “-s 4k” significa che voglio frammenti di 4 kbyte l’uno.

FILE è il nome del file da scomporre

PREFISSO è il prefisso con il quale verranno chiamati i frammenti creati, che di default saranno una cosa del tipo PREFISSOaa, PREFISSO ab, PREFISSOac, PREFISSOad… ecc… volendo è possibile intervenire con le opzioni -a (imposta la lunghezza del suffisso, che di default è 2) e -d (suffissi numerici invece che letterali).

Esempio: mi serve dividere il file bob.dat in frammenti di 4Kb da dare in pasto a un altro programma per un’analisi statistica:

split -s 4k bob.dat bob

I frammenti si chiameranno bobaa, bobab, bobac, bobad, ….. e così via fino alla fine del file (o fino a bobzz, dopodichè lo split si blocca perchè ha finito lo spazio dei nomi; si può ovviare con l’opzione -a).

Per ulteriori informazioni:

split --help

Saluti!

Pubblicato in Uncategorized | Contrassegnato , , , , | Lascia un commento