Mostrando entradas con la etiqueta solved. Mostrar todas las entradas
Mostrando entradas con la etiqueta solved. Mostrar todas las entradas

20170315

Firefox 52 y Java (NPAPI plugins) - Firefox 52 and Java (NPAPI plugins)

Estos días está habiendo mucho revuelo con los problemas de Java con Firefox (o al revés), siendo el navegador de Mozilla la última alternativa viable (y viable excluye a IExploter) para la ejecución de plugins de Java en entorno web, así que he sacado dos minutos para publicar.

La cosa es que desde la aparción de Firefox 52, los plugins NPAPI dejan de funcionar, ya no aparecen disponibles en about:plugins. Esto no deja de ser un problema, por la cantidad de sitios que todavía hacen uso de este tipo de tecnología para, por ejemplo uso de certificados digitales, etc. La culpa puede que termine siendo del Chá Chá Chá, pero no es algo que toque debatir ahora (es de los programadores perezosos, que han tenido tiempo de sobra para modificar las aplicaciones).

Si accedemos a www.java.com para comprobar si tenemos o no el plugin instalado y en funcionamiento nos aparecerá un mensaje similar a este:
A partir de la versión 52 de Firefox (programada para marzo de 2017), Firefox limitará los plugins con los que es compatible y, por lo tanto, no ejecutará Java.


Como medida de auxilio podemos pelearnos con las opciones dentro de about:config, algo que la propia Mozilla desaconseja a los manazas. Pare ello debemos seguir los siguientes pasos:
  1. En una nueva pestaña introducir la en el campo de dirección lo siguiente: about:config
  2. Aceptar los riesgos que conlleva editar la configuración desde aquí
  3. Hacer clic derecho en cualquier sitio de la página y Nuevo > sí/no
  4. Introducir plugin.load_flash_only como nombre de preferencia
  5. Asignar el valor false
  6. Reiniciar el navegador
Una vez hecho esto deberían volver a estar disponibles el resto de plugins instalados y por lo tanto podremos hacer uso de las webs que los requieren.
De todos modos, hay que tener en cuenta que esto es una medida de urgencia, o lo que viene siendo pan para hoy, hambre para mañana, así que lo conveniente sería modificar los sitios para que dejen de utilizar estos plugins o instar en su caso a los desarrolladores de los mismos a que lo hagan

Paz y suerte.




Starting with Firefox Version 52 (scheduled for March 2017), Firefox has limited support for NPAPI plug-ins, and therefore will not run Java.
To enable this plugins you should follow the following steps:
  1. On a new tab, enter the following in the URL field: about:config
  2. Accept the risk of entering in the advance settings.
  3. Right click anywhere on the pache and New > true/false
  4. Enter  plugin.load_flash_only as preference name
  5. Set the false value
  6. Restart the browser
And enjoy it but you should keep in mind that this is a temporary solution or patch and the only actual solution is to modify the web sites to do not use the NPAPI plugins.

Peace and luck.
PS. I know, I know. My English is still quite poor but, the more you fix 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.

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

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.

20111129

Thunderbird: autoguardar adjuntos - Thunderbird: autosave attachments

Hoy, y después de que unos días atrás introdujese a un $luser en el mundillo de los filtros del cliente de email Mozilla Thunderbird, me ha preguntado si era posible guardar los adjuntos de los correos recibidos cuyo remitente fuese uno en concreto.
La verdad es que no tenía ni idea (y menos mal, que si lo supiese todo igual o era insoportable, o iba por ahí soltando babas y con un embudo en la cabeza), así que me he tirado (no literalmente) a Google y he encontrado la extensión o complemento AttachmentExtractor que, como su nombre indica, pues extrae adjuntos!
Entre las opciones que nos ofrece se encuentran:
  • extraer todos los adjuntos de los mensajes seleccionados
  • autoguardar en una carpeta ya seleccionada, los adjuntos de los mensajes después de recibirlos

La cosa es que este $luser en cuestión necesitaba hacer esto sólo con los mensajes enviados por un remitente en concreto. Pues bien, la extensión nos permite autoguardar los adjuntos de los mensejes con una etiqueta determinada, así que lo que he hecho ha sido lo siguiente:
  1. crear la etiqueta Extrated
  2. crear un filtro para para que etiquete y mueva a una carpeta de la bandeja de entrada los mensajes del remitente en cuestión
  3. configurar AttachmentExtractor para que autoguarde después de recibir, los adjuntos de los email etiquetados como Extracted. Esto se configura en las opciones de la extensión -> Extraer automáticamente y he marcado:

Y a funcionar. A que mola?

Today a $luser, after introduce him into the Mozilla Thunderbird tags' world, asked my about the posibility of autosaving the attachments of the incoming emails. After few seconds wearing my best poker face, I was searching the web looking for the answFew seconds wearing my best poker face, I was searching the web looking for the answer! An it name is AttachmentExtractor, an extension that allows you to autosave the attachment of a group of selected emails.er! An its name is AttachmentExtractor, an extension that allows you to autosave the attachment of a group of selected emails, and more. But $lusers are $lusers and the more you work the less they do! And he needed to autosave just some of the new incoming emails so I have to use my fly's brain and configure his mail client to do the following:
to create the tag Extracted
to configure a filter to mark the dessired email with this label
to configure AttachmentExtractor to autosave the attachments of the incoming emails marked as Extracted (look at the picture above)

And ta-dah!!!

PS. Is there anybody out there? Help me with my English and correct my mistakes! Thanks a lot.

20111121

Kate en modo VI - Using Kate as VI

Ave geeks!
Si eres uno de esos a los que alguna vez se le ha colado un :wq utilizando el editor de textos de KDE Kate estás de suerte, porque aunque no hay cura para los vi-maníacos, podemos configurar Kate para que se comporte de forma similar a VI.
Para ello sólo tenemos que a Preferencias -> Configurar Kate -> Edición y en la pestaña Modo de entrada de VI encontramos lo que buscábamos.
Disfrutadlo con mesura que engancha!

Hi geeks!
I you are one of those who write :wq at least once a week using the Kate, the KDE text editor, this post is for you. There's no cure for that, or not jet, but you can customize Kate to work as VI.
Go to Settings -> Configure Kate -> Editting -> VI input mode
There you'll find everything you were looking for.
Enjoy it!

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

20111119

Forzar chequeo de disco al reiniciar - Force check disk on next boot

Estos días he querido realizar un chequeo de los discos de un servidor GNU/Linux con particiones ext4, principalmente porque lo he pasado de físico a virtual y quería comprobar la integridad de estos.
Para hacerlo he utilizado la herramienta tune2fs que permite ajustar determinados parámetros de los sistemas de archivos ext2/ext3/ext4.
Normalmente el chequeo de discos se produce por los siguientes motivos:
 - se detecta algún problema y se chequea para eliminar inconsistencias
 - se ha alcanzado el tiempo máximo entre chequeo y chequeo (Check interval)
 - se ha alcanzado el número máximo de montajes (Maximun mount count)

Para ver estos parámetros introducimos lo siguiente en la consola, siendo /dev/sda1 nuestro fylesystem:
bdispatcher@server:~$ sudo tune2fs -l /dev/sda1

Lo que nos devuelve la información del sistema de archivos /dev/sda1 y que entre otras cosas contiene:
tune2fs 1.41.11 (14-Mar-2010)
Filesystem volume name:   <none>
Last mounted on:          /
Filesystem UUID:          3c30b294-a5f9-43d5-a679-ec12fee8f013
Filesystem magic number:  0xEF53
Default mount options:    (none)
Filesystem state:         clean
Filesystem OS type:       Linux
Mount count:              8
Maximum mount count:      34
Last checked:             Sat Oct 29 12:44:27 2011
Check interval:           15552000 (6 months)
Next check after:         Thu Apr 26 12:44:27 2012

Así que para forzar el chequeo en el próximo reinicio podemos cambiar cualquiera de esas condiciones. En este caso, cambiaremos el número de veces que se ha montado el filesystem:
bdispatcher@server:~$ sudo tune2fs -C 35 /dev/sda1
tune2fs 1.41.11 (14-Mar-2010)
Se pone la cuenta de montajes actual a 35
bdispatcher@server:~$ sudo tune2fs -l /dev/sda1 | grep -i mount
Last mounted on:          /
Default mount options:    (none)
Last mount time:          Sat Nov 19 15:48:33 2011
Mount count:              35
Maximum mount count:      34

Si queremos chequear todos los fylesystems, podemos optar por lo siguiente:
bdispatcher@server:~$ sudo touch /forcefsck

Con esto conseguiremos que en el próximo inicio se haga un chequeo completo de todos los fylesystems. El fichero forcefsck se borrará cuando termine el chequeo.

