siempre online en el IRC con screen + irssi


Les ha pasado que han tenido que abandonar un canal de IRC porque debían irse y apagar el equipo donde estaban ? o simplemente se han vuelto tan adictos al IRC que no pueden perderse nada de lo que haya sucedido en un determinado canal ?

Para estar logueado permenentemente en el IRC, como primera medida necesitaremos disponer de un equipo que no se apague nunca. Esto podemos solucionarlo si tenemos algun servidor shell propio disponible o utilizando uno como por ejemplo de ninthfloor o st0rage.

Teniendo disponible este servicio, con irsii y screen instalado, solo tenemos que ver como nos manejamos con ellos en modo consola.

Irssi es un cliente IRC muy versátil e intuitivo, tal es así que me quedé con él después de probar varios, inclusive el xChat.

Si no lo tenemos instalado, podemos instalarlo con:

$ su -c "yum install irssi"

Una vez instalado bastará ejecutar:

$ irssi

Lo manejamos con los siguientes comandos:

Para conectamos al irc.freenode.net:
/connect irc.freenode.net 

Para unirnos a un canal:
/join #test

A medida que nos unimos a determinados canales, vamos a ver que la barra de estado va abriendo ventanas indicando por ejemplo “2:freenode.net/#test“. Esto significa que estamos viendo la ventana 2, del servidor freenode.net en el canal test.

Para cambiar entre las distintas ventanas que determinan los distintos canales que tenemos abiertos usamos la combinación de teclas Alt+#. Donde # es un número del 0 al 10.

También tenemos disponibles desde la Alt+q hasta Alt+o. O bien usar las teclas Alt y las flechas del teclado para movernos secuencialmente entre las ventanas.

Para abrir un mensaje privado:
/q nickusuario
Para cerrar el mensaje privado:
/
Para cerrar una ventana:
/wc

Ahora bien, como hacemos para que al cerrar sesión con nuestro usuario Linux, no perdamos la sesión de chat IRC ? Aquí entra en escena screen. Screen es un programa que crea una “sesión” en la cuál pueden existir diferentes “ventanas”. Cada “ventana” contiene un prompt shell donde podemos ejecutar programas. Con Screen, el usuario puede crear una ventana, ejecutar diferentes programas, desconectarse de la sesión screen, desloguearse, ir a dar una vuelta, loguearse nuevamente, reconectar la ventana y encontrar sus programas en la misma condición en que los dejó.  No es fantástico ?

Ahora bien, antes de ejecutar el irssi, o saliendo de el si ya lo habíamos ejecutado (/quit), ejecutamos el comando:

$ screen

Esto nos devolverá un nuevo shell. Estamos dentro de una “ventana”. Podemos verificarlo haciendo:

$ screen -list
There are screens on:
        29021.pts-2.athlon      (Attached)
1 Socket in /var/run/screen/S-hvivani.

Ahora si ejecutamos:

$ irssi

y nos conectamos a la red que queramos.

Como nos desconectamos de la venta? Presionamos las teclas CTRL+a, soltamos las teclas y presionamos la tecla d. La pantalla nos mostrará un mensaje como [detached]. Nuestros programas seguirán en ejecución en dicha ventana. Podemos desloguearnos tranquilamente de nuestra cuenta Linux que los programas ejecutados en esa “ventana” seguiran corriendo normalmente.

Como reconectamos una ventana?

$ screen -raAd

Y veremos que tenemos los programas en ejecución tal cual los dejamos. De esta manera vemos que podemos dejar corriendo el irssi, desloguearnos, irnos a dormir, y al día siguiente loguearnos nuevamente y todo seguirá ejecutándose.

Vale aclarar que si queremos crear una nueva “ventana” debemos ejecutar el comando screen sin argumentos. Para pasar de una ventana a otra utilizamos la combinación CTRL+A, soltamos las teclas y colocamos un dígito del 0 al 9.

 

 

Charlas de Software Libre


El UNLUX (Grupo de Usuarios de Software Libre de la Universidad Nacional de Luján) y el CODES (Centro de Estudiantes de Sistemas) presentan el Ciclo de Charlas de Software Libre, en la Sede Central de la Universidad Nacional de Luján, el día Sábado 19 de Noviembre de 2011.

Allí estarán Rino y Delete evangelizando sobre Fedora y el Software Libre.

El evento sera gratuito y abierto a todo el publico interesado. La inscripción ya está disponible, hay cupo limitado. Inscribite Ya!

 

Instalando PostgreSQL


PostgreSQL es un motor de base de datos muy poderoso, perteneciente al mundo del Software Libre y que no tiene miedo en correrle al resto de las bases de datos del mercado, incluso las mas grande$.

Tal vez la curva de aprendizaje sea un poco mas pronunciada que con otros motores, pero realmente vale la pena probarla e implementarla.

Aquí dejo las notas de intalación:

Instalamos PostgreSQL:

$ su -c "yum install postgresql-server pgadmin3"

Cambiamos la contraseña del usuario postgres creado al instalar el motor:

$ su -c "passwd postgres"

Inicializamos la base de datos:

$ su -c "service postgresql initdb"

Editamos los archivos de configuración de postgres. En el archivo: /var/lib/pgsql/data/postgresql.conf

Modificamos la línea #listen_addresses a ‘* ‘:

listen_addresses = '*'

Y descomentamos la línea #Port para escuchar en el puerto 5432:

port = 5432

Editamos también el archivo de configuración de autenticación de PostgreSQL: /var/lib/pgsql/data/pg_hba.conf

Cambiamos la línea host all all 127.0.0.1/32 ident para autentifique las conexiones locales a través de md5:

host all all 127.0.0.1/32 md5

Para agregar / autorizar conexiones desde otros equipos, agregamos una lína como esta:

host all all 192.168.1.0/24 md5

Definimos el servicio postgresql para que arranque al inicio y lo “estarteamos”:

# chkconfig --level 2345 postgresql on
# service postgresql start

Logueandonos con el usuario postgres de Linux, con la contraseña que cambiamos al inicio, cambiamos la contraseña del usuario postgres del motor de la base de datos:

$ su postgres
Contraseña:
bash-4.1$ psql
psql (8.4.9)
Digite «help» para obtener ayuda.

postgres=# ALTER USER postgres WITH PASSWORD 'mipass';

Si el cambio se pudo ejecutar con éxito, la salida será un simple ALTER ROLE.

Con esta configuración ya podremos arrancar el pgadmin3 y conectarnos a la base de datos con estos datos:

Nombre: NombreBase
Host: 127.0.0.1
Port: 5432
Maintenance DB: postgres
Username: postgres
Password: mipass