Archivo de la etiqueta: linux

Login remoto a otra máquina con VNC

En otro truco, hace días, os hablaba de VNC para acceder a otra máquina de tu red local.

Pero esto se queda un poco corto. Supongamos que quieres un verdadero login remoto, es decir, convertir la máquina remota en un verdadero ordenador multiusuario, de tal forma que un usuario pueda entrar en su escritorio  de forma remota, al mismo tiempo que otro usuario accede al suyo en la propia máquina remota.

Asumo que en tu máquina ya tienes un servidor VNC funcionando y configurado (por ejemplo, en mi caso, Xvnc4). No es muy complicado, de todas formas: solo tienes que instalar el paquete vnc4server con apt-get (en el caso de Ubuntu) y después arrancar el servidor con el comando vncserver. Te pedirá una contraseña para que protejas el acceso, así que dásela. Pero de todas formas, en el método que describo a continuación, se desactiva la autentificación propia de VNC porque usará la autentificación de tu propio escritorio.

Bien, para hacer un login remoto como usuario, hay que combinar XDMCP con VNC, de tal forma que se active el servidor VNC de la máquina remota bajo demanda, sin que tengas que hacerlo a mano cada vez (nada de SSH para activar el servidor).

Para ello, en primer lugar, debes crear un puerto específico destinado a VNC en la máquina remota echando mano del demonio xinetd. Edita el fichero /etc/services y añade una línea que diga esto:

vnc    5908/tcp   #Xvnc

Esto activa el puerto 5908 para el servicio VNC. Vale, ahora tienes que decirle al ordenador remoto lo que tiene que hacer cada vez que reciba una petición de acceso en ese puerto. Para ello crea un fichero /etc/xinetd.d/vnc que diga tal que esto:

# Default: on

# Descripcion: El servidor vnc se activa bajo demanda
service vnc
{
disable = no
socket_type = stream
protocol = tcp
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = :8 -inetd -once -query localhost -depth 24 -geometry 1280x1024 -securitytypes=none
}

El parámetro «server» dice qué programa atenderá la petición de acceso (en este caso, el servidor VNC), y el parámetro «server_args» dice con qué parámetros se activa (en este caso dice que se usará la pantalla 8, que se pondrá en marcha con el acceso y se detendrá cuando se cierre, que el servidor hará una conexión local XDMCP, que tendrá una profundidad de color de 24 bits, con un escritorio de 1280×1024 y que se desactiva la autenticación de VNC).

¿Ya?. Vale, ahora reinicia el servicio xinetd con un «sudo /etc/init.d/xinetd restart«.

Vale, ahora tienes que activar XDMCP en sí mismo. Esto dependerá de qué gestor de pantallas uses. Si estás usando gdm (Gnome), que es lo más habitual, entonces edita el fichero /etc/gdm/custom.conf y en el apartado [xdmcp] cambia la línea «Enable=false» por «Enable=true«. Esto es lo que ocurre en Ubuntu, para ser más exactos. En otros sistemas puede que te venga mejor ejecutar gdmsetup, o si usas KDE  editar los ficheros de configuración de kdm, o en otros sistemas los de xdm (si no usas ni Gnome ni KDE). En cualquiera de los casos, ya sea en gdm, kdm o xdm, tienes que acceder a la configuración y activar la opción XDMCP. Para localizar los ficheros en cuestión te puede ayudar el comando «find /etc -name gdm» por ejemplo, o averiguar cómo hacerlo en tu sistema buscando en Google (por ejemplo «ubuntu habilitar xdmcp»)

Vale, ahora reinicia el servidor gráfico o mejor resetea la máquina entera. Con esto ya has terminado en la máquina remota.

Ahora vete a la máquina cliente, abre un terminal y teclea: «vncviewer selene:5908«. Bien, obviamente, no tienes que teclear esto exactamente, sino el nombre (o la IP) de tu propia máquina remota.

Y ahora deberías abrirse en tu pantalla algo así:

La máquina remota ofreciendo login a través de VNC

