Archive for the 'linux' Category

Master piece, and a song.

Saturday, February 20th, 2010

Browsing the internet I found this then I’d say “hey, if there is a flowchart there should be a code” then I’d found out that the flowchart was wrong, nevertheless I’ve written the bash code for the full Beattles – Hey Jude song.
#!/bin/bash
for i in $(seq 1 1 4)
do
echo " "
echo -n "Hey Jude don't "
if [ $i == 1 ] || [ $i == 4 ]; then
echo "make it bad"
echo "Take a sad song and make it better"
fi
if [ $i == 2 ]; then
echo "be afraid"
echo "You were made to go out and get her"
fi
if [ $i == 3 ]; then
echo "let me down"
echo "You have found her, now go and get her"
fi
if [ $i == 1 ] || [ $i == 3 ] ; then
echo "Remember to let her into your heart"
else
echo "The minute you let her under your skin"
fi
echo -n "Then you "
if [ $i == 1 ] || [ $i == 3 ] ; then
echo -n "can start "
else
echo -n "begin "
fi
echo "to make it better"
if [ $i == 2 ]; then
echo " "
echo "And any time you feel the pain, Hey Jude, refrain"
echo "Don't carry the world upon your shoulders"
echo "For well you know that it's a fool who plays it cool"
echo "By making his world a little colder"
fi

if [ $i == 3 ]; then
echo " "
echo "So let it out and let it in"
echo "Hey Jude begin"
echo "You're waiting for someone to perform with"
echo "And don't you know that it's just you"
echo "Hey Jude you'll do"
echo "The movement you need is on your shoulder"
fi
done

Comparando linea por linea dos archivos en bash

Thursday, February 11th, 2010

Frecuentemente me veo en la necesidad de comparar archivos no sorteados linea por linea sobre todo para parceo de configuraciones y cada que lo requiero tengo que buscar de nuevo la info en internet, asi que para futuras referencias pongo aqui el metodo mas sencillo que me he encontrado, basicamente se guarda un archivo en en descriptor 7, se abre linea por linea y se va comparando toda la linea abierta contra todas las lineas de otro archivo abierto en el momento, quienes hayan intentado hacerlo me entenderan ya que en bash si abres dos archivos a la vez cierra el primero para permitirte trabajar con el segundo.


aduarte@aduarte:/$ cat a.txt
b
c
d

aduarte@aduarte:/$ cat b.txt
1
2
3

aduarte@aduarte:/$ cat opentowfiles.sh
#!/bin/bash
exec 7
cat <&7 | while read LA
do
cat b.txt | while read LB
do
echo $LA $LB
done
done

aduarte@aduarte:/$ ./opentowfiles.sh
b 1
b 2
b 3
c 1
c 2
c 3
d 1
d 2
d 3

Los origenes

Tuesday, February 9th, 2010
Recuerdo que en el 96 a punto de salir de la preparatoria, le comente a un maestro mío la molestia que me causaba que el nuevo sistema operativo Windows 95 me limitara tanto como usuario y que me obligara a trabajar en modo grafico aunque yo no lo quisiera. Es justo decir que viniendo de MS-DOS yo no había tenido mouse y no entendía por que a fuerza tenia que comprar uno para poder hacer cualquier cosa, total que ese maestro me dijo una frase que todavía recuerdo perfectamente, aunque en su momento no significo nada para mi, definitivamente mi vida habría sido distinta si no la hubiera escuchado, recuerdo que me dijo. -”Deberías probar Linux”- complemento la frase con palabras que en este momento no recuerdo, y concluyo con -”En una librería de la Zona Rio venden una revista que habla mucho de eso”, total que un día me inspire y fui a la Zona Rio a comprar la revista, no me resulto difícil ubicarla, se llamaba PC-Actual, una edición española que hace poco busque y todavía existía aunque a estas alturas la vi como un producto mas para usuarios finales, total que para mi buena suerte esa edición en especial traía un entre otras cosas una versión de Linux instalable, lo que marco un hito en mi vida dentro de las computadoras que hasta la fecha sigue influyendo.
Hace algún tiempo hurgando en el baúl de los recuerdos, encontré el disco que venia en la revista (la cual todavía tengo) y me lo traje para presumirle a Octavio que yo todavía tengo el disco con el que instale Linux por primera vez en mi computadora y mientras redacto esto caigo en cuenta de que también tengo el disco duro :S, es un Western Digital Caviar de 82MB, muéranse de envidia :D .
Si mal no recuerdo era una versión de slackware, por las fechas debió haber sido la 3.1 y presentaban con bombo y platillo KDE que iba a revolucionar el mercado de acuerdo a lo que se esperaba, así que como no se cuanto tiempo más conserve el disco físicamente, decidimos sacarle una foto:
Y aquí la prueba final

