Gdebi-kde o com instal·lar paquets .deb sense línia de comandes
La crítica més habitual a linux, és que s'ha de fer servir la línia de comandes per tot. Una eina que facilitarà la vida als que són alergics a la consola és diu gdebi. Existeix tant per l'escriptori gnome (gdebi) com per kde (gdebi-kde).
Per instal·lar, es pot fer via synaptic per exemple o també per línia de comandes:
apt-get install gdebi-kde
A partir d'ara sempre que us baixeu un fitxer .deb, com per exemple amb la última versió del programa ultrastar (un clon del singstar de la playstation), només heu de fer botó dret per instal·lar el programa, sense haver de fer servir cap comanda de consola.

Actualitzar la versió de rsync de mac OSx
Per fer copies entre ordinadors un dels millors programes que hi ha és l'rsync, permet fer una rèplica a través de un canal segur del contingut entre un ordinador d'origen i un destí d'una manera eficient tant en ample de banda com de velocitat.
Un dels usos que en podem fer és fer les copies del contingut del mac cap a un servidor linux de la nostra xarxa.
El primer que haurem de fer en aquest cas és actualitzar la versió de rsync que tenim en el nostre mac ja que la versió que porta instal·lada de serie l'OSx Lion és la 2.6.9, una versió de l'any 2006!!
Si tenim instal·lat el macports, n'hi ha prou de fer
sudo port install rsync
Per tal de verificar que tenim la versió correcta la sortida d'aquesta comanda
rsync --version
Ens ha de dir alguna cosa com "rsync version 3.0.8 protocol version 30", a partir d'aquí ja podem començar a fer-lo servir.
Hi ha un bon manual d'ús aquí (http://acacha.org)
Normalitzar el so de la música amb linux
Quan escoltem música és molt empipador que hi hagin canvis de volum molt grans entres les cançons. El fet de igualar el volum per tal que no haguem d'estar modificant el volum contínuament es diu normalitzar o bé equalitzar l'audio.
Aquesta funció la fan de manera automàtica els programes més coneguts (spotify, itunes, ...), en el cas de Linux es fa servir una altra aproximació més genèrica, s'afegeix la informació amb un programa extern i tots els programes la poden aprofitar així no s'han de fer els mateixos càlculs cada vegada. Per exemple tant l'Amarok, com el vlc, com el totem o el winamp llegeixen aquesta informació.
Aquest programa és l'mp3gain, ens afegirà la informació del volum ideal al que s'ha d'escoltar, sense modificar el fitxer.
Hi ha dues maneres de fer-ho:
Mode gràfic
Per fer la normalització amb interfície gràfica, la millor aplicació que he trobat es diu SoundKonverter. Simplement
Tools -> Replaygain Scanner -> Afegir les carpetes/fitxers i fer acceptar.
Mode línia de comandes
Primer instal·lar el programa, com sempre amb linux:
apt-get install mp3gain
I per fer la conversió, simplement escrivint això (canviant NOM_DIRECTORI per el nom real del directori)
find NOM_DIRECTORI -iname '*.mp3' -execdir mp3gain -a -k "{}" + &
Aqui hi trobareu una mica més de informació en anglès
Consultar el disc que hi ha dins d’una carcassa

Com ja vaig comentar tinc un disc dur multimèdia, és el iomega screenplay mx hd.
Per tal de llegir l'estat d'un disc hi ha una eina molt útil que es diu smartctl (hi ha versions per windows,linux i mac), el que ens permet aquest programa és llegir la informació de SMART dels discs durs del nostre sistema, l'SMART (Self-Monitoring, Analysis and Reporting Technology) bàsicament el que fa és que els disc durs ens puguin donar informació de quan poden fallar, les hores de funcionament o de si han tingut algun problema.
Descàrrega de les smartmontools aquí, també hi ha el gsmartcontrol que és una eina gràfica aquí , pel que fa a les versions de línia de comandes es pot obtenir amb linux:
sudo apt-get install smartmontools
O amb mac osx:
sudo port -v install smartmontools
Un cop instal·lat, si estem fent servir l'smartctl, per llegir la informació smart de un disc SATA estandard que linux ha detectat com a /dev/sda hauriem de fer:
smartctl --all /dev/sda
Si el disc dur, com és el meu cas és un disc dur dins una caixa amb un connector usb, hem de indicar-ho a l'smartctl per poder llegir la informació a través de l'usb (sense haver de treure el disc de la caixa)
smartctl --all /dev/sda -d usbjmicron
Arreglar problemes de velocitat de un Iomega ScreenplayMXHD