Tecleas tu contraseña de usuario y et voila:

La máquina remota dándote acceso a tu escritorio

La máquina remota dándote acceso a tu escritorio

Google Chrome ya no recuerda mis contraseñas

Un día abres tu navegador todo confiado y te encuentras conque en todas tu páginas favoritas estás deslogado en la página de entrada. Curiosamente tu contraseña está ahí, con todos sus asteriscos, pero no has entrado automáticamente, tienes que darle al botón.

Pulsas la casilla de «Recuérdame», le das al botón. Entras a la página. Luego cierras el navegador y vuelves a abrirlo. Otra vez deslogado. La contraseña está ahí otra vez, pero no te ha recordado. Que desconsiderado…

Vas a preferencias, borras los datos de navegación, borras las cookies, te aseguras de que la casilla «Permitir que se establezcan datos locales» está marcada en «Configuración de contenido». Vuelves a intentarlo y nada, no te recuerda.

Bien, no me anduve con contemplaciones.  Yo lo solucioné así:

  1. Entré en «Preferencias», «Cosas personales» y me aseguré de que tenía configurada una cuenta de Gmail para mantener sincronizados los marcadores y esas cosas.
  2. Cerré el navegador.
  3. Abrí una consola y borré la carpeta «.config/google-chrome» de mi Home (yo tengo copias de seguridad actualizadas a diario, ¿las tienes tu?).
  4. Abrí de nuevo el navegador. Está desconfigurado, así que lo primero que hace es preguntarte qué portal de búsqueda quieres (obviamente, Google, ¿no?).
  5. Se abre el navegador pero virgen, sin marcadores ni nada.
  6. Vas a «Preferencias», «Cosas personales» y configuras la cuenta de Gmail para sincronización. Automáticamente vuelven a aparecer todos tus marcadores y esas cosas.
  7. Entro en todas mis páginas favoritas. Cierro el navegador.
  8. Lo abro y ahora sí me recuerda y entro directamente ya logado. :-)

No, no me ando con chiquitas…

Hotot se queda colgado diciendo «Loading Resources…»

No puedes iniciar el cliente de Twitter Hotot, porque se queda colgado diciendo «Loading Resources…» sin hacer nada más. Lo que es peor, si esperas que una actualización lo solucione vas de cráneo, porque seguirá haciendo lo mismo.

Solución: Algo ha pasado con los ficheros de configuración de Hotot y están corruptos. Bórralos y deja que sean creados de nuevo.

[lacofi@cecile ~]$ rm -Rf .config/hotot
[lacofi@cecile ~]$ rm -Rf .cache/hotot

Ahora arranca Hotot y te pedirá que introduzcas tu cuenta de Twitter.

Notas sobre la actualización de Ubuntu 11.10 (Oneiric Ocelot) a 12.04 (Precise Pengolin)

En la actualización, se desactivan automáticamente todos los repositorios de terceros, por lo que habrá que reactivarlos o actualizarlos posteriormente.

Hay determinado software que te dará algún problema extra.

Dropbox

Dropbox no consigue reiniciarse una vez actualizado el sistema a 12.04.

Este problema me surgió en la actualización de Cecile, pero no es una instalación fresca en Sophie. Para imitar una instalación fresca:

  1. Ejecuta el comando «echo 100000 | sudo tee /proc/sys/fs/inotify/max_user_watches». Sio no lo haces, te lo pedirá él de todas formas en cuanto lo inicies.
  2. Borra tu carpeta Dropbox (haz antes una copia de seguridad, claro).
  3. Borra la configuración (es decir, el directorio «.dropbox» de tu Home)
  4. Ahora inicia de nuevo dropbox.

Con esto, en mi sistema funcionó y empezó a sincronizar de nuevo. Eso si, preparate para esperar un buen rato, porque tendrá que bajarse de nuevo todos los ficheros desde la nube. Curiosamente no funcionó a la primera sino al segundo o tercer intento.

Curioso, muy curioso.

VMware