Recuerdo que en el 96 a punto de salir de la preparatoria, le comente a un maestro mío la molestia que me causaba que el nuevo sistema operativo Windows 95 me limitara tanto como usuario y que me obligara a trabajar en modo grafico aunque yo no lo quisiera. Es justo decir que viniendo de MS-DOS yo no había tenido mouse y no entendía por que a fuerza tenia que comprar uno para poder hacer cualquier cosa, total que ese maestro me dijo una frase que todavía recuerdo perfectamente, aunque en su momento no significo nada para mi, definitivamente mi vida habría sido distinta si no la hubiera escuchado, recuerdo que me dijo. -”Deberías probar Linux”- complemento la frase con palabras que en este momento no recuerdo, y concluyo con -”En una librería de la Zona Rio venden una revista que habla mucho de eso”, total que un día me inspire y fui a la Zona Rio a comprar la revista, no me resulto difícil ubicarla, se llamaba PC-Actual, una edición española que hace poco busque y todavía existía aunque a estas alturas la vi como un producto mas para usuarios finales, total que para mi buena suerte esa edición en especial traía un entre otras cosas una versión de Linux instalable, lo que marco un hito en mi vida dentro de las computadoras que hasta la fecha sigue influyendo.

Hace algún tiempo hurgando en el baúl de los recuerdos, encontré el disco que venia en la revista (la cual todavía tengo) y me lo traje al trabajo para presumirle a Octavio que yo todavía tengo el disco con el que instale Linux por primera vez en mi computadora y mientras redacto esto caigo en cuenta de que también tengo el disco duro :S, es un Western Digital Caviar de 82MB, muéranse de envidia :D .

Si mal no recuerdo era una versión de slackware, por las fechas debió haber sido la 3.1 y presentaban con bombo y platillo KDE que iba a revolucionar el mercado de acuerdo a lo que se esperaba, así que como no se cuanto tiempo más conserve el disco físicamente, decidimos sacarle una foto:

Y aquí la prueba final

Los Origenes

Configurando TOR en Ubuntu Karmic Koala

Tuesday, November 24th, 2009

En realidad esto es una simplificacion de los pasos que hay en la pagina de TOR, pero para no andar buscando los pasos en futuras instalaciones, hice este resumen.

1.- Instalando los paquetes necesarios.

1.1.- Agregar repositorios:
sudo echo “deb http://deb.torproject.org/torproject.org karmic main” >> /etc/apt/sources.list

1.2.- Agregando las llaves:
gpg –keyserver keys.gnupg.net –recv 886DDD89
gpg –export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-key add -

1.3.- Acualizando el listado de paquetes:
sudo apt-get update

1.4.- Instalando los paquetes:
sudo apt-get install tor tor-geoipdb privoxy torbutton-extension

2.- Haciendo los cambios de configuracion necesarios.

2.1.- Abrir en un editor el archivo de configuracion de privoxy
sudo vi /etc/privoxy/config

y agregar la siguiente linea al principio del archivo:
“forward-socks4a / 127.0.0.1:9050 .”
(Sin comillas y es importante incluir el punto)

3.- Arrancar y probar.
3.1.- Iniciar o reiniciar tor y privoxy:
sudo /etc/init.d/privoxy restart
sudo /etc/init.d/tor restart

