7 desembre de 2014

Trobar els fitxers modificats en l'ultim dia (o hora)

Ubuntu, o Linux en general, disposa de petites joies en forma de comandes del terminal que ens poden fer la vida molt fàcil. O no us heu trobat mai amb la necessitat de saber quins fitxers heu modificat fa un parell d'hores? O fa un parell de dies?
La comanda següent:
$ find . -mtime -1 -ls
ens permet localitzar tots els fitxers modificats durant l'últim dia. Canvieu el 1 pel número de dies que vulgueu...

I si voleu menys d'un dia? No patiu, també hi ha la possibilitat de buscar per minuts. Així:
$ find . -mmin -60 -ls
ens permet trobar els fitxers modificats en la darrera hora.

Fàcil i útil, veritat?

4 octubre de 2014

Emulant un Commodore 64 (C-64) a Ubuntu

Als que ja tenim una edat, de tant en tant ens agafa un rampell de nostàlgia. Deu ser per això que avui m'ha donat per instal·lar un emulador del que va ser el meu primer ordinador, el Commodoe 64.

Hi ha diverses opcions, però m'he decidit pel VICE, que ja el tenim present en la distribució:
$ sudo apt-get install vice
L'executem des del terminal per veure si genera algun error:


I efectivament, tenim un error. Si ens fixem en el que ens diu, podem veure que no ha trobat les ROMs per poder emular el C-64. Un tema de llicències.

Ho podem solucionar baixant el paquet amb el codi font, que sí que les inclou. Desempaquetem i copiem els fitxers necessaris:
$ sudo cp -vR vice-2.4/data/* /usr/lib/vice
I a recordar els bons vells temps:

28 setembre de 2014

XML: identat correcte a Geany

Geany és un excel·lent editor de programació que utilitzo habitualment si no necessito treballar amb un entorn específic. Fins ara, una de les poques pegues que hi havia trobat era que no indentava automàticament els fitxers XML:



Però es pot solucionar fàcilment gràcies a l'execució de comandes externes i el programa xmlindent. En primer lloc, instal·lem aquesta darrera eina:
$ sudo apt-get install xmlindent

I llavors afegim la comanda al Geany, a Edita ->Formata -> Envia la Selecció a... -> Indica Ordre Pròpia i afegim:
xmlindent -i 4 -f

Amb això, ja ens l'haurà afegit. Ara la podem invocar des del menú, o amb l'abreviació de teclat corresponent (Ctrl+1 si és la primera ordre). Seleccionem tot el text, invoquem l'ordre, i el resultat:




Evidentment, podem jugar amb les opcions de xmlindent, o fins i tot utilitzar altres eines amb la mateixa tècnica per a obtenir el resultat desitjat.

Ja comentareu si us ha servit o utilitzeu altres eines o programes !

21 setembre de 2014

ERROR: Ubuntu es queda esperant una tecla per arrencar [SOLUCIONAT]

Aquesta setmana he tingut un problema amb un servidor que no va arrencar. Vaig haver d'accedir-hi físicament, armat amb teclat i pantalla, per comprovar que simplement estava en el menú del GRUB, esperant una tecla per continuar!!!

Però si hi tinc posat un timeout! Havia d'arrencar sol al cap de tres segons. Cercant sobre el tema, de seguida vaig trobar un bug relacionat que em va portar a un altre bug on es descriu la font del problema: bàsicament, que s'ha afegit l'espera (infinita per defecte) d'una tecla quan el sistema no es va tancar correctament.

En resum, em va recordar allò de "no és una errada, és una prestació".

Per sort, conegut el problema, la solució és ben fàcil, ja que també es va introduir un opció per canviar el temps d'espera, o eliminar-lo completament. Vaja, una altra opció del GRUB que per desgràcia no ve en les configuracions per defecte.

Per solucionar-ho, editem el fitxer de configuració del GRUB a /etc/default/grub i afegim la línia (posant el timeout que vulgueu):
GRUB_RECORDFAIL_TIMEOUT=10
Tot seguit actualitzem amb les noves opcions:
$ sudo update-grub
I ja ho tenim solucionat!

25 juliol de 2014

ERROR: VirtualBox, xarxa no disponible (SOLUCIONAT)

El VirtualBox és un sistema de virtualització que ens permet mantenir servidors amb versions antigues de certes aplicacions, o bé provar diferents configuracions o sistemes operatius. Molt útil en desenvolupament multi-plataforma, també.

Sovint és convenient crear una màquina virtual "base" en el VirtualBox, ja preparada amb la versió correcta de les nostres aplicacions preferides. Desprès només cal clonar-la i canviar allò que sigui específic de cada servidor particular.

Aquesta estratègia requereix:
  • Clonar la màquina virtual amb l'adreça MAC canvida.
  • Canviar el hostname allà on toqui: /etc/hostname i /etc/hosts.
Però això pot no ser suficient, i en podem trobar en que la màquina arrenca perfectament, però no té accés a la xarxa. Ens apareix un error tipus "connect: Network is unreachable".

El problema sol ser degut a que el canvi de MAC ha estat considerat com si s'hagués afegit una nova targeta de xarxa (és a dir, ja no tenim eth0). Per solucionar-lo, el més senzill és obligar a recrear la configuració de xarxa amb:
$ sudo rm /etc/udev/rules.d/70-persistent-net.rules
$ sudo reboot

Amb això es recrea eth0 i la màquina virtual ja té accés a la xarxa !!!

15 juliol de 2014

ERROR: It is not safe to rely on the system's timezone settings (SOLUCIONAT)

En actualitzar la versió del PHP en un dels servidors Apache, em vaig trobar amb l'error: "Warning: date(): It is not safe to rely on the system's timezone settings.".

Sortosament, el problema és fàcil de solucionar. Només cal definir la zona horària en el fitxer php.ini:
$ gksudo gedit /etc/php5/apache2/php.ini


Tot seguit, reiniciem el servidor Apache:
$ sudo service apache2 restart
I problema solucionat !

10 juliol de 2014

Cercar text directament en fitxers comprimits (*.gz)

En Ubuntu, o en Linux en general, de vegades trobem petites utilitats que ens fan la vida més fàcil. És el cas de zgrep, que ens permet buscar cadenes de text a l'estil de la comanda grep, però directament en fitxers comprimits amb gzip, però sense haver-los de descomprimir prèviament.

Per exemple, amb la comanda:
$ zgrep "BOOT_IMAGE" /var/log/dmesg*
Podem veure la línia de comanda amb la qual ha arrencat el nostre sistema Ubuntu les darreres vegades, tal com es mostra en la imatge.



Fixeu-vos com obtenim els resultats tant dels fitxers comprimits (*.gz) com dels que no ho estan.

Això resulta especialment útil per buscar informació en fitxers de registre del sistema. No trobeu?