Bash scripting básico y cuatro cosas mas

para crear un fichero de bash creas un fichero de texto plano, da igual el nombre, pero por costumbre se pone nombredelscript.sh y se le dan derechos de ejecución a este fichero, por ejemplo

chmod a+x script.sh

chmod sirve para cambiar los derechos de los ficheros, tienes para la primera parte u g o a, u para el usuario, g para el grupo, o para otros y a para all, después del símbolo + rwx, r para leer, w para escribir y x para ejecutar.

luego debes editar este fichero.

es importante iniciar el fichero de texto con la siguiente línea:

#!/bin/bash

con esto le indicamos que use el interprete de comandos bash, que es el propio de linux.

a continuación ponemos ahí nuestro código, el interprete nos va a permitir usar un gran numero de condiciones, while, switch, switch case, if, for, etc. cada una de las condiciones tiene también su sintaxis

condicional con un if

#!/bin/bash
if [ “foo” = “foo” ]; then
echo expression evaluated as true
fi

condicional con un if y un else

#!/bin/bash
if [ “foo” = “foo” ]; then
echo expression evaluated as true
else
echo expression evaluated as false
fi

condicional usando un if, un else y variables

#!/bin/bash
T1=”foo”
T2=”bar”
if [ “$T1” = “$T2” ]; then
echo expression evaluated as true
else
echo expression evaluated as false
fi

condicional usando un case (este es uno de mis favoritos!)

#!/bin/bash
T1=1
case ($T1) in
1)
echo 1
;;
2)
echo 2

Lenny será liberada este sábado

Por fin tenemos noticias frescas de la comunidad de debian, parece que este sábado Lenny será liberada como stable y su sucesor en testing será squeeze.

Traducción del artículo original:
Se espera que este sábado, el proyecto debian libere la próxima versión Debian GNU/Linux 5.0, llamada ‘lenny’.

Según el miembro del equipo de liberación de Debian, Adeodato Simó, sólo una pifia podria retrasar esta liberación. La intención es sólo retrasar esta fecha en el caso que ocurriese algo realmente crítico que no pueda ser reportado como un error, o sea técnicamente imposible realizar la liberación este fin de semana (por ejemplo que muera una máquina). Todos los otros arreglos no se harán hasta que la R1 sea material, dijo en este post la semana pasada.

Debian debe cumplir este plazo, ya que han pasado cerca de dos años desde la última liberación de etch, que se hizo oficial en Abril del 2007.

Debian, en su nueva versión del sistema operativo, ha añadido mas funciones orientadas a la seguridad. Además en un archivo completo se dará soporte de seguridad, lenny viene con funciones de seguridad preventiva para reducir la posibilidad de vulnerabilidades. Por ejemplo, el instalador de debian ahora aplica las actualizaciones de seguridad antes del primer arranque, además varios paquetes de seguridad críticos, se han reconstruido con las características de seguridad del GCC y el sistema estándar contiene menos binarios setuid root y un numero menor de puertos abiertos.

En la parte servidor, encontramos algunas nuevas funcionalidades, por …

Summer Camp Garrotxa 2009

Otro año mas vuelve el Summer Camp Garrotxa, donde durante 3 días del mes de Julio se mezclan el ambiente rural y las nuevas tecnologías.

Este año el espacio seleccionado es al lado del Polideportivo del Bosc de Tosca, en la población de Les Preses (La Garrotxa, Girona) y compartiremos espacio con la Volcànica, una party donde está presente el uso del software libre, hemos decidido unir fuerzas para abarcar un abanico mas amplio de publico, el mundo de los juegos y el mundo más técnico de la informática.

Bajo el lema “all your base are belong to us” queremos ofrecer una parrilla de charlas con los temas técnicos que mas os interesan, ¿lo hemos olvidado? proponlo y miraremos de incluirlo, ¿eres ponente y te interesaría ofrecer una charla? contacta con nosotros y dinos el tema que tratarás, tienes hasta el 23 de Junio para presentarla.

Las fechas son el 17, 18 y 19 de Julio del 2009.

Mas información en la página web: http://hacklabs.org/summercamp

Rawstudio editando RAW en Linux

Los seguidores del blog estaís viviendo el nacimiento de una nueva afición, la fotografía, esta ya la tengo desde pequeña, pero antes hacer fotografías era caro, ya que para ver el resultado de tu obra era necesario revelar las fotografías, cuando empezé a trabajar pude comprarme mi primera camera digital, una compacta, la sony DSC P100, y ahora hace un mes he adquirido una Canon EOS 1000D, una de sus caracteristicas principales, no muy explotada hasta el momento, es la posibilidad de hacer fotos con RAW.

