20121102

Comparar ficheros binarios en GNU/Linux - Compare binary files in GNU/Linux

Muchos usamos el comando diff para comparar ficheros de texto, pero qué pasa con los binarios? Para comparar ficheros binarios en GNU/Linux existen varios métodos (como para casi todo). Aquí comento alguno de ellos.
cmp:
bdispatcher@laptop:~$ cmp file1 file2
file1 file1 are different: byte 1, line 1

md5sum:
bdispatcher@laptop:~$ md5sum file1 file2
2fb1a6b293505c585a4fd75435dbf9a6  file1
e16c85c2851b2bee7a57167dbf05872b  file2

To compare two text files we can use the command diff, but what about the binary files? As we know, there are some different ways in GNU/Linux to achieve our objetive. Those are just two of them:

cmp:
bdispatcher@laptop:~$ cmp file1 file2
file1 file1 are different: byte 1, line 1

md5sum:
bdispatcher@laptop:~$ md5sum file1 file2
2fb1a6b293505c585a4fd75435dbf9a6  file1
e16c85c2851b2bee7a57167dbf05872b  file2

PS. I know, I know. My English is not good enought but, the more you help me, the more I learn.

20120718

Centos 6: desactivar barra de progreso en el arranque - Centos 6: disable progress bar at boot

A veces hay mejoras que a mi personalmente no me lo parecen tanto. El sustituir el arranque tradicional en el que ves como todo el proceso y los posibles fallos que puedan ocurrir, por una barra de progreso en una distro orientada a servidores, me parece una de estas mal llamadas mejoras, y es lo que ha sucedido en CentOS 6.
Para volver a ver el arranque tradicional, debemos editar el fichero de configuración de Grub /etc/grub.conf y borrar el parámetro rhgb en todas las líneas en las que aparezca (una por cada uno de los kernels que tengamos disponibles).
Si además queremos que el arranque sea más detallado todavía, borraremos también la palabra quiet.

There are some improvements that are not. The fact of changing the traditional and verbose boot to a newer but simpler one is one of them, and this is what has happend on the CentOS 6 distro.
To back to the old-style but more usefull and verbose boot process we have to edit the Grub configuration file, /etc/grub, and delete the word rhgb in all of owr kernel lines. If we want more info at boot time, we can delete the word quite too.

PS. I know, I know. My English is not good enought but, the more you help me, the more I learn.

20120711

error: fd0 read error

Hace ya unos meses que instalé Ubuntu Server 12.04, y desde el principio vi que aparecía este mensaje al iniciar el sistema, pero hasta hace unos días no me había llegado a molestar del todo.
Una vez alcanzado ese punto de molestia y/o curiosidad que me hace no dejarlo pasar ni un día más, y después de googlear un rato, encuentro que el problema reside en que en la BIOS está activada una unidad de disco que no existe, así  que para dejar de ver este dichoso mensaje sólo he tenido que acceder a la BIOS, desactivar esta unidad de disco y guardar los cambios.


I installed Ubuntu Server 12.04 for 1st time some months ago, and from the beggining I saw an annoying message at boot time, but few days ago this message became annoying enough.
Once I got this point, I sought the web to get a solution and there it was.
The problem is that there is a floppy disk drive configured in the BIOS but this drive doesn't exist, so to fix it I had to disable this drive on the BIOS, and exit and save changes.

PS. I know, I know. My English is not good enought but, the more you help me, the more I learn.

20120707

RT: ruta de BD SQLite - RT: SQLite database path

Estamos en proceso de análisis de varias herramientas de helpdesk para implantar una de ellas en la organización y así aprovecharnos de las múltiples ventajas de su uso.
Una de las que estamos probando es RT: Request Tracker una herramienta muy sencilla y a la vez muy configurable. Para hacer pruebas y como la aplicación lo permitía la hemos instalado con SQLite como backend, aunque también permite el uso de Oracle, MySQL y PostgreSQL.
La cosa es que para hacer pruebas con la primera era suficiente y como en casi todas las pruebas, muchas veces queremos volver al estado inicial de la BDD sin tener que reinstalar o tirar de snapshots. Para ello, lo que hemos hecho ha sido copiar el fichero de SQLite, cuya ubicación podemos conocer, por ejemplo, del siguiente modo:
1.- Miramos en el fichero de configuración de la herramienta.
2.- Listamos el contenido del directorio.
3.- Comprobamos que se trata de un fichero SQLite.


