Archivos de la etiquetas linux

No perder la sesión remota de Linux

xpra-logo-gnuAnteriormente ya hemos aprendido a conectarnos a nuestro servidor Linux con éste post.

Si eres usuario habitual de estas herramientas, cuando nos conectamos a una sesión remota a Linux tenemos el problema que en muchas ocasiones tenemos que desconectar la conexión cuando estamos ejecutando un comando que aun no terminó. Habitualmente el cierre de la conexión mata el proceso que estamos ejecutando, teniendo que empezar de nuevo. Esto es más problemático cuando la conexión al servidor es mucho más inestable (WiFi o conexión móvil).

Con #screen y #xpra podemos mantener la conexión remota siempre activa Clic para tuitear

Tanto si nos conectamos en modo línea de comandos como si nos conectamos a las XWindows, existe la posibilidad de mantenerlas abiertas para futuras conexiones.

No perder la sesión remota de línea de comandos

screen es un gestor de sesiones de consola, que permite lanzar una sesión y recuperarla más adelante, si la conexión se corta o no queremos mantener el equipo conectado y encendido permanentemente.

Su uso es muy sencillo, basta con ejecutar este comando, con lo que se abrirá la sesión existente de haberla, o en caso contrario se creará una nueva:

screen -x -R

Una vez dentro de la sesión, puede controlarse con los siguientes atajos de teclado:

  • Control + A + D : Separarse sin cerrar la sesión (se podrá recuperar más adelante).
  • Control + D : Cerrar la sesión definitivamente.

Esto permite iniciar una sesión en un equipo, conectarse desde otro y recuperarla (interactuando incluso desde ambos equipos al mismo tiempo). O bien cerrar la conexión y recuperar la sesión más tarde.

El problema aparece cuando una aplicación utiliza ventanas gráficas, ya que, aunque se utilice el X11 forwarding combinado con screen, no es posible recuperar las ventanas más adelante tan solo usando screen.

No perder la sesión remota de XWindows remota

xpra puede entenderse como un análogo de screen para ventanas. Es un servidor de X11 que permite conectarse a él desde diferentes lugares (eso sí, no al mismo tiempo) y así recuperar las ventanas de las aplicaciones ejecutándose en remoto.

Si la aplicación es lanzada desde la propia sesión SSH, Xpra no impide que la aplicación se cierre al cortar la conexión SSH, por lo que lo habitual es combinar el uso de Xpra y screen:

xpra start :100

DISPLAY=:100

screen -x -R

A partir de entonces, las aplicaciones lanzadas dentro de la sesión de screen se redirigirán al servidor Xpra, y podrán ser recuperadas en cualquier momento. Para hacerlo dentro de la sesión de screen, se debe especificar el display correcto.

firefox & DISPLAY=:100

xpra attach :100

No es necesario conectarse por SSH previamente para recuperar una ventana, ya que Xpra puede hacerlo directamente con el siguiente comando:

xpra attach ssh:usuario@equipo:100

En la página de manual de Xpra hay mucha más información interesante, ya que permite hacer muchas más cosas.

XWindows de Linux desde MacOX

x11Veremos como desde nuestro mac nos podemos conectar a las XWindows de Linux a través de SSH.

El Sistema de Ventanas X (en inglés, X Window System) es un software que fue desarrollado a mediados de los años 1980 en el MIT para dotar de una interfaz gráfica a los sistemas Unix. Este protocolo permite la interacción gráfica en red entre un usuario y una o más computadoras haciendo transparente la red para éste. Generalmente se refiere a la versión 11 de este protocolo, X11, el que está en uso actualmente. X es el encargado de mostrar la información gráfica de forma totalmente independiente del sistema operativo.

SSH (Secure SHell, en español: intérprete de órdenes segura) es el nombre de un protocolo y del programa que lo implementa, y sirve para acceder a máquinas remotas a través de una red. Permite manejar por completo la computadora mediante un intérprete de comandos, y también puede redirigir el tráfico de X para poder ejecutar programas gráficos si tenemos ejecutando un Servidor X (en sistemas Unix y Windows).

Configuración de XWindows en Linux

Para permitir la ejecución de las XWindows de nuestro Linux deberemos editar los ficheros:

  • /etc/ssh/ssh_config

ForwardAgent yes
ForwardX11 yes
ForwardX11Trusted yes

  • /etc/ssh/sshd_config

X11Forwarding yes

Reiniciamos el demonio ssh:

/etc/init.d/sshd restart

Configuración de XWindows en MacOX

Debemos de instalar el entorno de X11 XQuartz que lo tenemos disponible en la siguiente dirección:

http://xquartz.macosforge.org/landing/

Si tienes instalado InkScape o aplicación similar es posible que ya lo tengas instalado.

Ya tenemos todo lo necesario para iniciar aplicaciones de nuestro servidor Linux en nuestro MacOX

Ejecución de aplicaciones en las XWindows

