Backup veloce della propria home

 

Questo è un metodo velocissimo per effettuare un backup della propria home directory. Di seguito i comandi:

Creazione dell'archivio di backup:

tar cvpf backup.tar `ls`

Per i successivi backup usiamo un metodo incrementale, onde evitare di copiare le stesse directory ma solamente le nuove cartelle ed i nuovi file.

tar cvpf backup.tar -g snapshot `ls`

Nel caso si volesse tenere fuori dal backup una cartella o un file, si può usare l'opzione "hide" seguita dal nome di ciò che si vuole escludere.

tar cvpf backup.tar -g snapshot `ls --hide=Directory_or_file`

Screencast da shell completo

 

Ed eccoci alla fine della trilogia dello Screencast, trilogia non voluta dato che quando ho iniziato a fare la prima guida, non pensavo certo di continuare, ma poi c'è stata la seconda guida ed adesso la terza ed ultima. Il filo conduttore di queste guide è sostanzialmente lo stesso e cioè si  continua sempre parlando dello Screencast usando il terminale, quindi niente gui, diciamo un sistema per quei piccoli esseri immortali come me. Come sempre quando si fa o si scrive una cosa, il risultato migliore lo si ottiene quando ci si confronta e ci si stimola a vicenda, e questo è quello che è successo con un mio lettore, deer , che ha contribuito alla nascita di questo post, come si può evincere dai commenti nei post precedenti e che ringrazio. A questo punto iniziamo a parlare di come fare uno Screencast completo on the fly. Quello che ci serve è questo script dopo:

chmod a+x recordSoundAndDesktop.sh

./recordSoundAndDesktop.sh

Questo script non fa altro che catturare il video in .avi e successivamente convertire il file .wav creato da arecord in .mp3, il tutto in maniera velocissima. Dato che siamo in argomento voglio citare anche la possibilità di fare uno screencast utilizzando l'audio direttamente da un file. Il comando è il seguente:

ffmpeg -f x11grab -s 1280x1024 -r 30 -i :0.0 -i percorso_del_file.mp3 -ar 22050 -ac 1 -acodec mp2 -ab 128k screen.avi

Altri screecast fatti da me e deer con questo script.

Screencast da shell con audio

 

Qualche tempo fa avevo scritto su come fare uno screencast da shell, ma non avevo accennato alla possibilità di farlo registrando contemporaneamente da un microfono e quindi molto utile per chi volesse fare delle guide. L'idea mi è stata data da un lettore, che ringrazio, e che mi chiedeva appunto se esisteva un unico comando per uno screencast audio-video. Dico subito che ho trovato delle difficoltà nel trovare una soluzione ottimale, poichè usando principalmente Debian testing e Sid, succede che a volte (spesso) quello che hai sperimentato il giorno prima ed era funzionante, il giorno dopo ti da problemi o non funziona. Tuttavia questa volta ho sperimentato il tutto anche su Ubuntu 9.10 che ho installato ieri sera, solo perchè volevo togliermi delle curiosità, del resto la mia ultima frequentazione di Ubuntu risale alla versione 8.4. Di seguito i comandi che mi hanno soddisfatto:

Utilizzando ffmpeg con oss:

ffmpeg -s 1280x1024 -r 25 -f x11grab -i :0.0 -f oss -i /dev/dsp screen.avi

Utilizzando ffmpeg con arecord:

arecord -D default -t raw -c 1 -f S16_LE -r 48000 - | ffmpeg -f s16le -ab 128k -ar 48000 -ac 1 -i - -acodec mp2 -f x11grab -r 2 -s 1280x1024 -i :0.0 -vcodec mpeg4 screen.avi

Ricordarsi di settare in: preferenze dell'audio-ingresso-connettori il proprio microfono. Per ulteriori informazioni ed opzioni guardare qua e qua oltre che ai man.

Ma quanto spazio mi occupi

 

Per sapere quali sono i programmi che occupano molto spazio nel nostro sistema, esiste un comando, un pò lunghetto per la verità, ma che ci aiuta a capire chi sono i mostri che occupano così tanto spazio. Io ne ho uno, e si chiama imageshack-uploader, che comunque terrò poichè lo ritengo molto comodo.