We're analyzing some helpdesk tools to deploy one of them to help us tracking the issues on our company.
One of them is RT: Request Tracker, a very very simple and customizable tool wich can be configured with Oracle, MySQL, PostgreSQL and SQLite as backend. To make our tests with it we're using SQLite and to start from scratch during these tests we have to know where the database file is stored and back it up. We can find it following these easy steps:
1.- Have a look on the tool configuration file.
2.- List the directory
3.- Check if is a SQLite file.

bdispatcher@server:~$ sudo cat /etc/request-tracker4/RT_SiteConfig.d/51-dbconfig-common
# THE DATABASE:
# generated by dbconfig-common

# map from dbconfig-common database types to their names as known by RT
my %typemap = (
    mysql   => 'mysql',
    pgsql   => 'Pg',
    sqlite3 => 'SQLite',
);
 
Set($DatabaseType, $typemap{sqlite3} || "UNKNOWN");

Set($DatabaseHost, 'localhost');
Set($DatabasePort, '');

Set($DatabaseUser , '');
Set($DatabasePassword , '');

# SQLite needs a special case, since $DatabaseName must be a full pathname
my $dbc_dbname = 'rtdb'; if ( "sqlite3" eq "sqlite3" ) { Set ($DatabaseName, '/var/lib/dbconfig-common/sqlite3/request-tracker4' . '/' . $dbc_dbname); } else { Set ($DatabaseName, $dbc_dbname); }
bdispatcher@server:~$ sudo ls -l /var/lib/dbconfig-common/sqlite3/request-tracker4
total 88
-rw-rw---- 1 root www-data 90112 jul  2 12:30 rtdb

bdispatcher@server:~$ sudo file /var/lib/dbconfig-common/sqlite3/request-tracker4/rtdb
/var/lib/dbconfig-common/sqlite3/request-tracker4/rtdb: SQLite 3.x database
bdispatcher@server:~$

PS. I know, I know. My English is not good enought but, the more you help me, the more I learn.

20120703

Windows Update: código 80072F8F - code 80072F8F

Estos días he tenido que reinstalar y actualizar un portátil al que no he podido hacerle ni un downgrade a Windows XP, ni un upgrade a Windows 7, así que le he tenido que dejar su magnífico Windows Vista Home Premium.
Después de hacer la instalación con el DVD de imagen que venía con el equipo, al lanzar las actualizaciones automáticas da un casque con el error:
Código 80072F8F

El problema reside en que como se había agotado la pila interna, el equipo no guardaba la hora. Además, el cortafuegos impedía la actualización horaria de Windows. Así que los servidores de Microsoft detectaban un día y/o hora incorrectos y no permitía la actualización.
La solución es tan simple como ajustar correctamente la fecha y/o hora del equipo y a funcionar.


Last week I had to reinstall a laptop with Windows Vista Home Premium because I could'nt make an downgrade to Windows XP nor and upgrade to Windows 7 using it's current license.
After using the branded DVD to recover the installation image, when I tried to update the SO using the Windows Automatic Updates I got the following error message:
Code 80072F8F

The problem was that the internal battery of the laptop was drained and firewall was blocking the ntp protocol so the system time and date were wrong.
The solution was as simple as ajust the time and the date of the laptop, and that's all folks.

PS. I know, I know. My English is not good enought but, the more you help me, the more I learn.

20120702

Smart phones and dummy lusers