Abrimos la aplicación X11, y nos abrirá un terminal, en el que ejecutaremos el ssh para conectarnos con el servidor:

ssh -XC user@server -p port

Una vez abierta la sesión ya podremos ejecutar la aplicación que queramos: firefox, nautilus…

Si estamos en Ubuntu podremos ejecutar el escritorio con:

ubuntu-session
xubuntu-session

En acabado es muy bueno, puesto que las ventanas se integran en nuestro MacOX, no como las máquinas virtuales o similares:

nautilus-x11-ssh

 

dd linux

dd: clona discos y mucho más

dd linuxdd es un comando de la familia de los sistemas operativos Unix que permite copiar y convertir datos de archivos a bajo nivel.

Es generalmente usado para realizar operaciones avanzadas sobre dispositivos o archivos, como pueden ser:

  • Transferencias de datos específicos.
  • Copias de seguridad de la información «en crudo» (raw data).
  • Conversión de algunas codificaciones soportadas y/o caracteres predefinidos.

Pero al contrario que otras herramientas que desde su creación se han ido sofisticando, ésta se ha ido simplificando, hasta el punto de poder hacer lo mismo que buenos programas comerciales como Norton Ghost o libres como CloneZilla, con sólo una pequeña orden en la línea de comandos.

Advertencia dd

Utilizar este comando con precaución, y asegúrate siempre del orden y nombre de tus discos duros, porque lo mismo que te clona un disco te lo borra.

#dd hace lo mismo que los buenos programas comerciales como #Norton #Ghost o libres como #CloneZilla Clic para tuitear

¿Qué discos volcamos con dd?

Lo primero siempre es tener claro el disco duro de origen y el de destino, algo que averiguamos fácilmente con el comando (como root) fdisk -l.

Lo básico de dd

La sintaxis más básica, sería ésta [como root]:

dd if=[origen] of=[destino]

Por lo que si quisiéramos clonar un disco duro:

dd if=/dev/hda of=/dev/hdb bs=1M

con esto clonaríamos el disco hda en hdb. (discos IDE), o:

dd if=/dev/sda of=/dev/sdb bs=1M

para discos SATA

Con bs=1M, estamos diciendo que tanto la lectura como la escritura se haga en bloques de 1 megabyte (menos, sería más lento pero más seguro, y con más nos arriesgamos a perder datos por el camino).

Hay que tener en cuenta que de esta forma grabarás el disco “tal cual”, MBR, tabla de particiones, espacio vacío, etc., por lo que sólo podrás grabar en un disco del mismo o mayor tamaño.

 Volcado de discos a punto de morir con dd

Recuperar un Disco Duro defectuoso o DVD rayado

dd if=/dev/cdrom of=/home/dvd_recuperado.iso conv=noerror,sync

Esto no recupera todo el DVD, en este caso, sólo los sectores legibles. Sirve también para discos duros defectuosos.
La opción noerror sirve para obviar los errores de lectura en cualquier situación. Otro ejemplo sería:

dd conv=noerror if=/dev/hda of=~/home/imagen_disco_con_errores.iso

Grabaríamos con ello una imagen del disco duro en nuestro home saltándonos los errores del disco (muy útil para discos que se están muriendo).

Otras utilidades de dd

Para paranóicos del borrado de la información

Llena el disco con caracteres aleatorios cinco veces. No va a quedar ni rastro de información en el disco:

for n in {1..5}; do dd if=/dev/urandom of=/dev/hda bs=8b conv=notrunc; done

Crea una imagen de un CD

dd if=/dev/cdrom of=/home/imagendeCD.iso

Para montar la imagen del CD

mount -o loop imagedeCD.iso /mnt/home

Copiar el Master Boot Record

dd if=/dev/hda of=mbr count=1 bs=512

Para restaurar el MBR

dd if=mbr of=/dev/hda

Copiar el Volume Boot Sector (VBS)

dd if=/dev/hda of=/home/sector_arranque_hda count=1 bs=512

Para restaurar el VBS

dd if=/home/sector_arranque_hda of=/dev/hda

 

Akademy 2015

Akademy 2015 en A Coruña

Akademy 2015La Comunidad KDE está de enhorabuena ya que se acaba de anunciar que ya se tiene sede y fecha para su reunión anual internacional. En otras palabras, se acaba de conocer que Akademy 2015 se celebrará en A Coruña, España, una gran noticia para todos los simpatizante del Software Libre de la península.

Las fechas son del 25 al 31 de julio se celebrará en A Coruña Akademy 2015. Estará organizada por GPUL (Grupo de Programadores y Usuarios de Linux).

Con toda probabilidad, la organización será la clásica:

  • Durante el fin de semana se realizarán las charlas.
  • Durante la semana hay talleres y BoFs (sesiones en la que los asistentes ajunta se pueden reunir para discutir y trabajar juntos en un proyecto o tema concreto)

Akademy lleva realizándose anualmente bajo este nombre desde 2004, en la página web oficial o en la wikipedia podéis encontrar los nombres y fechas anteriores eventos.