Agur!


Last week I wanted to check the filesystems of GNU/Linux box with ext4 partitions,  because I've migrated it from phisical to virtual (P2V).
To do that I used the tune2fs command which allows you to adjust tunable parameters on ext2/ext3/ext4 fylesystems.
Normally a fylesystem check occurs for the following reasons:
 - some inconsistency detected
 - the check interval has expired (Check interval)
 - the max mount count has been reached (Maximun mount count)

To show these parameter of the /dev/sda1 fylesystem, let's enter the following on a console:
bdispatcher@server:~$ sudo tune2fs -l /dev/sda1

And this is a brief summary of the info we get:
tune2fs 1.41.11 (14-Mar-2010)
Filesystem volume name:   <none>
Last mounted on:          /
Filesystem UUID:          3c30b294-a5f9-43d5-a679-ec12fee8f013
Filesystem magic number:  0xEF53
Default mount options:    (none)
Filesystem state:         clean
Filesystem OS type:       Linux
Mount count:              8
Maximum mount count:      34
Last checked:             Sat Oct 29 12:44:27 2011
Check interval:           15552000 (6 months)
Next check after:         Thu Apr 26 12:44:27 2012

So to force the filesystem chek on next boot we could change one o those conditions. In this case we'll change the Mount count value:
bdispatcher@server:~$ sudo tune2fs -C 35 /dev/sda1
tune2fs 1.41.11 (14-Mar-2010)
Setting mount count to 35
bdispatcher@server:~$ sudo tune2fs -l /dev/sda1 | grep -i mount
Last mounted on:          /
Default mount options:    (none)
Last mount time:          Sat Nov 19 15:48:33 2011
Mount count:              35
Maximum mount count:      34

We can also force a full filesystem check just 'touching' the following file:
bdispatcher@server:~$ sudo touch /forcefsck

After entering this command will get a full fylesystem check on the next boot. The  forcefsck file will be deleted on the next boot.

Ciao!

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

20111105

Modo VI en la línea de comandos - VI mode on the command line

Desde los primeros días de mi primer trabajo en el que tuve que enfrentarme con la consola de equipos GNU/Linux me acostumbré, por consejo de un ex-jefe y amigo, a utilizarla en modo de comandos vi.
Para conseguir esto, basta con introducir lo siguiente:
set -o vi

A partir de ese momento, la consola funciona como el editor vi, así tienes un modo de inserción y un modo de ejecución de comandos. Desde este, por ejemplo, puedes realizar búsquedas en tu historial de comandos, como si buscases dentro de un documento de texto con vi.
Para volver al modo habitual, introduce lo siguiente:
set -o emacs

Por defecto los sistemas suelen venir en modo emacs, por lo que si como yo, prefieres el modo vi, puedes hacer que sea el predeterminado añadiendo la siguiente entrada al fichero /etc/inputrc:
set editting-mode vi

A disfrutarlo (o sufrirlo según el caso ;P)

Since first days I start working with GNU/Linux I got used to type and work with the vi mode enabled on the command line. To achieve this, just type the following:
set -o vi

Once you have change into the vi mode, the command line works as the vi editor, so it has the insert and the commands modes to work with. So if you, for instance, wants to search for a recently typed command, you can look for it on the same way you'll do on the vi editor.
To return to the previos configuration, just type:
set -o emacs

By default, the systems use to be configured on the emacs mode, but if you like the vi mode, you can do it the the default mode just adding to the /etc/inputrc the following line:
set editting-mode vi

Enjoy it (or suffer with it ;P)

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

20111102

Yum GLib-CRITICAL error

Uno de estos días, intentando instalar un paquete en uno de los equipos CentOS (en este caso era un CentOS 4.2 bastante antiguo) que tengo, me he encontrado con el siguiente problema:
[root@server usuarios]# yum search package
Searching Packages:
Setting up repositories
Reading repository metadata in from local files
(process:21149): GLib-CRITICAL **: file gtimer.c: line 106 (g_timer_stop): assertion `timer != NULL' failed
(process:21149): GLib-CRITICAL **: file gtimer.c: line 88 (g_timer_destroy): assertion `timer != NULL' failed
Traceback (most recent call last):
  File "/usr/bin/yum", line 29, in ?
    yummain.main(sys.argv[1:])
  File "/usr/share/yum-cli/yummain.py", line 97, in main
    result, resultmsgs = do()
  File "/usr/share/yum-cli/cli.py", line 596, in doCommands
    return self.search()
  File "/usr/share/yum-cli/cli.py", line 1216, in search
    matching = self.searchPackages(searchlist, args, callback=self.matchcallback)
  File "__init__.py", line 1061, in searchPackages
  File "/usr/share/yum-cli/cli.py", line 75, in doRepoSetup
    self.doSackSetup(thisrepo=thisrepo)
  File "__init__.py", line 260, in doSackSetup
  File "repos.py", line 277, in populateSack
  File "/usr/lib64/python2.3/site-packages/sqlitecachec.py", line 40, in getPrimary
    self.repoid))