O VMplayer, da igual. No funcionan en Ubuntu 12.04. El problema es que fallará la compilación de los módulos vmnet debido a cambios en el kernel 3.2 que usa esta versión de Ubuntu.

Afortunadamente, hasta que los chicos de VMware se den por aludidos y saquen una versión corregida compatible con Ubuntu 12.04, hay disponible un parche creado por la comunidad. Bájatelo a tu ordenador. Descomprimelo. Vete a la carpeta donde se ha descomprimido, y ejecuta el script «patch-modules_3.2.0.sh» como root. Deja que el script trabaje y parchee las fuentes. Cuando termine (no tardará mucho), arranca de nuevo VMware.

Esto funciona para la versión de VMware 8.0.2. Si quieres instalar la nueva versión VMware 8.0.3 volverá a fallar la compilación, así que tendrás que ejecutar de nuevo el script. Pero antes tienes que editarlo y cambiar la línea donde pone «vmreqver=8.0.2» por «vmreqver=8.0.3» para después ejecutar el script.

Si aplicas el parche a VMware 8.0.2 y después actualizas a 8.0.3 el parche no dejará que lo vuelvas a ejecutar. Para que funcione, tendrás que borrar el fichero /usr/lib/vmware/modules/source/.patched como root.

El fichero .xsession-errors crece sin control en Ubuntu 11.10

En Ubuntu 11.10 (Oneiric  Ocelot), me he encontrado conque con cierta frecuencia el /home se queda sin espacio. El motivo es que hay un fichero que crece exponencialmente ocupándolo todo. Me refiero, claro, al fichero .xsession-errors de tu Home. Si borras el fichero con «rm» te encuentras conque no liberas espacio en absoluto y, aunque el fichero no existe, el espacio sigue constando como ocupado. Solo después de resetear el sistema volverás a tener ese espacio libre.

Se trata de un bug conocido. La nueva distribución Ubuntu 12.04 (Precise Pangolin) lo soluciona (más bien lo parchea) volcando los errores del subsistema gráfico a un fichero de /tmp con lo que los logs son borrados en cada reseteo del sistema. Pero si eres como yo y tu ordenador está siempre encendido, los logs nunca serán borrados y el fichero seguirá creciendo exponencialmente aunque esté en /tmp.

La solución definitiva es decirle al sistema de log que ese registro de errores se vaya directamente al agujero negro. Para ello edita el fichero /etc/X11/Xsession, edítalo como root, y en él verás una linea que dice:

ERRFILE=$HOME/.xsession-errors


Cambia esa entrada para que diga:

ERRFILE=/dev/null


Resetea el sistema. Ya está. Ahora el fichero de errores no ocupará espacio porque se irá a carajo según se vaya creando.

Muchas gracias a los miembros de Ubuntu Forums, como siempre ahí, al rescate.

No puedo instalar Chromium en Gentoo, me da error

Si estás intentando instalar Chromium en Gentoo, puede que te salga un error que diga al final algo así:

make: *** [out/Release/chrome] Error 1
emake failed
* ERROR: www-client/chromium-13.0.782.107-r1 failed (compile phase):
*   (no error message)
*
* Call stack:
*     ebuild.sh, line  56:  Called src_compile
*   environment, line 6339:  Called die
* The specific snippet of code:
*       emake chrome chrome_sandbox BUILDTYPE=Release V=1 || die;
*
* If you need support, post the output of 'emerge --info =www-client/chromium-13.0.782.107-r1',
* the complete build log and the output of 'emerge -pqv =www-client/chromium-13.0.782.107-r1'.
* The complete build log is located at '/mnt/guin2xp/portage/www-client/chromium-13.0.782.107-r1/temp/build.log'.
* The ebuild environment file is located at '/mnt/guin2xp/portage/www-client/chromium-13.0.782.107-r1/temp/environment'.
* S: '/mnt/guin2xp/portage/www-client/chromium-13.0.782.107-r1/work/chromium-13.0.782.107'

