(gnome-ssh-askpass:3270): Gtk-WARNING **: cannot open display:

Más que un post, es una autonota, pero allá va.

Recientemente, tras installar un servidor con CentOS 6.6 y su entorno gráfico Gnome, me he encontrado con que al usar GIT para hacer un fetch de la última versión del repositorio, desde una conexión remota con SSH, lanza el siguiente error:

[root@SERVER html]# git fetch
(gnome-ssh-askpass:3270): Gtk-WARNING **: cannot open display:

Al parecer, al haber instalado Gnome, intenta lanzar la ventana de «introduzca password» del repositorio GIT, pero al estar conectado por SSH, no tengo entorno GTK. La solución es bien sencilla. Ejecutamos el siguiente comando y listo.

[root@SERVER html]# unset SSH_ASKPASS

Cada vez que iniciemos sesión, necesitaremos desactivar el SSH_ASKPASS, por lo que os recomiendo añadirlo en .bashrc para mayor comodidad.

Cómo activar el log de MySQL

mysql

Si dispones una versión de MySQL superior a la 5.1.29, puedes activar el log de toda la actividad de la base de datos de la siguiente manera (atención, necesitas ser root):

  1. Edita el fichero /etc/my.cnf
  2. Añade una línea al final del fichero que contenga: general_log_file=/ruta/a/tu/fichero.log

Reinicia el servicio de MySQL y cuando se haya levantado de nuevo, entra en MySQL y ejecuta la sentencia:

SET global general_log = 1;

Ya está, ahora puedes ver qué está haciendo MySQL en tiempo real con tan sólo escribir:

tail -f /ruta/a/tu/fichero.log

Según la cantidad de tráfico que tengas en tu servidor, el fichero puede llegar a ocupar mucho espacio, así que recuerda echarle un vistazo de vez en cuando.

Cómo configurar una impresora WiFi en Linux

En mi caso, voy a configurar una impresora Brother DCP-L2520DW, que es una impresora láser monocromo multifunción (con escáner incluido). La configuración para Linux Mint y Ubuntu son exactamente iguales, y probablemente también lo sea para cualquier otra distribución basada en Debian.

La información recopilada aquí, ha sido extraída de la web oficial de Brother, aunque también he tenido que recurir a otras varias fuentes para poder configurar el escáner vía WiFi. También doy por hecho que la impresora está correctamente conectada a la red inalámbrica y que es accesible desde los PCs.

Empezaremos instalando un par de paquetes del repositorio, que serán necesarios posteriormente:

sudo apt-get install ia32-libs sane-utils

Paso 1. Descargar los drivers.

En la web de Brother, podemos encontrar todos los drivers que necesitamos. En mi caso, pra el modelo DCP-L2520DW, he tenido que descargar desde aquí los siguientes elementos:

  1. Generic LPR printer driver (deb package)
  2. Generic CUPSwrapper printer driver (deb package)
  3. Scanner driver 64bit (deb package)

Los dos primeros, son para la impresora en sí, y el último nos permitirá acceder a escáner. Recuerda seleccionar correctamente tu plataforma para descargar el paquete correcto (deb, para distribuciones basadas en Debian y rpm para distribuciones basadas en RedHat, así como paquetes 64 o 32 bits).

Paso 2. Instalar los drivers.

Una vez descargados los tres paquetes (necesarios en mi caso) .deb, vamos a instalarlos. Para ello, hay que ejecutar los siguientes comandos en un terminal (recuerda que para realizar este paso es necesario tener privilegios de root)

sudo dpkg -i --force-all brscan4-0.4.3-0.amd64.deb
sudo dpkg -i --force-all brgenml1lpr-3.1.0-1.i386.deb
sudo dpkg -i --force-all brgenml1cupswrapper-3.1.0-1.i386.deb

Esto instalará los tres paquetes. Podemos verificar la instalación de los tres con el siguiente comando:

sudo dpkg -l  |  grep  Brother

El comando anterior debería mostrar una lista similar a la siguiente:

ii brgenml1cupswrapper 3.1.0-1  i386   Brother  BrGenML1 CUPS wrapper driver
 ii brgenml1lpr         3.1.0-1  i386   Brother  BrGenML1 LPR driver
 ii brscan4             0.4.3    amd64  Brother  Scanner Driver

 Paso 3. Configuración de impresora

Una vez instalado, deberemos editar el fichero /etc/printcap para adaptarlo a nuestra configuración, de la siguiente manera:

sudo nano /etc/printcap

Y buscaremos la línea que empieza con :lp. Esta línea (sólo para la configuración WiFi) debe ser eliminada, y en su lugar deberemos escribir lo siguiente:

:rm=xx.xx.xx.xx\
 :rp=lp\

Guardamos y salimos.