La tecnología avanza a toda leche, y es un hecho.
Si volvemos la vista atrás y miramos donde nos encontrábamos hace sólo 25 años, y todo lo que ha cambiado desde entonces puede que nos demos cuenta de esto. Pero si intentamos si quiera imaginar donde nos encontraremos dentro de 10 seguro que nos hace darnos de bruces con la realidad. La tecnología avanza a toda leche.
Si nos centramos en cómo afecta este cambio al ciudadano de a pié como dicen en los noticiarios, o a lo que viene siendo las personas corrientes y molientes, el cambio se puede explicar con el siguiente ejemplo.
Allá por 1981, poco antes del Nundial de Naranjito, a un servidor se le caía la baba cuando el compañero pijín de turno llegó con su flamante Casio con calculadora. Años más tarde nos pareció la bomba, y un artilujio cojonudo para la típica broma doméstica el Casio con mando a distancia, con el que podías cambiar de canal mientras veías como ponía cara de peo tu ya por aquel entonces alopécico progenitor.
Hoy en día sin embargo, cualquier nuevo gadget está al alcance de la mano de casi cualquiera de nosotros, pocos días después de su lanzamiento. Incluso si somos de esos frikilameculosdemarca, podemos hacer la reserva del producto antes incluso de su comercialización. Los cacharros hacen cada vez más cosas, los teléfonos no son teléfonos, la televisión dicen que ya no es tonta y la llaman SmartTV, Internet llega a nuestra por fibra (al menos en algunos sitios), y tenemos un montón de dispositivos de los más cool con un simple nombre en inglés precedido de una i.
Y todo esto, la verdad es que no me parece nada mal. Otro día si me caliento a lo pero trato el tema de la obsolescencia programada o el cómo las multinacionales y los consorcios internacionales nos toman el pelo a base de bien, de cómo nos hemos dejado llevar hacia una vorágine de consumismo de la cual es jarto chungo salir, y todo lo demás (no dejéis de ver si no lo habéis hecho ya, el documental Comprar, tirar comprar). Pero hoy no toca.
Pero ya que estamos hablando de tocar (pero qué bien que lo he hilao, eh!!!), si yo con poder llamar y enviar sms tengo más que de sobratlo que me toca bastante los huevos es la carga extra de trabajo que ha supuesto todo este avance tecnológico, o más bien, el inmenso retroceso neurológico, cognitivo o mental que se ha producido a la par. Con esto no vengo a decir que la capacidad cerebral humana se haya reducido, algo que desconozco. A lo que me refiero por contra, es a la no-adaptación de la mente del creo ya mal llamado homo sapiens a esta revolución digital.
Hasta hace cuatro días como quien dice, y por suerte todavía queda alguno, muchos usuarios de por ejemplo teléfonos móviles o celulares entonaban aquel 'si yo con poder llamar y enviar sms tengo más que de sobra'. Qué tiempos aquellos, qué momentos de felicidad para los que tenemos en la informática o similares como castigo. Pero hoy ya no, hoy todo el mundo quiere tener Internet en el móvil aunque no saben ni lo que es, tener Facebook, Twitter, Whatsapp y no se cuantas mierdas más. Tener una app con un gato al que puedes dar de leches, y que repite todo lo que dices con voz de pitufo maquinero, otra que te permita deformar la cara de tu exnovia en aquella cariñosa foto que le sacaste, otra con la que montar una absurda guerra entre unos pájaros pasados de alpiste y unos simpáticos cerditos, y así un largo etcétera. Y NO, vuelvo al no, porque no es que el simple hecho de que la gente pierda el tiempo con estas cosas me disguste, que no es así, momentos tontos los tenemos todos, y si no es con esto, es mirando un moco en la punta de un dedo. Lo que realmente me calienta, es que a pesar de todo el mundo quiere poder disfrutar de estos y muchos otros aparatos con características avanzadas, la gente sigue presumiendo de no haberse leído ya no un libro en su puñetera vida (y esto con 15 años tiene delito, pero con 50 es cadena perpetua seguro), sino las tristes instrucciones que acompañan su nuevo gadget, sean estas más extensas que la colección de libro del mago más famoso del mundo TV (porque a Gandalf el Gris no le quita el sitio ni el Magic Andreu por más medallas que se cuelgue) o más breves que la receta del tinto de verano. Sólo se limitan a desempaquetar el cacharro con más fuerza que maña, y a trastear un par de minutos para terminar tirando la toalla y recurriendo al pringao howto de turno, y por fin después de tanto rollo, llego a donde quería llegar y si no lo he hecho antes, ha sido para enfriar el núcleo de mala hostia que todavía arde bajo mi pellejo. Es esa gente la que me hace que me joda enormemente no el hecho de que puedas tener en la palma de la mano toda la wikipedia, algo que ya otros habían intentado meter en un disco de 1.4MB, sino el que presuman de su ignorancia y su analfabetismo digital y a la vez te molesten cada minuto para simpleces del tipo, configurame el correo en el móvil, no se por qué ya no me rota la pantalla, ayúdame a poner una carita vomitona con el Whatsapp, y un sinfín de similares.
Por eso y desde aquí, a sabiendas que nadie me lee, con la certeza de que mi lamento caerá en saco roto y de que el mundo seguirá girando a pesar de mis pesares, quiero :
cagarmenlahostiaputaportodosycadaunodelossegundosqueheperdidoyseguroperderéconestastonterías.

