martedì 28 ottobre 2008

apt-get update - Errore NO_PUBKEY

Debian GNU/Linux (e derivate) contempla un potente sistema di gestione del software che ci consente con un click, di installare migliaia di applicazioni, in un attimo e senza nessuna perdita di tempo... se poi vogliamo aumentare la disponibilità di programmi installabili da apt... niente di più semplice: aggiungiamo i relativi repository nella nostra sources.list.
L'unico problema è che per ogni repository aggiunto, dobbiamo fornire anche la relativa chiave pubblica... ed anche in questo caso la cosa si risolve in un batter d'occhio, quindi se quando eseguiamo apt-get update, il comando ci restituisce a video un errore del tipo:

W:GPG error:http://www.backports.org sarge-backports Release: Le seguenti firme non sono state verificate perché la chiave pubblica non è disponibile: NO_PUBKEY EA8E8B2116BA136C

significa che dobbiamo esportare ed aggiungere la chiave dei backports alla nostra lista...
per farlo,
eseguiamo da root i seguenti comandi:

# gpg --keyserver subkeys.pgp.net --recv-key
EA8E8B2116BA136C [invio]
# gpg --armor --export EA8E8B2116BA136C | apt-key add - [invio]

Ovviamente sarà necessario adattare i comandi al messaggio d'errore ricevuto...
un altro messaggio frequente è questo:

W: GPG error: http://ftp.it.debian.org unstable Release: Le seguenti firme non sono state verificate perchè la chiave pubblica non è disponibile: NO_PUBKEY A70DAF536070D3A1

ed in questo caso, i comandi opportuni saranno:

# gpg --recv-key --keyserver wwwkeys.eu.pgp.net A70DAF536070D3A1 [invio]
# gpg --export
A70DAF536070D3A1| apt-key add - [invio]

and so on!


Bene, adesso eseguendo apt-get update, non riceveremo più quel fastidioso messaggio di errore.

sabato 18 ottobre 2008

Estrarre fotogrammi da un video

Oggi vedremo come usare Linux e la sua famosa "riga di comando" per...
estrarre tutti i fotogrammi di un video, in modo da ottenere tante immagini jpg.
In considerazione del fatto che ogni secondo di video corrisponde mediamente a 25 fotogrammi, è raccomandabile eseguire il comando di estrazione all'interno di una cartella apposita, altrimenti rischieremmo di invadere la cartella home con migliaia di file jpg.

Per raggiungere lo scopo ci serviremo di mplayer:

1) creiamo una cartella di lavoro: mkdir fotogrammi [invio]
2) entriamoci: cd fotogrammi [invio]
3) mettiamo il video dentro la nuova cartella: mv tuo_video.avi fotogrammi [invio]
4) ed ora: mplayer tuo_video.avi -vo jpeg -nosound [invio]
5) quando mplayer avrà finito il lavoro, ci ritroveremo una cartella piena di immagini jpg

Ultima raccomandazione: nel caso di filmati molto lunghi, bisogna ritagliare la parte di video realmente necessaria, prima dell'estrazione dei fotogrammi.

venerdì 10 ottobre 2008

Dividere un file in parti più piccole

Con Linux è possibile dividere un file di grandi dimensioni in tanti file di piccola dimensione, in modo semplice e veloce. Le occasioni in cui si potrebbe aver bisogno di far ciò, sono molteplici... per esempio potremmo aver bisogno di copiare un brano di 4MB, ma abbiamo a disposizione solo dei vecchi floppy, oppure potremmo dividere un file contenente un codice segreto in 4 parti e dare un file parziale a 4 persone diverse, in modo che nessuno possa usare la combinazione segreta senza la presenza degli altri membri.
Per raggiungere lo scopo utilizzeremo il comando split in questo modo:

$ split -b 1m file_grande.ogg file_parziale.ogg. [invio]

Con l'opzione -b 1m indichiamo a split di dividere il file in 4 piccoli file da 1Mb, mentre file_grande.ogg è il file audio originale da 4Mb e per finire, file_parziale.ogg. è un nome arbitrario, che assegniamo come prefisso dei 4 file piccoli (fate attenzione a specificare il titolo appropriato, l'estensione corretta del formato ed il punto finale... poi capirete il perché).
Quindi ora, nella cartella corrente avremo questa situazione:

file_grande.ogg
file_parziale.ogg.aa
file_parziale.ogg.ab
file_parziale.ogg.ac
file_parziale.ogg.ad

Appena avremo la necessità di ricompattare il file originale, sarà sufficiente usare il comando cat in questo modo:

$ cat file_parziale.ogg.* > file_originale.ogg [invio]

Ora che avete appreso come spezzettare un file a vostro piacimento, divertitevi pure... ma fate attenzione a suffixes exhausted.

mercoledì 1 ottobre 2008

Ottenere il proprio IP pubblico dalla shell

Conoscere il proprio IP pubblico, si rivela spesso molto utile...
i modi per ottenerlo sono molteplici, ma per semplificare il tutto, creeremo un piccolo script da portare sempre con noi.
Il vantaggio di tale approccio è che lo script, potrà essere eseguito da utente normale, su qualsiasi computer munito di una shell.
Oppure all'occorrenza, potremmo addirittura aprire il file con un editor, copiare l'URL del server che ci fornisce tale servizio ed incollarlo nella barra degli indirizzi di un comune browser.

Lo script in questione si risolve nel seguente codice:


#!/bin/bash
echo ""
echo ""
echo "Questo è il tuo internet ip: "`wget -qO- http://toonik.altervista.org/ip.php | sed 's|.* \([[:digit:]]*\.[[:digit:]]*\.[[:digit:]]*\.[[:digit:]]*\).*|\1|'`
echo ""
echo ""


mi raccomando... fatene un buon uso ;-)