Tinc un disc per fer copies i que al mateix temps és multimèdia, permet veure fotos, i lamajoria de formats de video, fins i tot els d'alta definició.
El disc dur és el iomega screenplay mx hd
El principal problema que té és que és lent a l'hora de passar les dades i que a vegades es reinicia la connexió amb l'ordinador interrompent la transmissió.
Després de buscar els possibles problemes he vist que pot ser degut a que la velocitat de transmisió que ens està indicant l'usb en realitat és més alta que la que pot guardar en el disc (possiblement els bus de dades entre el disc i l'usb és massa lent). Una solució fàcil és fer que les dades es passin més lentes (encara que de manera més fiable), per fer-ho ni ha prou de posar un valor més petit a la variable de max_sectors (NOMÉS LINUX)
El valor original és 240, si el baixem a 64 o a 128 la transmissió serà més lenta però més fiable (1,2Mb/s i 2.4Mb/s respectivament)
echo 128 > /sys/block/sda/device/max_
sectors
Referència ràpida de vim
Un dels editors de text més extesos en el món de Linux/Mac és el vi (i la seva versió millorada vim). El podreu trobar instal·lat amb la versió senzilla en qualsevol sistema Unix/Linux/Mac instal·lat per defecte.
El mac OSx ja porta per defecte instal·lat el vim, per instal·lar la versió millorada amb linux:
apt-get install vim
Fer servir el vim com a editor de text per linux és tan gratificant com frustrant ja que pot fer infinitat de funcions molt pràctiques però també que són difícils de recordar, sempre va bé tenir el receptari amb totes les dreceres a mà:
REFERÈNCIA RÀPIDA DE VIM
| Moviments bàsics | |
| h l k j | caràcter esquerra, dreta; línia amunt, avall |
| b w | paraula esquerra, dreta |
| ge e | final de paraula esquerra, dreta |
| { } | començament del paràgraf anterior, següent |
| ( ) | començament de frase anterior, següent |
| 0 gm | començament, mig de la línia |
| ^ $ | primer, últim caracter de la línia |
| nG ngg | línia n (per defecte la última), primera |
| n% | percentatge n del fitxer (n és obligatori) |
| n| | columna n de la línia actual |
| % | parèntesi, claudàtor, clau, corresponent, #define |
| nH nL | línia n des del principi, final de la finestra |
| M | línia central de la finestra |
| Inserció & remplaçament | |
| i a | inserta abans, després del cursor |
| I A | inserta al començament, final de la línia |
| gI | inserta text a la primera columna |
| o O | obre una línia nova sota, sobre l'actual |
| rc | remplaça per c el caràcter sota el cursor |
| grc | com r, però sense afectar el format |
| R | remplaça caràcters començant al cursor |
| gR | com R, però sense afectar el format |
| cm | canvia el text del moviment m |
| cc or S | canvia la línia actual |
| C | canvia fins al final de la línia |
| s | canvia un caràcter i inserta |
| ~ | canvia majúscules/minúscules |
| g~m | canvia maj./min. del moviment m |
| gum gUm | canvia maj./min. el text del moviement m |
| <m >m | sagna esquerra, dreta el text de m |
| n<< n>> | sagna n línies cap a l'esquerra, dreta |
| Supressió | |
| x X | suprimeix el caràcter sota, abans del cursor |
| dm | suprimeix el text del moviment m |
| dd D | suprimeix la línia actual, fins al final |
| J gJ | ajunta la línia acutal i la següent, sense espai |
| :rd↵ | suprimeix r línies |
| :rdx↵ | suprimeix r línies i posa-les al registre x |
| Mode d'inserció | |
| ^Vc ^Vn | insereix caràcter literal c, de valor ASCII n |
| ^A | insereix el mateix text un altre cop |
| ^@ | igual que ^A, i torna a mode normal |
| ^Rx ^R^Rx | insereix el contingut de x, literalment |
| ^N ^P | completa el text mirant endavant, enrere |
| ^W | suprimeix la paraula sota el cursor |
| ^U | suprimeix el text inserit a la línia acutal |
| ^D ^T | sagna a l'esquerra, a la dreta |
| ^Kc1c2 or c1←c2 | introdueix el dígraf \c1,c2\ |
| ^Oc | executa c en un mode normal temporal |
| ^X^E ^X^Y | desplaça amunt, avall |
| <esc> or ^[ | abandona l'inserció i torna a mode normal |
| Còpia | |
| "x | empra el registre x en l'operació següent |
| :reg↵ | mostra el contingut de tots els registres |
| :reg x↵ | mostra el contingut del registre x |
| ym | copia el text del moviment m |
| yy or Y | copia la línia actual |
| p P | enganxa abans, després del cursor |
| ]p [p | com p, P amb el sagnat correcte |
| gp gP | com p, P deixant el cursor al final |
| Inserció avançada | |
| g?m | codifica en rot13 el text del moviment m |
| n^A n^X | +n, -n al nombre sota el cursor |
| gqm | justifica les línies del moviment m |
| :rce w↵ | centra les línies del rang r, amplada w |
| :rle i↵ | alinea a l'esq. les línies de r, indentació i |
| :rri w↵ | alinea a la dreta les línies de r, amplada w |
| !mc↵ | filtra les línes de m per l'ordre c |
| n!!c↵ | filtra n línies per l'ordre c |
| :r!c↵ | filtra el rang r per l'ordre c |
| Mode visual | |
| v V ^V | selecciona caràcters, línies, bloc |
| o | mou el cursor al principi de la selecció |
| gv | repeteix la selecció anterior |
| aw as ap | selecciona paraula, frase, paràgraf |
| ab aB | selecciona un bloc ( ), un bloc { } |
| Desfer, repetició & registres | |
| u U | desfés l'última acció, restaura la línia |
| . ^R | repeteix l'acció, refés l'acció desfeta |
| n. | repeteix l'acció amb el nombre n |
| qc qC | enregistra, afegeix caràcters al registre c |
| q | atura l'enregistratge |
| @c | executa el contingut del registre c |
| @@ | repeteix l'última acció @ |
| :@c↵ | executa el registre c en mode Ex |
| :rg/p/c↵ | executa l'ordre Ex c al rang r |
| allà on p concorda | |
| Moviments avançats | |
| - + | línia amunt, avall fins el primer caràcter no-blanc |
| B W | paraula esquerra, dreta |
| gE E | final de paraula esquerra, dreta |
| n_ | avall n-1 línies fins el primer caràcter no-blanc |
| g0 | començament de la línia en la pantalla |
| g^ g$ | primer, últim caràcter de la línia en la pantalla |
| gk gj | línia de pantalla amunt, avall |
| fc Fc | següent, anterior occurència del caràcter c |
| tc Tc | abans de la següent, anterior occurrència de c |
| ; , | repeteix l'últim fFtT, cap a l'altre cantó |
| [[ ]] | començament de la secció enrere, endavant |
| [] ][ | final de secció enrere, endavant |
| [( ]) | (, ) enrere, endavant |
| [{ ]} | {, } enrere, endavant |
| [m ]m | mètode Java enrere, endavant |
| [# ]# | #if, #else, #endif enrere, endavant |
| [* ]* | començament, final de /* */ enrere, endavant |
| Cerca & substitució | |
| /s↵ ?s↵ | cerca s endavant, enrere |
| /s/o↵ ?s?o↵ | cerca s amb desplaçament o |
| n or /↵ | repeteix última cerca cap endavant |
| N or ?↵ | repeteix última cerca cap enrere |
| # * | cerca enrere, endavant la paraula sota el cursor |
| g# g* | el mateix, però troba concordances parcials |
| gd gD | definició local, global del símbol sota el cursor |
| :rs/f/t/x↵ | substiteix f per t al rang r |
| x: g-totes les ocurrences, c-demana confirmació | |
| :rs x↵ | repeteix substitució amb nous r & x |
| Caràcters especials a la cerca | |
| . ^ $ | qualsevol caràcter, principi, final de línia |
| \< \> | principi, final de paraula |
| [c1-c2] | un caràcter al rang c1..c2 |
| [^c1-c2] | un caràcter fora del rang |
| \i \k \I \K | identificador, paraula clau; sense dígits |
| \f \p \F \P | nom de fitxer, car. imprimible; s.d. |
| \s \S | espai blanc, espai no-blanc |
| \e \t \r \b | <esc>, <tab>, <↵>, <←> |
| \= * \+ | concorda 0..1, 0..∞, 1..∞ àtoms precedents |
| \| | separa dues branques (disjunció) |
| \( \) | agrupa patrons dins un àtom |
| \& \n | el patró sencer, el n-èssim grup () |
| \u \l | caràcter en minúscules, en majúscules |
| \c \C | ignora, concorda majúscules/minúscules |
| Desplaçaments a les ordres de cerca | |
| n or +n | n línies cap avall a la columna 1 |
| -n | n línies amunt a la column 1 |
| e+n e-n | n car. dreta, esq., del final de concordança |
| s+n s-n | n car. dreta, esq., del principi de conc. |
| ;sc | executa l'ordre de cerca sc després |
| Marques i moviments | |
| mc | marca la posició actual com c ∈[a..Z] |
| `c `C | vés a la marca c del fitxer actual, C qualsevol |
| `0..9 | vés a les últimes posicions de sortida |
| `` `" | posició d'abans del salt, abans de l'edició |
| `[ `] | començament, final de l'últim text editat |
| :marks↵ | llista de marques actives |
| :jumps↵ | llista de salts |
| n^O | n-èssima posició antiga a la llista de salts |
| n^I | n-èssima posició nova a la llista de salts |
| Mapatge & abreviatures | |
| :map c e↵ | mapar c ↦ e en modes normal i visual |
| :map! c e↵ | mapar en modes d'inserció i línia d'ordres |
| :unmap c↵ :unmap! c↵ | suprimeix el mapatge c |
| :mk f↵ | desa els mapatges actuals al fitxer f |
| :ab c e↵ | afegeix abreviatura c ↦ e |
| :ab c↵ | mostra les abreviatures que comencen en c |
| :una c↵ | suprimeix l'abreviatura c |
| Tags (etiquetes) | |
| :ta t↵ | salta al tag t |
| :nta↵ | salta al n-èssim tag de la llista |
| ^] ^T | salta al tag sota el cursor, torna |
| :ts t↵ | mostra els tags que concorden i tria'n un |
| :tj t↵ | salta a un tag o tria'n un si s'escau |
| :tags↵ | mostra la llista de tags |
| :npo↵ :n^T↵ | torna de l'n-èssim tag |
| :tl↵ | salta a l'últim tag que concorda |
| ^W} :pt t↵ | previsualitza tag sota el cursor, t |
| ^W] | parteix la finestra i mostra-hi el tag sota el cursor |
| ^Wz or :pc↵ | tanca la finestra de previsualització |
| Desplaçament & finestres | |
| ^E ^Y | desplaça una línia amunt, avall |
| ^D ^U | desplaça mitja pàgina amunt, avall |
| ^F ^B | desplaça una pàgina amunt, avall |
| zt or z↵ | posa la línia actual dalt de la finestra |
| zz or z. | línia actual al mig de la finestra |
| zb or z- | línia ctual a baix de la finestra |
| zh zl | desplaça un caràcter a la dreta, esquerra |
| zH zL | desplaça mitja pantalla a la dreta, esquerra |
| ^Ws or :split↵ | parteix la finestra en dues |
| ^Wn or :new↵ | crea una finestra nova buida |
| ^Wo or :on↵ | fes que la finestra actual sigui la única |
| ^Wj ^Wk | vés a la finestra d'amunt, d'avall |
| ^Ww ^W^W | finestra d'amunt, d'avall (cíclicament) |
| Ordres Ex (↵) | |
| :e f | edita el fitxer f, excepte si s'han fet canvis |
| :e! f | edita el fitxer f |
| :wn :wN | desa aquest fitxer i edita el següent, l'anterior |
| :n :N | edita el fitxer següent, anterior de la llista |
| :rw | escriu el rang r al fitxer actual |
| :rw f | escriu el rang r al fitxer f |
| :rw>>f | escriu el rang r al final de f |
| :q :q! | surt amb confirmació, perdent els canvis |
| :wq or :x or ZZ | desa aquest fitxer i surt |
| <up> <down> | autocompleta ordres |
| :r f | insereix el contingut de f sota el cursor |
| :r! c | insereix la sortida de l'ordre c |
| :all | obre una finestra per cada fitxer |
| :args | mostra la línia d'ordres |
| Rangs | |
| , ; | separa dos nombres de línia, primera línia |
| n | nombre de línia absolut |
| . $ | línia actual, última línia del fitxer |
| % '<,'> | fitxer sencer, àrea visual |
| 't | posició de la marca t |
| /p/ ?p? | línia següent, anterior, on p concorda |
| +n -n | +n, -n al nombre de línia anterior |
| Plecs | |
| zf zfm | fes un plec de l'àrea visual, del moviment m |
| :rfo | fes un plec del rang r |
| zd zE | esborra el plec sota el cursor, tots els visibles |
| zo zc zO zC | obre, tanca un plec; recursivament |
| [z ]z | vés al començament, final del plec actual |
| zj zk | vés al plec de més avall, amunt |
| Miscel.lània | |
| :sh↵ :!c↵ | intèrpret d'ordres, executa-hi c |
| K | cerca la paraula sota el cursor al man |
| :make↵ | executa make i vés al primer error |
| :cn↵ :cp↵ | mostra l'error següent, anterior |
| :cl↵ :cf↵ | mostra tots els errors, d'un fitxer |
| ^L ^G | redibuixa la pantalla, mostra fitxer i posició |
| g^G | mostra coordenades del cursor |
| ga | mostra la valor ASCII del caràcter sota el cursor |
| gf | obre fitxer amb el nom que apareix al cursor |
| :redir>f↵ | redirigeix la sortida al fitxer f |
| :mkview [f] | desa l'estat actual [al fitxer f] |
| :loadview [f] | carrega un estat [del fitxer f] |
| ^@ ^K ^_ \ Fn ^Fn | tecles no mapades |
| Invocació | |
| vim f +n | obre el fitxer f i vés a la línia n |
| vim -t t | vés al tag t |
| vim -p <fitxers> | obre els fitxers en pestanyes |
| vim -o <fitxers> | obre en finestres, horitzontalment |
| vim -O <fitxers> | obre en finestres, verticalment |
L'he tret d'aquí, la traducció al català d'aquest manual ràpid és de Enric Meinhardt Llopis i la versió original de Laurent Grégoire
Arreglar la a data i hora de les fotos modificant la informació exif