Gracias por no leerme.

20120620

GNU/Linux: Renombrar interfaz de red - GNU/Linux: Rename network interface

Hoy he clonado una máquina con VMWare para montar un cluster, y resulta que en la máquina resultante las interfaces tenían los nombres eth2 y eth3. Para poder aprovechar en lo posible la configuración de la máquina origen de la clonación, he procedido a cambiar los nombres de las interfaces con el siguiente comando:
ip link set dev nombre_actual name nuevo_nombre

Así, en mi caso sería:
ip link set dev eth2 name eth0
ip link set dev eth3 name eth1

Si lo que queremos es que los cambios se mantengan después de reiniciar el sistema, sólo debemos editar el siguiente fichero de configuración:
/etc/udev/rules.d/70-persistent-net.rules

Donde únicamente podemos cambiar el valor de la etiqueta NAME según indica un cometnario en el mismo fichero.
A que mola!!


Today I cloned a machine using VMWare to set up a cluster and at the destination machine had eth2 and eth3 as network interfaces name instead of eth0 and eth1. As I want to use the source machine configuration as much as possible I have changed the interfaces name with the following command:
ip link set dev current_name name new_name

So in this case I have typed:
ip link set dev eth2 name eth0
ip link set dev eth3 name eth1

If we want to make these changes permanent after a reboot, we have to edit the following config file:
/etc/udev/rules.d/70-persistent-net.rules

where we can only change the NAME key as is warned in the file.
Cool!!

PS. I know, I know. My English is not good enought but, the more you help me, the more I learn.

20120522

Vi: dividir la pantalla - Vi: split the window

Si vosotros sois también de esos chalaos que disfrutáis con el uso de Vi seguro este tip os será de utilidad. Si queremos dividir la pantalla de edición para editar otro archivo, o situarnos en dos puntos distintos del mismo archivo, sólo tenemos que teclear en modo comando lo siguiente:
:split

Con esto conseguiremos dividir la pantalla horizontalmente. Si lo que queremos es dividirla en vertical, teclearemos:
:vsplit

Complejo, eh!
Podemos ejecutar estas órdenes, combinándolas, tantas veces como queramos (no se si tiene límite) dividiendo una y otra vez la pantalla.

Si queremos abrir otro archivo, añadimos la ruta de este:
:split file_path
:vsplit file_path

O si lo que queremos es dividirla creando un archivo nuevo, añadiremos una n:
:split n
:vsplit n

Siempre y cuando no exista un fichero de nombre n en nuestro directorio de trabajo.
Para navegar entre las diferentes divisiones creadas, podemos utilizar:
CTRL+W W para pasar de una sección a otra hacia adelante.
CTRL+W tecla de dirección para pasar al siguiente marco en esa dirección. Podemos usar tanto las flechas como hjkl

También podemos redimensionar cada sección pulsando:
n CRTL+W + que hará crecer la sección en n líneas
n CRTL+W - que reducirá la sección en n líneas