TypeError: Can not create index on requires table: near "NOT": syntax error

Para resolverlo lo que hice fue reinstalar el paquete yum. Antes de eso lo busqué dentro de la caché de yum en ese equipo y ahí estaba. Si no hubiese sido así, habría tenido que tirar de los mirrors de CentOS:
[root@server py]# cd  /var/cache/yum/
[root@server yum]# find . -iname "*yum*"
./update/packages/centos-yumconf-4-4.5.noarch.rpm
./update/packages/yum-2.4.2-2.centos4.noarch.rpm
./update/headers/centos-yumconf-4-4.5.noarch.hdr
./update/headers/yum-2.4.2-2.centos4.noarch.hdr
./base/packages/yum-2.4.3-3.el4.centos.noarch.rpm
./base/packages/yum-2.4.3-4.el4.centos.noarch.rpm
./base/packages/yum-metadata-parser-1.0-8.el4.centos.x86_64.rpm
./base/headers/yum-metadata-parser-1.0-8.el4.centos.x86_64.hdr
./base/headers/yum-2.4.3-4.el4.centos.noarch.hdr
./base/headers/yum-2.4.3-3.el4.centos.noarch.hdr

Y ahora sólo resta reinstalar:
[root@server yum]# rpm -Uvh ./base/packages/yum-2.4.3-4.el4.centos.noarch.rpm

Y a funcionar:
[root@server yum]# yum search fdupes
Searching Packages:
Setting up repositories
Reading repository metadata in from local files
update    : ################################################## 1760/1760
Added 1760 new packages, deleted 0 old in 12.75 seconds
primary.xml.gz            100% |=========================| 715 kB    00:10    
base      : ################################################## 1844/1844
Added 781 new packages, deleted 725 old in 9.52 seconds
primary.xml.gz            100% |=========================|  192 B    00:00    
Added 0 new packages, deleted 0 old in 0.05 seconds
primary.xml.gz            100% |=========================|  42 kB    00:00    
extras    : ################################################## 149/149
Added 59 new packages, deleted 58 old in 0.45 seconds
No Matches found


Few day ago, I was trying to install a new package on one of my CentOS box (and old CentOS 4.2 server) when I got the following message::
[root@server usuarios]# yum search package
Searching Packages:
Setting up repositories
Reading repository metadata in from local files
(process:21149): GLib-CRITICAL **: file gtimer.c: line 106 (g_timer_stop): assertion `timer != NULL' failed
(process:21149): GLib-CRITICAL **: file gtimer.c: line 88 (g_timer_destroy): assertion `timer != NULL' failed
Traceback (most recent call last):
  File "/usr/bin/yum", line 29, in ?
    yummain.main(sys.argv[1:])
  File "/usr/share/yum-cli/yummain.py", line 97, in main
    result, resultmsgs = do()
  File "/usr/share/yum-cli/cli.py", line 596, in doCommands
    return self.search()
  File "/usr/share/yum-cli/cli.py", line 1216, in search
    matching = self.searchPackages(searchlist, args, callback=self.matchcallback)
  File "__init__.py", line 1061, in searchPackages
  File "/usr/share/yum-cli/cli.py", line 75, in doRepoSetup
    self.doSackSetup(thisrepo=thisrepo)
  File "__init__.py", line 260, in doSackSetup
  File "repos.py", line 277, in populateSack
  File "/usr/lib64/python2.3/site-packages/sqlitecachec.py", line 40, in getPrimary
    self.repoid))
TypeError: Can not create index on requires table: near "NOT": syntax error