Qualsevol camera digital enregistra un sèrie de informació dins de cada foto que fa.
Aquesta informació és de tot tipus i normalment és molt útil a l'hora de saber quan i com es va tirar la foto. Fins i tot amb algunes càmeres i amb la majoria dels nous dispositius mòbils es pot guardar la informació de posició GPS del lloc on es va tirar la foto.
El problema que ens trobem moltes vegades és que al fer un viatge hem canviat de zona horària, i mentre que la informació de la foto que hem tirat diu que són les 5 del matí però en realitat eren les 10 del matí.
És aquí on podem fer servir un programa per manipular la informació exim per corregir aquests problemes. El millor programa que he trobat es diu exiv2. Funciona tant en windows com amb linux, el programa es diu exiv2 (exiv2.org)
Amb Linux es pot instal·lar directament des d'apt-get
apt-get install exiv2
En el cas del Mac es pot instal·lar fàcilment si tenim el sistema de macports macports.org
sudo port -v install exiv2
Per exemple per sumar cinc hores a totes les fotos JPG
exiv2 ad -a 5 *.JPG
Quina tauleta de dibuix triar?
Com sempre a l'hora de comprar una hardware dependrà de l'ús que en volem fer, si estem fent servir Linux o Mac ens trobarem amb un problema afegit, bàsicament que la majoria de les marques no fan els corresponents controladors per els seus dispositius, sempre amb alguna notable excepció.
Després de mirar i remirar, tot buscant una tauleta gràfica per a us ocasional, ens queden dues opcions vàlides:
Waccom, és la marca que fa les tauletes gràfiques que fan servir els professionals, i que ofereix un suport de qualitat en Linux com en Mac des de fa anys.
Genius i d'altres marques que ofereixen productes d'una gamma més baixa, però que per fer petits treballs o aprendre com funciona els sistema de dibuix amb tauleta compliran les nostres expectatives.
En el meu cas, estic fent servir aquesta tauleta de Genius: enllaç amazon

L'equivalent de la marca Waccom de la mateixa tauleta seria aquest: enllaç amazon

Com es pot veure la diferència de preu és considerable, mentre que la Genius val 51.8€, la tauleta equivalent de Waccom valdria 95.4€.
En un pròxim post explicaré com poder fer funcionar aquesta tauleta sota Linux.