¿Qué es Akademy?

La Akademy (aKademy antes de 2008) es el encuentro mundial anual de los contribuidores al proyecto KDE. Desde 2008 también se celebra en España la versión española, llamada Akademy-es.

Durante el evento se realizarán charlas, talleres y otras actividades de carácter más social con las que se pretenden cumplir los siguientes objetivos:

  • Poner en contacto a desarrolladores de KDE de todo el mundo, para que puedan hablar de los proyectos en que están trabajando, compartir código, experiencias y conocimiento.
  • Dar a conocer el proyecto KDE como entorno de escritorio y de desarrollo a personas sin perfil técnico.
  • Divulgar acerca de las tecnologías KDE, tanto para nuevos desarrolladores como para usuarios que quieran conocer mejor KDE.
  • Y por supuesto, el objetivo principal es que todos disfrutemos aprendiendo más sobre Software Libre y KDE.

Akademy en A Coruña

Os muestro un vídeo promocioanl para animar a la gente a venir a La Coruña:

NTP server

NTP server sin conexión a internet

NTP serverNos podemos ver en la situación de que instalemos una red de ordenadores sin conexión a internet (o limitado por algún proxy), los cuales necesitamos que estén sincronizados.

Para ello, podemos instalar en un servidor Linux un servicio Network Time Protocol (NTP) para que el resto de ordenadores se sincronicen con él. Pero este servidor al no tener conexión de internet su stratum es de 16, por lo que los demás ordenadores no sincronizarán la hora con el siguiente mensaje:

ntpdate[11643]: no server suitable for synchronization found.

Esto se debe a que el stratum que tiene es muy elevado (porque no está conectado a internet). Para comprobar que se debe a este error podemos ejecutar lo siguiente (con ntpd parado):

#/etc/init.d/ntp stop

# ntpdate -d IP_NTP_server
27 Feb 04:15:34 ntpdate[11655]: ntpdate 4.2.2p1@1.1570-o Wed Sep 3 14:28:30 UTC 2008 (1)
Looking for host IP_NTP_server and service ntp
host found : web.icfre.org
transmit(IP_NTP_server )
receive(IP_NTP_server )
transmit(IP_NTP_server )
receive(IP_NTP_server )
transmit(IP_NTP_server )
receive(IP_NTP_server )
transmit(IP_NTP_server )
receive(IP_NTP_server )
transmit(IP_NTP_server )
IP_NTP_server: Server dropped: strata too high
server IP_NTP_server, port 123
stratum 16, precision -20, leap 11, trust 000
refid [172.42.12.35], delay 0.02579, dispersion 0.00000
transmitted 4, in filter 4
reference time: 00000000.00000000 Thu, Feb 7 2036 11:58:16.000
originate timestamp: d2f5348f.1b488f03 Mon, Feb 27 2012 4:15:35.106
transmit timestamp: d2f5348e.ff8183f9 Mon, Feb 27 2012 4:15:34.998
filter delay: 0.02579 0.02580 0.02585 0.02585
0.00000 0.00000 0.00000 0.00000
filter offset: 0.108391 0.108373 0.108382 0.108381
0.000000 0.000000 0.000000 0.000000
delay 0.02579, dispersion 0.00000
offset 0.108391

27 Feb 04:15:34 ntpdate[11655]: no server suitable for synchronization found

Así que al servidor NTP tendremos que forzarlo a un stratum de 10. Para ello incluiremos en el fichero /etc/ntp.conf las siguientes líneas en la que se usa la palabra clave fudge:

server 127.127.1.0 # local clock
fudge 127.127.1.0 stratum 10

Su explicación es la siguiente:

server says that the local system clock is a timeserver. fudge says that this server is stratum 10. If you are connected to the Internet then you are likely using timeservers who are more l33t than stratum 10 what time it is, and these servers are used because they have lower stratum and thus; higher priority[2].

However, if you are disconnected from the Internet then they are unavailable and you’re left with the local clock. Using fudge to say that the local clock is stratum 10 makes ntp use the local clock when no timeservers are available. This is good because it makes sure you can disconnect your box from the Internet without getting your clock screwed.

Fuente: NTP – Howto make the clock show the correct time

Fin de Windows XP

El fin de XP, el principio de…

Mucha gente no sabe lo que hacer ahora que se acabó el soporte para nuestro querido Windows XP. Pues es hay alternativas y muchas de ellas no se vasan en Microsoft Windows.

Una de las primeras cosas que enseña la infografía, son las alternativas que tiene el usuario de Windows XP, como es de esperar, entre ellas se encuentra Ubuntu, Lubuntu, Xubuntu, Linux Mint, Elementary OS y React OS. Personalmente añadiría otras como DaxOS y/o Galpon Minino, sin obviar a las derivadas de las anteriores distribuciones, ni otras muchas que podemos encontrar en DistroWatch.

Para ver la infografía completa pulsa sobre la imagen.

Fin de Windows XP