56.078 MB linux-source-2.6.30
58.781 MB inkscape
64.422 MB evolution-common
66.570 MB linux-image-2.6.30-1-686
66.574 MB linux-image-2.6.30-2-686
82.582 MB sun-java6-bin
83.547 MB virtualbox-3.0
86.574 MB foomatic-db-gutenprint
106.246 MB openoffice.org-core
570.491 MB imageshack-uploader

Il comando è il seguente:

dpkg-query --show --showformat='${Package;-50}\t${Installed-Size}\n' | sort -k 2 -n | grep -v deinstall | awk '{printf "%.3f MB \t %s\n", $2/(1024), $1}' | tail -n 10

Per modificare il numero di programmi da visualizzare, cambiare il numero successivo a tail -n.

Inxi informazioni di sistema

 

Inxi è un tool che ho conosciuto da poco e che ho subito apprezzato per la sua semplicità e per l'immediatezza con cui visualizzi a schermo le informazioni del tuo sistema, grazie ai due colori, blu e rosso. Per installarlo io usato:

# cd /usr/local/bin && wget -Nc smxi.org/inxi && chmod +x inxi

oppure usare i repository per le Debian based di cathbards:

su
wget -O /etc/apt/sources.list.d/cathbard.list https://cathbard.com/files/cathbard.list
apt-get update && apt-get install cathbard-keyring inxi

Per chi usa Arch:

cd /usr/bin && wget -Nc smxi.org/inxi && chmod +x inxi

A questp punto basta lanciarlo come in figura con il comando:

inxi -F

per chi vuole il colore rosso basta affiancare l'opzione -c6:

inxi -F -c6

Questi gli altri comandi:

Leggi tutto “Inxi informazioni di sistema”

Colorare il cursore della Shell

 

Questo post nasce come integrazione a delle mie guide fatte in precedenza che si trovano qua e qua, per dare più colore alla shell, ma nasce soprattutto da una domanda fattami da un lettore, che mi chiedeva: "Come si facesse a cambiare solo il colore del cursore ed utilizzare il verde per l'utente normale ed il  rosso per root " Rispondo subito dicendo che si può cambiare il cursore e si può testare il tutto con questi comandi:

echo -ne "\033]12;Green\007"
echo -ne "\033]12;Red\007"
echo -ne "\033]12;Blue\007"
echo -ne "\033]12;Yellow\007"

A questo punto scelto il colore del cursore sostituiamo la stringa PS1 presente in .bashrc, con la stringa in basso che va bene per le Debian based.

PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$'

poi incolliamo alla fine di .bashrc:

echo -ne "\E]12;green\007"

poi salviamo il tutto in .bashrc per l'utente normale oppure in /root/.bashrc per l'utente root.

Per chi volesse una situazione come quella in figura o una base da dove partire può usare questa:

PS1="\[\e[31;1m\]\u-\[\e[32;1m\]\H \[\e[0m\]"

o questa:

PS1='\[\e[1;42m\d\\\t\\\]\u\H\[\e[0;40m\]:\w\$'

La stringa sopra è bruttissima e mi meraviglio pure che funzioni certamente si può ordinare e semplificare, ma io non ho più voglia

Diamo più colore alla shell

 

Oggi mi è venuto in mente di dare un po più di colore al mio terminale e quindi mi sono messo all'opera per fare alcuni cambiamenti ed aggiungere ad una guida fatta in passato, il colore verde per l'utente normale ed il rosso per quello di root, in più l'orario e la data. Senza scendere troppo nei particolari andiamo a vedere questo tipo di personalizzazione. Iniziamo con il dire che quello che andiamo a modificare è la variabile di ambiente "PS1", quindi per conoscere i dati che si trovano all'interno, basta un:

echo $PS1

che nel mio caso restituisce questo:

\[\e]0;\u@\h: \w\a\]\[\e[1;42m\d\\\t\\\]\u\H\[\e[0;40m\]:\w\$

Nel terminale inserendo la stinga sottostante, subito  appariranno  le nuove modifiche,  che ognuno può ulteriormente modificare a proprio piacimento, e alla fine salvarle in .bashrc per renderle effettive per l'utente normale, o in /root/.bashrc per quello di root. Questa stringa andrà chiaramente a sosituire quella di default che si trova quasi all'inizio di .bashrc.

Utente normale colore verde:

PS1='\[\e[1;42m\d\\\t\\\]\u\H\[\e[0;40m\]:\w\$'

Root colore rosso:

PS1='\[\e[1;41m\d\\\t\\\]\u\H\[\e[0;40m\]:\w\$'

Spiegazione della stringa:

\[   marca l'inizio di una sequenza di caratteri non stampabili, che può essere usata per includere nel prompt  una  sequenza di controllo del terminale.

\e       un carattere ASCII di escape (033)

1;42     formattazione in grassetto colore di sfondo verde intensità normale

 m       fine di una sequenza ANSI

\d       la data nel formato "Giorno-della-settimana Mese Giorno"

\\       un backslash

\t       l'ora corrente nel formato HH:MM:SS 24 ore

\u       il nome-utente dell'utente corrente

\H       il nome dell'host

0;40     formattazione normale colore di sfondo nero intensità normale

\]       marca la fine di una sequenza di caratteri non stampabili

\w       la directory di lavoro corrente con HOME abbreviato con una tilde

Lista dei colori: Leggi tutto "Diamo più colore alla shell"

4 modi diversi per generare password

 

Per generare una password, oltre al comando precedente, esistono altri 4 comandi, o almeno io conosco solo questi, comunque tutti da riga di comando.

egrep -ioam1 '[a-z0-9]{8}' /dev/urandom

openssl rand -base64 9

makepasswd --chars=20

< /dev/urandom tr -dc A-Za-z0-9_ | head -c10 | xargs | cat

 

Finché c'è Shell c'è speranza


 

Questo post nasce dalla consapevolezza che sono uno a cui le cose semplici, specialmente sula mia Debian, non sono mai piaciute. Tanto è vero che a forza di sperimentare, c'è sempre qualche cosa che non va. A volte mi chiedo, come mai uso un O.S, dove quando hai fretta ed urgenza di fare un qualcosa, non funziona mai niente, invece che usarne un altro dove tutto va al primo colpo, eppure nel mio hard disk ci sono sempre presenti almeno 5 sistemi, ma come tutti sappiamo "C'est l'amour" , ed a quella famosa domanda che io ogni tanto mi faccio, rispondo sempre allo stesso modo, " A ME MI PIACE COSI'".,ed a questo punto per farmi perdonare dalla mia amata, per come la tratto voglio dedicarle un bella canzone d'amore.

 

Dopo aver asciugato le lacrime vengo subito al punto, e racconto della mia urgenza di masterizzare un film su un dvd-rw, e dopo aver utilizzato in serie, GnomeBaker,Brasero e K3b,  non riesco a masterizzare nulla, ed ottengo una caterva di errori.

Leggi tutto “Finché c'è Shell c'è speranza”

Screencast da shell personalizzato

 

Per ottenere uno screencast con Linux esiste un ottimo programma come gtk-recordMyDesktop, che non è niente altro che un fronted per recordMyDesktop. Lo screencast alla fine viene esportato come formato .ogg. Un altro metodo, secondo me migliore poichè largamente personalizzabile è quello di usare ffmpeg, con il seguente comando:

ffmpeg -f x11grab -s 1280x1024 -r 30 -i :0.0 /home/UTENTE/Desktop/screencast.mpg

alla fine basta premere q per terminare.

In questo esempio come risoluzione io ho usato 1280x1024, e come formato finale .mpg., ma si può scegliere una risoluzione diversa e soprattutto di esportare in formato differente, a secondo della nostra esigenza.

Aggiornamento:

Un altro comando utile in alternativa può essere questo:

ffmpeg -y -t 60 -r 25 -s 1280x1024 -f x11grab -i :0.0 screen.avi