Buscando por blogs hay muchas herramientas para tratar estás imágenes, lo que capta el sensor sin la aplicación de ningún tipo de filtro, estos programas son por desgracia muchos para windows o mac os x, así que me puse a buscar el otro día un programa digno para editar fotos en formato RAW de forma sencilla y rápida, ya que si tienes muchas fotos a tratar es pesado.

Gimp dispone de un plugin para importar fotos RAW, te da muchas posibilidades pero es de lejos rápido de editar las fotografías y la gestión de las mismas deja mucho que desear, así que seguí buscando, y encontre el rawstudio en los repositorios de debian:

# apt-get install rawstudio

Aquí tenéis una captura de pantalla con las fotos que me ha pasado Fran de la salida fotográfica al puerto del Masnou (Maresme).

El programa es muy fácil de usar, en la parte superior encontramos todas las fotografias que tenemos en el mismo directorio de la foto …

CLP Novell Suse

Hoy mas noticias, por fin me han indicado que he aprobado el CLP de Novell Suse, el CLP es una certificación de GNU/Linux. Esta certificación acredita mis conocimientos sobre administración de sistemas linux bajo Suse.

Si alguien quiere saber mas detalles del certificado podemos quedar un día y hablamos del tema mientras tomamos cualquier cosa ;)


Próximo objetivo el CLE (Certificate Linux Engineer, DNS, DHCP, Correo, iptables, herramientas de administración de redes, etc.) y quizás después el CCNA de Cisco.