3.2.- Arrancar Firefox y en la parte derecha de la barra de Status aparecera el estado de TOR de ahi se puede activar y desactivar el uso del proxy segun sea necesario.
Desactivar TOR y navegar a un sitio de verificacion de IP yo utilizo http://myipaddress.com, con TOR desactivado debe aparecer nuestra direccion de IP real.
3.3.-Activar TOR y navegar nuevamente hacia el sitio de verificacion de IP publica y en este caso debera aparecernos una direccion publica distinta, correspondiente al proxy que estariamos utilizando.

NOTA A: Al estar utilizando un proxy se reduce nuestra velocidad de navegacion pues ademas de la triangulacion dependemos de la velocidad y saturacion de dichos proxys
NOTA B: Para poder navegar a sitios seguros (HTTPS) necesitamos desactivar TOR

Ejecutando programas graficos de linux desde Windows via SSH

Tuesday, October 27th, 2009

Continuando con este proyecto me encontre con la necesidad de ejecutar programas graficos en la maquina virtual que desde un cliente linux no es ningun problema, sin embargo para hacerlo desde un cliente windows requiere algunos ajustes previos, aqui el mini-how-to de como hacerlo, esto esta aplicado a una maquina virtual, sin embargo deberia funcionar sin problemas en una maquina fisica en red.

Maquina servidor (equipo con linux en el que se van a ejecutar los programas)
En ubuntu es necesario instalar el SSH si no se tiene instalado instalarlo con el siguiente comando:
sudo apt-get install ssh
Abrir el archivo /etc/ssh/ssh_config en un editor de textos y ubicar la siguente linea:
#   ForwardX11 no
y editarla para que quede asi:
ForwardX11 yes
Guardar los cambios y reiniciar el servicio de ssh
sudo  /etc/init.d/ssh restart
Maquina cliente (equipo con windows en el que se requiere ver la pantalla de la aplicacion)
Descargar e instalar xming (X server libre para Windows)
http://sourceforge.net/projects/xming/files/Xming
*Durante la instalacion preguntara si desea uno instalar PuTTy si no esta instalado en la computadora es necesario instalarlo.
Arrancar PuTTy
En Session > “Host Name” poner la ip de la maquina linux y
En Session > “Connection type” seleccionar SSH (Puerto 22)
En Connection > SSH > X11 > “X11 forwarding” Marcar el checkbox de Enable X11 Forwarding
Presionar el boton de [Open]

Capturar el usuario y el

password

En el prompt ejecutar el programa que se desea por ejemplo “xeyes”

1.- Maquina servidor (equipo con linux en el que se van a ejecutar los programas)

1.1.- En ubuntu es necesario instalar el SSH si no se tiene instalado instalarlo con el siguiente comando:

sudo apt-get install ssh

1.2.-Abrir el archivo /etc/ssh/ssh_config en un editor de textos y ubicar la siguente linea:

#   ForwardX11 no

y editarla para que quede asi:

ForwardX11 yes

1.3.-Guardar los cambios y reiniciar el servicio de ssh

sudo  /etc/init.d/ssh restart

2.-Maquina cliente (equipo con windows en el que se requiere ver la pantalla de la aplicacion)

2.1.-Descargar e instalar xming (X server libre para Windows)

http://sourceforge.net/projects/xming/files/Xming

*Durante la instalacion preguntara si desea uno instalar PuTTy si no esta instalado en la computadora es necesario instalarlo.

2.2.-Arrancar PuTTy

En Session > “Host Name” poner la ip de la maquina linux y

En Session > “Connection type” seleccionar SSH (Puerto 22)

En Connection > SSH > X11 > “X11 forwarding” Marcar el checkbox de Enable X11 Forwarding

Presionar el boton de [Open]

Capturar el usuario y el password

En la linea de comando de ssh se puede ejecutar el programa que se desea por ejemplo “xeyes”

Arrancar una maquina en background utilizando VirtualBox

Monday, October 26th, 2009
1.- Crear un archivo .bat llamemosle maq-virt.bat con el siguiente contenido:
“c:\program files\sun\virtualbox\VBoxHeadless” -startvm “Nombre_de_maquina_virtual” -p 3340
2.- Crear un archivo .vbs llamemosle maq-virt.vbs con el siguiente contenido:
CreateObject(”Wscript.Shell”).Run “”"” & WScript.Arguments(0) & “”"”, 0, False
3.- Ambos archivos deben estar en el mismo directorio.
4.- Crear un acceso directo al archivo vbs y editar las propiedades y ajustarlas a nuestras necesidades:
C:\Users\Home\Desktop\start.vbs startvm.bat
5.- Para arrancar la maquina virtual solo hay que ejecutar el Acceso directo.