Para cerrar cada una de ellas, como siempre :q :qw :x, etc.
Y esto es sólo el principio. Que lo disfrutéis.
:qw


If you are on of those geeks who enjoy typing and text editing with Vi I'm sure you'll find the following tip as useful as me.
You can split the the editor window typing the following while you're in command mode:
:split

To split it vertically, just type:
:vsplit

As easy as that! And we can repeat this command as many times as we like.

We can open other file on a new window typing:
:split file_path
:vsplit file_path

To create a new empty window:
:split n
:vsplit n

If there is a file called n on the working dvimirectory the previous command will open it instead of a new one :p
To navigate between the diferent divisions, we could type:
CTRL+W W to go forward to the next division
CTRL+W arroy key or khjkl to switch between windows on any direction.

We can algo change the window size typing:
n CRTL+W + qwhich will make the window grow n lines
n CRTL+W - which will srink the window n lines

And finally to close them,  :q :qw :x, etc.
This is just a piece of everything we can do with Vi. Enjoy it.
:qw

PS. I know, I know. My English is not good enought but, the more you help me, the more I learn.

20120424

LibreOffice: documentos recientes lista vacía - LibreOffice: recent documents empty list

No recuerdo con qué actualización comenzó a fallar, pero desde hace un tiempo en mi equipo de trabajo, un Kubuntu GNU/Linux 10.04 LTS, tengo la lista de documentos recientes de LibreOffice vacía. La versión que tengo instalada actualmente es la 3.5.2.2 aunque ya lo había observado anteriormente.
La verdad no es gran cosa pero si estás acostumbrado a utilizarla es un poco molesto tirar de ella y que esté vacía.
Después de googlear un rato, he visto que la solución pasa por renombrar o eliminar los ficheros registrymodifications.xcu que encuentres en tu perfil de usuario. En mi caso eran estos dos:
./.libreoffice/3/user/registrymodifications.xcu
./.config/libreoffice/3/user/registrymodifications.xcu

En este fichero se almacenan los cambios en la configuración de la aplicación, y parece que el problema a aparecido en el cambio de la 3.4 a la 3.5 de la suite ofimática debido a un cambio en la ruta de este fichero.
Una vez borrado el archivo sólo tienes que volver a abrir la aplicación y volver a probar para ver como ya se va rellenando tu lista de documentos recientes.

I can't remember when it started to fail, but sometime ago I realized that the recent documents list of LibreOffice was empty. My current settings are: Kubunt GNU/Linux and LibreOffice 3.5.2.2. I know this is not a big trouble but I'm used to use it, so after search the web some minutes I found that the solution was to rename o delete the file registrymodifications.xcu. On my laptop I found the following:
./.libreoffice/3/user/registrymodifications.xcu
./.config/libreoffice/3/user/registrymodifications.xcu

This file stores the configuration changes made by the user and the problem appeared changing from the 3.4 to the 3.5 release.
Once the file is deleted, you can open the suitte and try it again.

PS. I know, I know. My English is not good enought but, the more you help me, the more I learn.

20120413

Android ICS: Pantallazo -Android ICS: Screenshot

Hace ya casi una semana que instalé la versión Ice Cream Sandwich 4.0.4 en mi Nexus S (I9023XXKI1) vía OTA, y son muchas las cosas que me gustan y unas cuantas las que no me gustan o a las que no me he terminado de acostumbrar.

La cosa es que jugando con el teléfono, me he encontrado con la posibilidad de hacer un pantallazo de lo que muestra nuestro LCD o AMOLED con la siguiente combinación de teclas:
control de volumen hacia abajo + botón de apagado pero a la vez!!

Con esto obtenemos un pantallazo de nuestro terminal, como podéis ver en esta imagen.


I've installed via OTA the Ice Cream Sandwich 4.0.04, the new and patched version of Android on my Nexus S (I9023XXKI1). There are some amazing new features but there are some other that I miss.
But anyway, I was playing with the cellular when I bumped into the way to take a screenshot. To do that you only have to press: 
volume down + poweroff button but at the same time!!!