La pega de algunas de estas certificaciones es que caducan cada dos añox aproximadamente :(…

glTail.rb

Venga, ¡que se nos acaba el año! Espero que ya os vayáis acostumbrando al nuevo aspecto del blog.

Esto que estaba por ahí purulando en la red, mirando blogs aleatorios relacionados con las nuevas tecnologías en búsqueda de algún programa nuevo y me he topado con uno que me ha gustado bastante, se trata de obm.corcoles.net y me he fijado en este artículo:

http://obm.corcoles.net/20081216/visualiza-tu-trafico-con-gltailrb/

Así que me ha gustado su aspecto y he decidido probarlo.

glTail.rb es un analizador de tráfico entre dos hosts escrito con ruby, en su página web explican mucho mejor de qué se trata:

FEATURES
* Real-Time
* Multiple logfiles on multiple servers
* Configurable layout
* Multiple logfile parsers
(Apache Combined, Rails, IIS, Postfix/spamd/clamd, Nginx, Squid, PostgreSQL, PureFTPD, MySQL, TShark, qmail/vmpop3d)
* Custom events
* Show rate, total or average
* If you can ‘tail’ it, you can visualize it
* Written in Ruby using net-ssh, chipmunk & ruby-opengl
* Free! (GPLv2)

Para instalarlo nos decargamos el archivo del programa de su página web:

http://www.fudgie.org

Como de costumbre y porque es un formato libre nos descargaremos el .tar

A continuación lo descomprimimos en algun directorio, por comodidad decidí crear un directorio llamado bin directamente a mi home, ya que tenía la mala costumbre de instalar programas en el escritorio y algunos para hacerlos funcionar era necesario volverlos a compilar.

# cd ~
# cd bin
# tar xvzf Fudge.tar.gz
# cd Fudge/bin

Al ser un programa en ruby no lo compilaremos de la típica forma …

Synergy

Lo siento, hoy estoy realmente emocionada!!! que maravilla esto de la informática! bueno me calmo y os cuento este nuevo hallazgo, no se si algunos de vosotros habéis oído a hablar él, si no es así en unos minutos descubriréis su maravillosa potencia!

¿Cuantas veces estás encima de la mesa trabajando con varios portátiles a la vez, ya sea configurándolos, trabajando en algún desarrollo o algo de diseño porque con una pantalla no te bastaba? ¿Cuantas veces has deseado poder trabajar mas rápidamente con un solo teclado? pues la solución es Synergy, una herramienta libre que permite compartir por la red un mismo teclado y ratón entre varias pantallas, ¡además es multiplataforma!

Synergy trabaja mediante un sistema cliente-servidor, el servidor es la maquina con la que vas a trabajar remotamente con las otras, las otras maquinas van a ser los clientes.
Mi mente inquieta ha pensado que pasaria si en la misma red existen 2 servidores, ¿sería posible controlar varios ordenadores con varios teclados? pues parece que no, o parece que no está del todo implementado, he probado de arrancar primero las dos maquinas que tengo a mano para probar como servidores, pero no funcionaba, así que he pensado que necesitaban un cliente, así que he arrancado un cliente y un servidor a cada maquina, así funcionaba a medias, una vez en la maquina 2 no podía volver a la maquina1 :S matando los procesos en la maquina2 el cursor de la maquina1 ha vuelto a su casa.

Vale, …

Actualizar de grub legacy a grub2

Está a punto de caer la nueva versión de debian lenny y con ello es probable que la misma lenny o la squeeze, su succesora en testing, usen la versión actualizada de grub, grub2.
Este nos ofrece mas posibilidad de configuración, además de la solución del tratamiento de las particiones, que en sistemas híbridos con discos SCSI, IDE o SATA daban algunos problemas. Llevo poco rato investigando grub2, pero esta entrada, como muchas de las otras, intentan dar una visión general de la instalación y configuración, y aún no he acabado de entender como trata grub las particiones si con la antigua forma hd(0,1) o los UUID, si va con UUID como hacer para identificar el UUID de cada partición.

Empezemos, vamos a partir de que tenemos una Debian lenny (half-stable) con grub legacy instalado. La maquina que he usado es el Lenovo 3000 V100 (que por cierto está a la venta, ¿a alguien le interesa?).

Vamos a instalar grub2:

# apt-get install grub2

Nos hará un par de preguntas, y una de ellas será si queremos usar el chainloader de grub para probar antes de instalar si grub2 funciona correctamente en nuestra maquina.

Reiniciaremos y nos aparecerá una nueva entrada en nuestro grub de toda la vida, le damos al chainloader grub2 y veremos que aparece otra vez un menu de grub, pero con una bonita imagen detrás (framebuffer). Fijaos que si nuestra maquina dispone de otros sistemas operativos en otras particiones, estas no aparecen, no os asustéis, falta …

Silc

De momento para hoy no hay tira, no estoy muy fina, así que iremos a otra cosa.

Hoy es el turno de SILC, un protocolo de mensajería encriptado.

SILC es un protocolo libre que viene acompañado de su respectiva implementación (servidor, clientes, librerias…) y tiene como objetivo permitir la comunicación de forma segura. Su desarrollo se inició en 1997 aunque de forma discontinua, no tomó fuerza hasta el 1999 saliendo la primera versión en el 2000. Su precursor fue el finlandes Pekka Riikonen, especialista informático en el campo de la seguridad.

Podriamos definir SILC como un híbrido entre IRC y la mensajería instantanea ya que hereda funcionalidades de ambas ramas, sin embargo ha sido diseñado desde el inicio pensando en la seguridad. SILC proporciona seguridad a unos niveles superiores a la seguridad que puede ofrecer la combinación de cualquier protocolo no seguro (e.g. IRC, Jabber, MSN Messenger…) junto con tecnologías como TLS/SSL y GnuPG/PGP. El principal motivo que dan en su web es que es muy difícil hacer seguro un protocolo inseguro utilizando un añadido (e.g. SSL) por encima, sin embargo se puede conseguir una seguridad superior si diseñamos desde 0 un protocolo con esas características. Por ejemplo, SSL es ideal para comunicaciones entre 2 máquinas, pero cuando han de intervenir más nodos como por ejemplo ocurriria en un canal (como los del IRC) su funcionamiento no es tan bueno (por ejemplo nadie te asegura que todas las personas han conectado con SSL al servidor).

[sigue…] http://www.gpltarragona.org/archives/284

Para empezar tendremos …

Probando ubuntu 8.10 lenovo thinkpad x200

Aquí estamos otra vez, por fin he encontrado un momento de tranquilidada para jugar con el nuevo portátil y vaciar el antiguo (ya casi está terminado, si alguien está interesado por él podemos hablar), además a fuera llueve y no puedo salir a dar vueltas!.

Hoy le ha tocado el turno de comprobar la compatibilidad de los distintos dispositivos a una ubuntu 8.10.

En debian lenny ya hay muchísimas cosas que funcionan, así que esta vez no me he sorprendido de las posibilidades de ubuntu, voy a evitar tirar por el camino fácil y pasarme a ubuntu, debian power!

Primera cosa a destacar:

# uname -r
2.6.27-7-generic

El kernel 2.6.27, el mismo que tengo ahora rulando en el debian.

Justo entrar he visto que el network manager me pedía wifi! wifi! así que me he imaginado que ya iria con una versión del iwlwifi de a partir del 10 de Octubre (cuando salió el kernel 2.6.27 con la gran novedad de soporte para wireless n, además de soporte para un gran numero de webcams, además de una nueva forma de instalar nuevos drivers)

# iwlist –version
iwlist Wireless-Tools version 29
Compatible with Wireless Extension v11 to v22.

Kernel Currently compiled with Wireless Extension v22.

wlan0 Recommend Wireless Extension v21 or later,
Currently compiled with Wireless Extension v22.

Otra cosa que cabe destacar es que lleva la versión 7.4 de Xorg, hace poco hablábamos de la revolucionaria versión 7.3, con soporte plug’n’play de monitores, teclados, ratones, tabletas digitalizadoras, etc. En lenny …