Vale. Lo primero de todo, has de saber que la compilación de Chromium es muy sensible a la falta de memoria porque la devora. A poco que no le guste la que tienes, zas, se rompe y da error. La solución es bien fácil: crea un fichero de swap de, pongamos, 3 Gb, actívalo, y ya tienes más memoria. Ahora vuelve a hacer emerge y muy probablemente pueda compilarlo.

Para crear la swap, ya sabes cómo se hace, ¿no?…

[lacofi@cecile ~]$ sudo dd if=dev/zero of=/media/swapfile bs=1M count=3072
[lacofi@cecile ~]$ sudo mkswap /media/swapfile
[lacofi@cecile ~]$ sudo swapon /media/swapfile

Gentoo solo instala OpenOffice y Chromium en inglés

Gentoo es distinta a todo. Y complicadilla de configurar, si vienes de Ubuntu o de cualquier otra distribución Linux normal y corriente. Así que si has decidido instalarla vete preparado para juguetear con la máquina porque te va a hacer bailar. :-D

OpenOffice y Chromium se compilan en el idioma que haya sido especificado en /etc/make.conf, concretamente en la variable LINGUAS, así que asegúrate de que en ese fichero hay una línea que diga:

LINGUAS=»es en»

o bien:

LINGUAS=»es»

Puedes añadir más idiomas, claro, pero asegúrate de que uno de ellos sea «es». Y esto es importante y me dio un buen quebradero de cabeza: la cadena de LINGUAS para el idioma español es «es» a secas. Si pones otra cosa como «es_ES», «es_ES@euro» o «es_ES@UTF-8», la compilación no reconocerá esos idiomas y te saldrá en inglés.

Pues ya sabes, cambia /etc/make.conf y recompila, anda.

No puedo logarme en la página de Nespresso.

Si usas el navegador Chrome para Linux te encontrarás conque es muy difícil logarse en la página de Nespresso por un tecnicismo absurdo: en el campo donde debes meter tu correo electrónico no permite escribir la arroba con el teclado. Es difícil, pero no imposible: puedes escribir tu email en un editor de texto y luego usar copiar y pegar para meterlo en el campo de la página de Nespresso. Así si, pero es una lata bastante toca toca.

Curioso, muy curioso, especialmente porque no logro reproducir el fallo con ninguna otra combinación de software. Chrome para Windows no da ningún problema. Firefox para Linux tampoco.  Chrome para Linux deja meter la arroba en cualquier otra página Web salvo la de Nespresso.

Qué quieres que te diga. Es todo bastante surrealista. Y teniendo en cuenta que la página de Nespresso no es precisamente un modelo de programación respetuosa con diferentes plataformas, tengo muy asumido que es un fallo de ellos.

Usa Firefox para entrar en Nespresso.

O instala Windows. ;-)

Es broma. Sabes que jamás te pediría eso. :-P

Teclado inalámbrico Logitech K350 en Ubuntu

Funciona «out of the box». Vamos, enchufar y listo.

Magnífico teclado. Pero algunas teclas multimedia (cinco, para ser más exactos) no hay forma de que funcionen en Linux. Las demás, o funcionan «out of the box» o lo hacen con una pequeña configuración extra.

No voy a inventar la pólvora. Daniel Klaffenbach ya te lo explica todo muy bien y bastante masticadito para que no te estreses. ¡Gracias, Daniel!.

Cual es la mejor forma de intercambiar datos entre Linux y mi teléfono Android?

airdroid

Airdroid trabajando

No te líes.

Instala AirDroid en tu teléfono móvil.

Eso si. Si lo instalas, cada vez que lo pongas en marcha acuérdate de desactivar JuiceDefender. O bien, crea una excepción en JuiceDefender. Para ello, abre el programa (me refiero a JuiceDefender, obviamente), vete a Configuración y vete a abajo del todo, a Aplicaciones. Ahí entra en «Configurar Aplicaciones», busca AirDroid y ponlo en modo «activar/pantalla apagada».

De esta forma, JuiceDefender no desactivará el Wifi mientras Airdroid esté funcionando, ni siquiera cuando se apague la pantalla.

Que lo disfrutes.