With this key combiantion you'll take a screenshot of your terminal.


PS. I know, I know. My English is not good enought but, the more you help me, the more I learn.

20120321

Script para generar conjuntos de archivos - Script to generate sets of files

Después de un tiempo sin postear, he vuelto, al menos por ahora!!
Estos días he necesitado varios conjuntos de archivos para realizar pruebas de rendimiento, y para generar estos, he creado el siguiente script, que ahora comparto con vosotros.
Espero que os sea de utilidad.


After some time without posting, I'm back!
This days I needed some sets of files to make some performance tests. To generate this files I wrote the following script that I'm going to share with all of you.
I hope you find it useful.

PS. I know, I know. My English is not good enought but, the more you help me, the more I learn.

#!/bin/bash
#
FILES_PATH="$PWD/files"                    # path to create de files
declare -i DIR_NUM=13                      # num. of dirs to create
declare -i FILE_NUM=1000                   # num. of files to create
declare -i FILE_MIN_SIZE=10                # in kB
declare -i FILE_MAX_SIZE=200               # in kB
declare -i FILE_SIZE=$FILE_MAX_SIZE

if [ ! -d $FILES_PATH ]; then
  mkdir $FILES_PATH
fi

for (( dir=1;dir<=$DIR_NUM;dir++ )); do
  mkdir "$FILES_PATH/dir_$dir"
  for (( file=1;file<=$FILE_NUM;file++ )); do
    FILE_SIZE=$(($RANDOM%(FILE_MAX_SIZE)-$FILE_MIN_SIZE))+$FILE_MIN_SIZE
    FILE_SIZE=$(($RANDOM%FILE_MAX_SIZE))
    FILE_SIZE=$FILE_SIZE+$FILE_MIN_SIZE
    dd count=$FILE_SIZE if=/dev/zero of="$FILES_PATH/dir_$dir/file_$file" >> /dev/null 2>&1
  done
done

20120214

Se me ha apagao el monitor!!!!!

Hasta la polla estoy!!!
No han pasado ni quince minutos desde el inicio de la jornada, y ya me han tocado los huevos en más de una ocasión.
Algunas veces, te sorprendes, te ríes o simplemente te quedas perplejo de la tontería para la que te llaman, pero hay otras que por reincidentes terminan haciendo herida.
El caso de los monitores que no se enciendes un un claro ejemplo de ellos. Ya hace años que perdí la cuenta de la cantidad de llamadas recibidas en todos los años que llevo trabajando en el mantenimiento y atención a usuarios, para resolver el misterioso caso de un monitor que estando encendido, lo mueves un poco y se apaga, lo vuelves a mover otro poco y se enciende. Hay que ser zoquete para perder el tiempo y hacer que lo pierda alguien más con 'problemas' de este tipo. 
Cagon la puta, ¿pero tanto cuesta apretar de una puta vez el cable de alimentación del monitor? En más de una ocasión he pensado en crear un grupo Facebook o alguna otra mierda parecidad para aglutinar a la gente que padecemos este tipo de afección, y así intentar presionar a los fabricantes de monitores para que bien cambien el tipo de conector, bien lo coloque de forma que sea a prueba de $lusers. Pero al rato he caído en la cuenta de que el problema no es el objeto, el problema es el sujeto, que pueden llamarse así porque tienen el seso justo para mantenerse en pié.
Hoy una vez más, me ha tocado salir a otra sede a resolver este misterioso caso, después de haber avisado por teléfono de que lo más probable es que fuese problema del cable que no estaba bien conectado. Una vez más he ido, lo he apretado sin necesidad de una fuerza titánica, y viendo el resultado, el $luser sólo se ha limitado a sonreír y hacer un chiste.
¿Qué fue de la vergüenza torera? ¿No se les cae la cara al quedar tan claramente demostrado su patanería?
Para qué coño me pregunto tanto si ya se cual es la respuesta.
En fin.
Hasta la puta polla!!

20120206

kmail: error while loading shared libraries: libkontactinterface.so.4: cannot open shared object file: No such file or directory