Ahora añadiremos la impresora al sistema. Para ello, podemos ir a la configuración de impresoras de Mint, en el Configuración del sistema, y configurar o añadir (si no aparece) una nueva impresora.

Los parámetros necesarios para que funcione son:

Si añades una nueva, el dispositivo tiene que ser de tipo:

LPD/LPR Host or Printer" or "AppSocket/HP JetDirect"

Device URI, en el que se debe escribir:

lpd://xx.xx.xx.xx/binary_p1

Guardamos y ya podemos hacer una prueba de impresión. Si todo ha ido bien, saldrá una bonita página de prueba.

Paso 4. Configuración de escáner

Ya tenemos casi todo listo, vayamos a configurar el escáner. Para ello, debemos tener instalado brsaneconfig4 que debería venir dentro del paquete instalado al inicio sane-utils.

Configurar el escáner es facil. Sólo hay que ejecutar:

brsaneconfig4 -a name=scanner model=DCP-L2520DW ip=xx.xx.xx.xx

Esto debería ser suficiente para que al abrir cualquier aplicación para escáner, (en mi caso, simple scan) detecte tu nuevo dispositivo.

Como nota, en los pasos en los que he escrito xx.xx.xx.xx, es necesario que sea sustituido por la IP de la impresora a configurar.

Este procedimiento, ha sido comprobado tanto en Linux Mint 17 Qiana, como en Ubuntu 14.x con la impresora Brother, aunque seguramente será muy similar en otros entornos con otras impresoras.

Próximo objetivo: Configurar la impresora en Android!

Backlight de la pantalla de Acer

Atención! Este artículo puede estar obsoleto. En nuevas versiones de Linux Mint (a partir de la 17.3) ya está solucionado y no es necesario tocar nada para que funcione correctamente.

Me he encontrado en las últimas versiones de Ubuntu y Linux Mint que no funciona correctamente la opción de subir o bajar el brillo de la pantalla en mi portátil Acer, utilizando las teclas [Fn] + izq/der. No sé a que puede ser debido que en las últimas versiones falle, cuando antes funcionaba perfectamente, pero he encontrado aquí cómo solucionarlo:

Editar como root el fichero /etc/default/grub

y en la linea que empieza conGRUB_CMDLINE_LINUX

debe quedar de la siguiente manera:GRUB_CMDLINE_LINUX="quiet splash acpi_osi=Linux acpi_backlight=vendor"

Tras hacer el cambio, ejecutarsudo update-grub

y reiniciar el PC.

Con esto se soluciona el problema. 🙂

GPG error

Hace algunos días que aparece un molesto error en mi Ubuntu, relacionado con las actualizaciones del sistema. El error que aparece es:

Reading package lists… Done
W: A error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: http://extras.ubuntu.com oneiric Release: The following signatures were invalid: BADSIG 16126D3A3E5C1192 Ubuntu Extras Archive Automatic Signing Key <ftpmaster@ubuntu.com>W: GPG error: http://archive.canonical.com oneiric Release: The following signatures were invalid: BADSIG 40976EAF437D05B5 Ubuntu Archive Automatic Signing Key <ftpmaster@ubuntu.com>
W: GPG error: http://archive.canonical.com lucid Release: The following signatures were invalid: BADSIG 40976EAF437D05B5 Ubuntu Archive Automatic Signing Key <ftpmaster@ubuntu.com>
W: Failed to fetch http://extras.ubuntu.com/ubuntu/dists/oneiric/Release

W: Some index files failed to download. They have been ignored, or old ones used instead.

Este error viene acompañado del icono permanente en la barra superior. He encontrado en ubuntuforums la manera de solucionarlo. Allá va:

pedro@pedro-laptop:~$ sudo su
[sudo] password for pedro:
root@pedro-laptop:/home/pedro# cd /var/lib/apt
root@pedro-laptop:/var/lib/apt# mv lists lists.old
root@pedro-laptop:/var/lib/apt# mkdir -p lists/partial
root@pedro-laptop:/var/lib/apt# apt-get clean && apt-get update

Listo!! 😀

How to mount a ISO image under Linux

This post will be short. I wil only write the necessary commands to mount an ISO under Linux.

1. Open your terminal and get root

pedro@pedro-laptop:$ sudo su

2. Create the directory where we wanto to mount the ISO image

root@pedro-laptop:$ mkdir /media/iso

3. Mount the image in the directory as shown below

root@pedro-laptop:$ mount -o loop image.iso /media/iso

Where image.iso is the ISO file we want to mount, and /media/iso is the directory we created previously.

That’s all, now we can go to the directory where the ISO is mounted and explore it like a regular CD or DVD!

pedro@pedro-laptop:$ ls -lah /media/iso

In order to umount, just launch the command as superuser

pedro@pedro-laptop:$ sudo umount /media/iso