To solve this issue I reinstalled the yum package. I looked for it on the yum cache and there it was, but if not, I could download it from one of the CentOS mirrors:
[root@server py]# cd  /var/cache/yum/
[root@server yum]# find . -iname "*yum*"
./update/packages/centos-yumconf-4-4.5.noarch.rpm
./update/packages/yum-2.4.2-2.centos4.noarch.rpm
./update/headers/centos-yumconf-4-4.5.noarch.hdr
./update/headers/yum-2.4.2-2.centos4.noarch.hdr
./base/packages/yum-2.4.3-3.el4.centos.noarch.rpm
./base/packages/yum-2.4.3-4.el4.centos.noarch.rpm
./base/packages/yum-metadata-parser-1.0-8.el4.centos.x86_64.rpm
./base/headers/yum-metadata-parser-1.0-8.el4.centos.x86_64.hdr
./base/headers/yum-2.4.3-4.el4.centos.noarch.hdr
./base/headers/yum-2.4.3-3.el4.centos.noarch.hdr

So lets reinstall it:
[root@server yum]# rpm -Uvh ./base/packages/yum-2.4.3-4.el4.centos.noarch.rpm

And now it works:
[root@server yum]# yum search fdupes
Searching Packages:
Setting up repositories
Reading repository metadata in from local files
update    : ################################################## 1760/1760
Added 1760 new packages, deleted 0 old in 12.75 seconds
primary.xml.gz            100% |=========================| 715 kB    00:10    
base      : ################################################## 1844/1844
Added 781 new packages, deleted 725 old in 9.52 seconds
primary.xml.gz            100% |=========================|  192 B    00:00    
Added 0 new packages, deleted 0 old in 0.05 seconds
primary.xml.gz            100% |=========================|  42 kB    00:00    
extras    : ################################################## 149/149
Added 59 new packages, deleted 58 old in 0.45 seconds
No Matches found

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

20111020

fdupes: Buscar ficheros duplicados - fdupes: Find duplicate files

Seguro que a muchos de vosotros se os ha presentado la situación de tener que buscar duplicados en vuestros sistemas GNU/Linux, ya sea en local o en red.
Buscando por la red puedes encontrar utilidades ya sea para la línea de comandos o con GUI. La cosa es que yo suelo utilizar fdupes.
Esta utilidad nos permite buscar y, si los encuentra, borrar los ficheros duplicados en nuestros discos.
Instalar esta utilidad en (K)Ubuntu es tan sencillo como:
sudo apt-get install fdupes

Una vez instalado sólo debemos ejecutarlo sobre la unidad que queramos y esperar el resultado.
bdispatcher@laptop:~$ sudo fdupes -r /home/bdispatcher/docs/web/
/home/bdispatcher/docs/web/backup/diptico_trip.FH11
/home/bdispatcher/docs/web/diptico_trip.FH11

/home/bdispatcher/docs/web/backup/fonfo1.jpg
/home/bdispatcher/docs/web/fonfo1.jpg

/home/bdispatcher/docs/web/backup/NORMAL
/home/bdispatcher/docs/web/NORMAL

/home/bdispatcher/docs/web/backup/Gothic.TTF
/home/bdispatcher/docs/web/Gothic.TTF

Cómo muchos de vosotros supondréis, fdupes hace uso del MD5 de los ficheros para ver si se encuentran duplicados o no.
Para más info sobre el uso de este comando, you know, man.

Probably most of you have wondered yourselves about the amount of disk wasted becouse of duplicate files on your GNU/Linux systems.
You could find some utils searching the web, but I'll reccomend you fdupes which would allow you to search and delete, if exists, the duplicate files on your filesystem.
To install this utility on your K(Ubuntu) system you only have to type is:
sudo apt-get install fdupes

Once installed, you just have to run it and wait for the result:
bdispatcher@laptop:~$ sudo fdupes -r /home/bdispatcher/docs/web/
/home/bdispatcher/docs/web/backup/diptico_trip.FH11
/home/bdispatcher/docs/web/diptico_trip.FH11

/home/bdispatcher/docs/web/backup/fonfo1.jpg
/home/bdispatcher/docs/web/fonfo1.jpg

/home/bdispatcher/docs/web/backup/NORMAL
/home/bdispatcher/docs/web/NORMAL

/home/bdispatcher/docs/web/backup/Gothic.TTF
/home/bdispatcher/docs/web/Gothic.TTF

As you could guess fdupes use MD5 to find out if two files are the same.
To get more info about this command, you know, man. 

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