Hace unos días, y después de darme cuenta de que mi Kubuntu 10.04 hacía tiempo que no me avisaba de actualizaciones de Amarok, me decidí a buscar la última release de este peaso de reproductor. En la web del programa encuentro que la última es la 2.5, disponible para Kubuntu 11.10. Como la versión de Kubuntu que tengo instalada es la LTS, y quiero esperar a que liberen la siguiente 12.04 antes de actualizar toda la distro, intento actualizar únicamente Amarok. Para ello, ejecuto:
sudo add-apt-repository ppa:kubuntu-ppa/backports
sudo apt-get update
sudo apt-get upgrade

tal y como indica la web de descargas.
Como mi versión de Kubuntu es algo más antigua, pues después de un par de problemillas que ni siguiera me acordé de anotar y de actualizar un buen chorro de paquetes, consigo actualizar Amarok, pero sólo hasta la versión 2.3.2, con KDE 4.5.3. Pues nada, todo correcto y yo tan contento.

Resulta también que, como ya indiqué en un post anterior, tengo configurado Kmail para descargarme el correo de Gmail de tanto en tanto, por si las moscas. Pues bien, lanzo krunner, y escribo kmail para lanzar el cliente de correo, y nada. Pruebo de nuevo, y nada de nada :-¿
Lanzo de nuevo krunner y ahora escribo konsole para ir a un terminal. Desde allí escribo kmail, y obtengo lo siguiente:
bdispatcher@laptop:~$ kmail
kmail: error while loading shared libraries: libkontactinterface.so.4: cannot open shared object file: No such file or directory
bdispatcher@laptop:~$

Ahí está el problema. Pues nada, vamos ver si me he cargado las dependencias, o si eso podemos resolverlo fácil:
bdispatcher@laptop:~$ find / -iname "libkontactinterface.so.4"
bdispatcher@laptop:~$ apt-cache search libkontactinterface
[sudo] password for bdispatcher: 
libkontactinterface4 - Kontact interface library
bdispatcher@laptop:~$ sudo apt-get install libkontactinterface4
.....

Así que depués de buscar la librería y no encontrarla, busco el paquete, y lo instalo, y pruebo de nuevo:
bdispatcher@laptop:~$ kmail
kmail: error while loading shared libraries: libakonadi-contact.so.4: cannot open shared object file: No such file or directory

Cagon to lo que se menea!! Repetimos proceso:
bdispatcher@laptop:~$  apt-cache search libakonadi-contact
libakonadi-contact4 - library for using the Akonadi PIM data server
bdispatcher@laptop:~$ sudo apt-get install libakonadi-contact4
.....

Después de instalar esta paquete, ya por fin puedo abrir Kmail sin problemas.
Durante la resolución del problema, me di cuenta que también se había visto afectado Knotes, y supongo que algún otro aplicativo también.


Some weeks ago, I followed this procedure described on the Amarok site to update this music player:
sudo add-apt-repository ppa:kubuntu-ppa/backports
sudo apt-get update
sudo apt-get upgrade

After download and install some packages, more than I thought, I could enjoy a new version of Amarok and some KDE Plasma changes too.

Days after, I tried to download the mails from my Gmail account as I described on a previous post. To do so, I ran krunner and typed kmail on it. I got nothing. Tried again and nothing again. I ran krunner one more and typed konsole to open a terminal to try on it:
bdispatcher@laptop:~$ kmail
kmail: error while loading shared libraries: libkontactinterface.so.4: cannot open shared object file: No such file or directory
bdispatcher@laptop:~$

And there was the problem. I didn't know if the dependences were broken or if it was just a simple problem with an easy solution, so:bdispatcher@laptop:~$ find / -iname "libkontactinterface.so.4"
bdispatcher@laptop:~$ apt-cache search libkontactinterface
[sudo] password for bdispatcher: 
libkontactinterface4 - Kontact interface library
bdispatcher@laptop:~$ sudo apt-get install libkontactinterface4
.....