Montar una ISO en linux

Este post será corto. Tan sólo escribiré los comandos necesarios para montar una imagen ISO en linux.

1. Abrimos la consola y obtenemos root

pedro@pedro-laptop:$ sudo su

2. Creamos el directorio en el que montaremos la imagen ISO

root@pedro-laptop:$ mkdir /media/iso

3. Montamos la imagen en el directorio de la siguiente manera

root@pedro-laptop:$ mount -o loop imagen.iso /media/iso

Donde imagen.iso es el fichero en formatio ISO que queremos montar, y /media/iso es el directorio que hemos creado previamente.

Ya está, ahora ya podemos ir al directorio en que hemos montado la imagen como si de un CD o DVD se tratase!

pedro@pedro-laptop:$ ls -lah /media/iso

Para desmontar la unidad, tan sólo hay que hacer un umount como superusuario

pedro@pedro-laptop:$ sudo umount /media/iso

How to create a mountpoint trough SSH

For console addicted, accessing trough SSH to a server is a really common task. Under my point of view, usually console text editors like vi or nano are not the best option to work with a lot of files at the same time like we can do with any other graphic text editors.
So, I decided to make an internet search to try to find an application able to mount a SSH connection like a standard file system. The application is called sshfs, they didn’t think a lot to get the name 😛
In order to install it, if you use ubuntu, just click on sshfs or write the command below in a terminal:
pedro@pedro-laptop:~$ sudo apt-get install sshfs
Once installed, you only need this command to get it work:
pedro@pedro-laptop:~$ sshfs user@server.com:/my/directory /media/ssh
Where:
  • user, is the name of the SSH user,
  • server.com:, is the name of the server (colon is required)
  • /my/directory, is the remote directory you want to mount, and
  • /media/ssh, is the local directory where the mountpoint will be placed
That’s all, you can now open the directory /media/ssh like any other local directory and open files with your favourite text editor 🙂

Cambiar el día de inicio de semana en Unity y Gnome

Si has instalado la versión de Ubuntu con idioma inglés de Estados Unidos, seguro que el día inicial de la semana es el Domingo, en vez del Lunes, en el applet de calendario. No existe ninguna opción desde donde esto se pueda modificar fácilmente, y hay muchos usuarios (como yo) que están acostumbrados a ver el calendario empezando en Lunes. Esta pequeña guía muestra cómo cambiarlo paso a paso.
  1. Abre tu terminal favorito, y edita el fichero /etc/default/locale
    pedro@pedro-laptop:~$ sudo nano /etc/default/locale
  2. Verás una linea que contiene LANG=»en_US.UTF-8″. A continuación deberás añadir las siguiente lineas, sin borrar la que ya existe:
    LC_TIME=»en_GB.UTF-8″
    LC_PAPER=»en_GB.UTF-8″
    LC_MEASUREMENT=»en_GB.UTF-8

    Guarda los cambios y sal del editor. Con esas opciones, Ubuntu mostrará el formato de fecha en la variante europea del inglés, establecerá el tamaño del papel por defecto en A4 y las medidas en formato métrico.

    Para poder disfrutar de la nueva configuración hay que reiniciar el gestor gráfico. Para hacerlo escribe:

    pedro@pedro-laptop:~$ sudo /etc/init.d/gdm restart
Ten cuidado! Al ejecutar el último comando, se reiniciará el demonio gdm, y cerrará todas las aplicaciones. Así que asegúrate de haber guardado tus documentos abiertos antes de hacerlo
Ubuntu Calendar Applet
Calendario empieza en Lunes

Change Gnome and Unity week start day

If you have installed the United States language version of Ubuntu, for sure you have your start week day set to Sunday, instead of Monday, at your calendar applet. There isn’t an option where the user can change this in an user-friendly way, and there are a lot of non-US users (like me) who are used to see the week starting by Monday. This little HOW-TO will show you the way to change it step by step.

  1. Open your favorite terminal application, and edit the file /etc/default/locale
    pedro@pedro-laptop:~$ sudo nano /etc/default/locale
  2. You will se one line containing LANG=»en_US.UTF-8″. Now you have to add the following lines, without removing the first one:
    LC_TIME=»en_GB.UTF-8″
    LC_PAPER=»en_GB.UTF-8″
    LC_MEASUREMENT=»en_GB.UTF-8

    Save the file and exit the editor. With these options, Ubuntu will display the time format in the english european variant, set the default paper size to A4 and set metrics for use with measurements.

  3. In order to start using the new configuration you should restart your graphic desktop manager. Just type this:
    pedro@pedro-laptop:~$ sudo /etc/init.d/gdm restart
Take care! Executing the last command will restart your gdm, and will close all running applications. So please, be sure to save your work before doing this.
Ubuntu Calendar Applet
Calendar starting on Monday