Debido a necesidades recientes me vi en la necesidad de instalar una maquina virtual linux en un Host windows, pero necesito que la maquina linux este siempre encendida incluso desde que inician la computadora, sin embargo para que la pantalla no le moleste al usuario decidi hacerlo en background, tube que buscar un manual de como hacerlo, y en vista de que lo voy a necesitar varias veces decidi ponerlo mas a la mano aqui en mi pagina resumido y traducido.

Al cesar lo que es del cesar Version Original

1.- Crear un archivo .bat llamemosle maq-virt.bat con el siguiente contenido:

“c:\program files\sun\virtualbox\VBoxHeadless” -startvm “Nombre_de_maquina_virtual” -p 3340

2.- Crear un archivo .vbs llamemosle maq-virt.vbs con el siguiente contenido:

CreateObject(”Wscript.Shell”).Run “”"” & WScript.Arguments(0) & “”"”, 0, False

3.- Ambos archivos deben estar en el mismo directorio.

4.- Crear un acceso directo al archivo vbs y editar las propiedades y ajustarlas a nuestras necesidades:

C:\Users\Home\Desktop\start.vbs startvm.bat

5.- Para arrancar la maquina virtual solo hay que ejecutar el Acceso directo.

Montar un Volumen Logico (LVM)

Wednesday, May 27th, 2009

Es muy comun crear Volumenes Logicos para almacenar informacion, sin embargo cuando por alguna razon el sistema operativo en el que esta montado dicho volumen deja de arrancar, montar estos volumenes no es tan sencillo como montar un disco comun, hace tiempo encontre un documento de como hacerlo y quise tenerlo a la mano para cuando lo necesitara, sin embargo le encontre un error al procedimiento y para que esto no me sucediera de nuevo lo anote corregido y lo traduci simplificarme el trabajo, lo posteo aqui para tenerlo a la mano, pero abajo estan los creditos correspondientes.

1.- Conseguir un CD “Live” de linux, yo lo hice utilizando Ubuntu 8.04.

2.- Arrancar utilizando dicho disco e instalar la herramienta lvm2 si no esta ya instalada.

# apt-get install lvm2

3.- Asegurarse de que el disco es correctamente reconocido.

# fdisk -lu

4.- Una vez instalado, correr pvscan para buscar volumenes fisicos en los discos. Esto es para asegurarse de que los Volumenes hayan sido detectados por Linux.

# pvscan
PV /dev/sda2 VG VolGroup00 lvm2 [74.41 GB / 32.00 MB free]
Total: 1 [74.41 GB] / in use: 1 [74.41 GB] / in no VG: 0 [0 ]

5.- Buscar volumenes logicos en los discos.

# vgscan
Reading all physical volumes. This may take a while...
Found volume group "VolGroup00" using metadata type lvm2

6.- Ejecutar el sigueinte comando para cargar el modulo (En ubuntu fue necesario, en alguna otra distro podria no serlo).

# modprobe dm-mod

7.- Activar todos los volumenes disponibles.

# vgchange -a y
2 logical volume(s) in volume group "VolGroup00" now active

8.- Ejecutar lvscan para buscar volumenes logicos en todos los discos. Pueden verse las particiones dentro de los discos activos.

# lvscan
ACTIVE '/dev/VolGroup00/LogVol00' [72.44 GB] inherit
ACTIVE '/dev/VolGroup00/LogVol01' [1.94 GB] inherit

9.- Montar la particion a cualquier directorio que se desee (en este caso utilizamos /mnt)

# mount /dev/VolGroup00/LogVol00 /mnt

10.- Ahora la informacion del Volumen Logico debe estar disponible accesando /mnt disponible para respaldarla.

Nota: El documento no es originalmente mio, yo solo lo traduje y le corregi un error al procedimiento, he aqui la referencia original