After installing this lost package, I tried again::
bdispatcher@laptop:~$ kmail
kmail: error while loading shared libraries: libakonadi-contact.so.4: cannot open shared object file: No such file or directory

Damm!! Ok, once again:
bdispatcher@laptop:~$  apt-cache search libakonadi-contact
libakonadi-contact4 - library for using the Akonadi PIM data server
bdispatcher@laptop:~$ sudo apt-get install libakonadi-contact4
.....

And after this, everything worked perfectly. Along the time I got to solve this issue I noticed that Knotes had the same problem.

PS. I know, I know. My English is not good enought but, the more you help me, the more I learn.

20120201

Extender la partición de sistema de W2K3 - Extend the system volume on W2K3

Durante estas últimas semanas, he tenido que realizar más tareas administrativas de las planificadas, y eso se traduce en... sustos!!
Una de estas fue relacionada con uno de los servidores de W2K3 que tengo virtualizados sobre VMWare, y gracias. Sucede que este servidor se estaba quedando sin espacio en la partición de sistema y tocaba ampliar o reinstalar. Esto sin duda ha sido ocasionado por una mala planificación de la instalación, entre otras. Como reinstalar me da una pereza que no veas, la solución pasaba por ampliar el disco sobre el que se encuentra esta partición de sistema y aprovechando que está virtualizado he podido hacerlo sin problemas.
Extender una partición que no sea de sistema, teniendo espacio en el disco duro, es tan sencillo, como ejecutar la utilidad diskpart.exe. Si la partición es la de sistema como es mi caso, la cosa se complica un poco, y el echo de tener la máquina virtualizada, ayuda bastante. 
Para realizar este procedimiento nos hará falta una segunda máquina virtual con W2K3. Los pasos que he seguido han sido los siguientes:
1.- Snapshot de la vm, por si las moscas.
2.- Apago la vm.
3.- Aumento el tamaño del disco editando las propiedades de la vm, o a través de línea de comandos con vmkfstools, de modo que si queremos añadir 5GB al disco debemos ejecutar: vmkfstools -X 5G disk_name.vmdk
4.- Ahora, añadimos este disco a la segunda máquina virtual con W2K3 y la arrancamos. Este disco será el de sistema de la primera, pero no de la segunda, así que problema resuelto.
5.- En esta segunda vm extendemos el disco desde Windows:
  • Inicio -> ejecutar -> diskpart.exe
  • list volume para localizar la partición a extender
  • select volume 1 para seleccionar el volumen 1 si fuese este nuestro caso.
  • extent para extender el disco
  • Al finalizar nos dirá Diskpart successfully extended the volume si todo ha ido bien
  • exit para salir de la utilidad
6.- Por último sólo tenemos que apagar y desmontar el disco de esta vm, y montarlo y arrancar la primera, para comprobar que todo funciona.
No olvides borrar las instantáneas si todo funcionó correctamente.


To extend a non system volume on a W2K3 vm is pretty easy, but to extend a system partition we have to take a workaround.
First we need a second W2K3 virtual machine. The steps to extend the system volume are the following:
1.- Get a snapshot of the virtual machines.
2.- Switch off both vms.
3.- Increase the size of the disk which has the volume to extend, using the gui or the command line. To add 5GB to the file disk_name.vmdk, type: vmkfstools -X 5G disk_name.vmdk
4.- Mount the disk on the second vm and swith it on.
5.- Extend the volume using the Windows diskpart utility:
  • Start -> run -> diskpart.exe
  • list volume to locate the volume to extend
  • select volume 1 to select the volume to extend.
  • extend to extend the volume
  • Diskpart successfully extended the volume We'll get this message if the process ends without errors
  • exit
6.- Finally we have to switch off the second vm, umount the disk, mount it on the first vm, and switch it on to check if the it works.
Don't forget to delete the snapshots!!

PS. I know, I know. My English is not good enought but, the more you help me, the more I learn.

20120103

Sharing some news via Google+

Hi all.
I usually read some feeds about computers, security and techbologies. If some of them are interesting enough for me I'll share them with you via Google+.
Enjoy it!'