Feb 04, 2012

Pablo Olmos de Aguilera

Pablo Olmos de Aguilera
Geeks & Linux Atelier! feed

Mi Escritorio de Febrero


En general ha sido un mes muy intenso el que se fue. Empecé el 2 de enero a trabajar y poco a poco me vi con tanta pega que tuve que dejar muchas cosas de lado para avanzar y completar el mes. Sin embargo resulta satisfactorio trabajar por lo que estudiaste por tantos años y que todo tu esfuerz se vea recompensado. En ese sentido estoy muy contento… El objetivo se cumplió y al fin puedo ponerle más atención a otras cosas.

Como el sitio. Los últimos meses había trabajado poco en el sitio y había escrito pocas cosas nuevas debido a que estaba completamente concentrado en el estudio y en lo relacionado con mi titulación. Ahora que tengo mi título en mano puedo darle más tiempo… Y eso ha derivado en nuevos reviews. Y se vienen más cosas… Sólo paciencia.

Y ahora al Escritorio de febrero:

Wallpaper: Interested

Tema de iconos: awoken white

Tema gtk: Zukitwo Resonance

Wallpaper inicio de sesión: Canopy

Y bueno, eso ha sido todo por esta oportunidad. ¡Saludos!

TwitterFacebookDeliciousDiggMeneameGoogle ReaderTumblrCompartir

Feb 03, 2012

Pablo Olmos de Aguilera

Pablo Olmos de Aguilera
Geeks & Linux Atelier! feed

Gm-Notify, notificaciones de tus correos desde Unity


Existen varias opciones para administrar tu correo. En lo personal ninguno me gusta, así que me quedo con el clásico navegador web. Sin embargo, me gusta la posibildad de que me llegue un mensaje avisándome de que tengo un nuevo correo en mi bandeja de entrada.

Por lo cual me puse a revisar y me encontré con gm-notify, una simpática aplicación que se integra muy bien con Unity y que te avisa cuando tienes correos nuevos.

Tanto su instalación como su funcionamiento es muy fácil. Podrás encontrarlo desde el centro de Software de Ubuntu o instalando desde una terminal con

sudo apt-get install gm-notify

Podrás acceder a el escribiendo gm-notify en el Dash de Unity. Cuando lo hagas podrás configurarlo desde el inicio:

Lo único que tienes que hacer es poner tu cuenta de usuario y contraseña. Luego el sistema escaneará y te avisará mediante una notificación de que tienes nuevo mail:

En mi caso es lo que necesito… Sólo necesito saber si llegó un nuevo mail a mi bandeja de entrada. Cuando pase eso haz click en el indicador de mensajes y te darás cuenta que está contado el número de mensajes nuevos. Si lo seleccionas te enviará a la página de gmail. Pero además puedes configurarlo para que te envíe en vez de la versión web a tu cliente de correo preferido.

Podrás configurar además si quieres añadir un sonido para que te avise de correo nuevo o si deseas que se ejecute en el inicio de sistema:

Como ven la aplicación se integra de manera excelente con el sistema, su funcionamiento me agrada bastante y espero que a ustedes también les guste.

Saludos!

TwitterFacebookDeliciousDiggMeneameGoogle ReaderTumblrCompartir

Feb 02, 2012

Pablo Olmos de Aguilera

Pablo Olmos de Aguilera
Geeks & Linux Atelier! feed

Mi Ubuntu (Parte VII): Instalar Screenlets en Ubuntu (Actualización)


Al fin contamos con una nueva versión de Screenlets. Esta versión, compatible además con Linux Mint, añade nuevas opciones muy interesantes. Entre ellas la posibilidad de agregar Google gadgets, nuevos screenlets disponibles y mejoras en la manipulación de cada screenlet. Es una actualización compatible además con la versión de Ubuntu que se viene, así que la usas también podrás probarla. A revisar se ha dicho.

…viene de la sexta parte.

(Fanfarria. La gente se pone de pie, algunos hasta lloran de la emoción)

Hoy hablaré de algo muy interesante y relativamente nuevo: los screenlets y/o gadgets. Ahora, comenzaré con los Screenlets y el próximo artículo les contaré sobre los Google gadgets.

Pero, ¿de qué estamos hablando?

¿Qué son los Gadgets?

(Debo decir que me entretuve bastante leyendo esta historia…)

Los gadgets, o widgets, son miniapliaciones de escritorio, que son ejecutados mediante un motor de widgets (o gadgets).

Las funciones que cumplen son diversas:

  • Acceso a aplicaciones frecuentemente utilizadas. Como lo que hace el AWN

  • Tener información a la vista: las típicas notas pegadas en tu refrigerador, movidas a tu computador. En Ubuntu tenemos a Tomboy

  • Etc. En esta categoría tenemos a calendario, calculadora, hora, juegos, etc.

Algo que destaca a todos los tipos de gadgets, sea cual sea el SO que lo soporte, es que son gratuitos.

Según los entendidos en el tema, son sencillos de hacer. Aquí no me meto, ya que en programación soy un cero a la izquierda. En GNU/Linux se utiliza Python para la realización, sin embargo, también se pueden hacer en Javascript, XML, etc.

Un poco de Historia

La pregunta que me cabía en este tema era ¿y quién fue el primero en desarrollar esto?. Para responder a esto, cabe retroceder unos cuantos años.

Los primeros en utilizar los widgets fue Netscape, el año 1996, pero el boom surgió el año 2003 cuando surgió konfabulator, un motor de widgets para Mac OS X; el éxito fue inmediato, y la compañía responsable recibió numerosas ofertas de compra. Pero fue Yahoo! quien dio el golpe de gracia, y la compró. De aquí nace Yahoo Widgets, con soporte para Windows y Mac OS X. Luego es Windows quien incluye esto en Vista, mediante el establecimiento de un sidebar, que “ancla” estas miniaplicaciones (esta idea era de Yahoo, pero… )

Hoy en día contamos con widgets en todos lados: Facebook, Google, MySpace, etc.

¿Y GNU/Linux?

Bueno, los que se comenzaron con este proyecto fueron los de screenlets.org, y han avanzado mucho en este último año. Su última versión ha superado las expectativas de hasta el más desconfiado (me incluyo). Además, tenemos a google gadgets, que ha salido hace muy poco y ha dejado muy buena impresión.

Pero ha sido mucha palabrería, vamos a instalar…

Instalar Screenlets en Hardy Heron

Después de meditarlo, voy a excluir el cómo instalarlo desde la terminal, y lo veremos de la manera más fácil…

¿Por qué?

  1. La idea original de esta serie es ayudar al nuevo usuario, y en este sentido contamos con excelentes instaladores
  2. Mostramos artículos más interesantes

Lo que deben hacer es descargar este paquete. Esta página, GetDeb, es excelente para descargar programas de todo tipo. Recomendada.

Una vez hecho esto, hagan doble click e instálenlo. Una vez instalado, podrán acceder a él desde Aplicaciones/Accesorios/Screenlets

Instalar Screenlets en Intrepid Ibex / Jaunty Jackalope /Karmic Koala

A partir de Intrepid Ibex Screenlets  se encuentra en los repositorios. Basta que abras una terminal y escribas sudo apt-get install screenlets

Una vez instalado, podrán acceder a él desde Aplicaciones/Accesorios/Screenlets

Instalar Screenlets en Natty Narwhal y Oneiric Ocelot

Para instalarlo en Natty, abre una terminal y añade el repositorio estable con
sudo add-apt-repository ppa:screenlets/ppa
sudo apt-get update
sudo apt-get install screenlets

Para instalar los screenlets que faltan, ya que no te encontrarás con muchos al instalarlo, escribe

sudo apt-get install screenlets-pack-all

Les recomiendo que instalen la sidebar, ya que permite que sus miniaplicaciones estén ancladas. Del resto prefiero que ustedes mismos los revisen. Le da mayor emoción.

Cuando seleccionen cada uno de éstos, les aparecen estas opciones (que también pueden acceder en Opciones  -_- ):

Para ejecutar escribe en el Dash de Unity Screenlets. cuando lo ejecuten por primera vez, aparecerá lo siguiente:

Si no aparece nada, fíjense en su área de notificación que aparecerá el icono.

Comentario aparte merece la cantidad de screenlets que hay. Es impresionante lo que logra una comunidad entusiasta (¿qué? ¿en donde has estado?).

Les recomiendo que instalen la sidebar, ya que permite que sus miniaplicaciones estén ancladas. Del resto prefiero que ustedes mismos los revisen. Le da mayor emoción.

Cuando seleccionen cada uno de éstos, les aparecen estas opciones (que también pueden acceder en Opciones  -_- ):

Son opciones de visualización básicamente. Si hacen click en widget, desaparecerá. Pero no desesperen, ya que si apretan F9, se oscurecerá la pantalla y saldrá el screenlet. ¿Por qué pasa esto?. Jejeje, tiene que ver con compiz, pero si tienen paciencia, ya les enseñaré en un futuro como hacerlo…

Así se ve ya configurado:

Cada screenlet es configurable: puedes modificar cómo se ve, el tamaño, y varias opciones en general. Ahora, si lo hago como widget:

Si observan, se darán cuenta que el tamaño difiere. Además el color. Si hacen click fuera del screenlet, saldrán de la página.

Deben tener compiz activado para su funcionamiento.

En general, tanto su instalación como su configuración son sencillas. Sólo hay que perderle el miedo.

A modo de comentario, quiero mencionar las ventajas y desventajas de los screenlets:

  • Ventajas:
    • Calidad
    • Cantidad
    • Personalización.
    • Ciertamente sorprende la cantidad, pero más la calidad de cada uno de éstos. Son muy personalizables, y no escatiman detalles.
  • Desventajas:
    • Requiere Compiz
    • Consumen muchos recursos. Unas cuantas aplicaciones pueden llegar a consumir hasta 100 Mb RAM, lo que a mi parecer es excesivo para computadores de 512 de RAM (no sé en que mundo vives…), por ej.

Sin embargo, la decisión final la tiene cada uno. Pruébenlo y no se arrepentirán…

Dato: primero, para añadir más screenlets, desde su página oficial o desde gnome-look podrán encontrar muchos. Instalarlos es my fácil: desde el menú, haz click en Añadir y busca la ruta del archivo.

Para añadir más wallpapers, visiten Graffiti Wallpaper. Es una gran página, con wallpapers de muchas resoluciones, y de gran calidad. No se van a arrepentir.

Bueno, eso ha sido todo por hoy. Ha sido un trabajo arduo, pero ha dado sus frutos; dudas, reclamos y sugerencias en los comentarios. Nos vemos la próxima con los google gadgets!

TwitterFacebookDeliciousDiggMeneameGoogle ReaderTumblrCompartir

Jan 22, 2012

Linux4Newbies: Apreciación sobre la paranoia caricaturizada

Jan 12, 2012

Gonzalo Díaz

Gonzalo Díaz
/dev/GON (español) feed

No me diga

En el último tiempo, he acumulado algunos términos que simplemente DETESTO que me digan. ¿Soy un odioso? no se que tanto, pero todos tenemos alguna palabra o frase que nos saca del equilibrio...

[...]


Jan 10, 2012

Claudio Cortes

Claudio Cortes
Bash Power! feed

mostrar archivos ocultados por virus

bueno, esto no es precisamente Bash, pero sirve. Sucede frecuentemente en sistemas Microsoft Windows, nuestro pendrive es insertado en un PC infectado y el virus reemplaza los archivos originales por accesos directos. Los archivos originales no son borrados, no han desaparecido (aunque no los veas), simplementa han sido ocultados. El procedmiento para limpiar este frecuente desastre es el sigiuente.
Insertar del pendrive, con el antivirus activado y actualizado


  • En las opciones de carpeta de Windows activar las opciones para mostrar archivos ocultos y de sistema, después de hacer ésto ya podrás ver tus archivos originales que han sido ocultados por el virus.
  • Elimina los accesos directos fraudulentos (los íconos que tienen la flecha al costado inferior izquierdo), para eliminar de raíz estos archivos seleciónalos y presiona la tecla SHIFT+SUPR (así te saltas la papelera)
  • Elimina la papelera de reciclaje del pendrive con el mismo métido enterior, la papelera es una carpeta que tiene por nombre RECYCLER, RECYCLED, RECYCLE o cosas similares.

Ahora, el último paso es volver a hacer visibles tus archivos ocultados por el virus, para ésto debes abrir una consola de windows, haciendo click en el menu de inicio > accesorios > Simbolo de sistema  (o algo similar). En la consola debes escribir lo siguiente:

attrib -s -h -r f:/*.* /s /d

Donde f: es la letra de tu pendrive, listo... asunto arreglado.

Jan 09, 2012

Linux4Newbies: MOC (Music On Console)

Jan 06, 2012

Linux4Newbies: Android y GNU/Linux: Hermanos gemelos?

Dec 15, 2011

Claudio Cortes

Claudio Cortes
Bash Power! feed

magen semitransparente

para crear una imagen semitransparente, primero necesitamos tener instalado el paquete ImageMagik o GraphicsMagik y hacer en consola:

convert archivo.jpg -alpha set -channel A -fx 0.5 archivo.png
Claudio Cortes

Claudio Cortes
Bash Power! feed

archivos en minúsculas

compilando Calmet/Calpuff en Linux, me he dado cuenta que la compilación falla porque algunos nombres de archivo vienen en mayúscula. Para solucionar esto basta con hacer dentro del directorio de CODE de Calpuff:

for f in `find`; do mv -v $f `echo $f | tr '[A-Z]' '[a-z]'`; done

...y repetir este paso para las demás utilizades (calmet, calpost, etc)

Tarea pendiente: Capacidad recursiva, se agraceden contribuciones

Nov 15, 2011

Gonzalo Díaz

Gonzalo Díaz
/dev/GON (español) feed

FirePHP, otra herramienta de depuración de PHP

Llevo años usando Xdebug para hacer depuración de PHP, pero últimamente estoy ocupando algo más. FirePHP está compuesto de 2 partes, una librería PHP (puede ser usada en versión orientada a objetos o...

[...]


Nov 08, 2011

Daniel Santibáñez Polanco

Daniel Santibáñez Polanco
Probando Ubuntu feed

gsharkdown : Descargar Música desde grooveshark

Grooveshark es una página que nos ofrece escuchar música online, además de crear playlist entre otros servicios más; gsharkdown nos ofrece además de poder buscar y poder oír la música en esta página, la opción de poder descargarla a tu pc.

Para instalarlo simplemente agregamos el repositorio por la terminal

sudo add-apt-repository ppa:ferramroberto/gsharkdown

actualizamos

sudo apt-get update


luego instalamos (Haciendo click o copiando el texto en la terminal)


sudo apt-get install gsharkdown

fuente


Nov 01, 2011

Daniel Santibáñez Polanco

Daniel Santibáñez Polanco
Probando Ubuntu feed

Compartir internet con Ubuntu. Una forma más fácil

Anteriormente había publicado una forma con la que se podía compartir internet através de Firestarter, pero con los cambios constantes que se realizan al DHCP server, era muy engorroso tener que volver configurarlo para poder nuevamente compartir internet a otros dispositivos. Con este método nos olvidamos de eso, ya que usamos la particularidad de las redes ad-hoc, en el caso de las redes inalámbricas y el método de asignación de ip " compartido con otros equipos" que ofrece networkmanager, en la pestaña "ajuste de ipv4" de la configuración de cada red, ya que al momento de activarse, queda automáticamente compartiendo internet a los demás dispositivos.


Para comenzar solamente creamos una red nueva con el dispositivo al cual los otros equipos se conectarán, en otras palabras el que NO esta conectado a internet y sera el que distribuirá:


- En el caso de las redes inalámbricas crear una red nueva seleccionando el dispositivo al cual se conectan los otros equipos y automáticamente quedará compartiendo la conexión a internet.

- En el caso de que se comparta la conexión a internet a través  de una red Lan, se debe seleccionar editar conexiones para abrir networmanager, crear o seleccionar una red Lan, ir a la pestaña "ajuste de ipv4" y cambiar de automático (o lo que este seleccionado ) a "compartida con otros equipos", luego guardar y quedará compartiendo la conexión a internet.



Oct 24, 2011

Daniel Santibáñez Polanco

Daniel Santibáñez Polanco
Probando Ubuntu feed

PlayDeb: Repositorio con juegos para ubuntu

Playdeb es una página que viene de la mano de Getdeb, la cual está dedicada a proporcionar un repositorio de juegos libres para ubuntu(no oficial). Al igual que getdeb, hay que descargar un archivo de configuración, el cual añadirá a la lista de repositorios a playdeb: Descargar Aquí, O añadirlo a "mano" como lo explica su HOW TO(ingles).












No olvidar actualizar: por terminal poner sudo apt-get update o abrir el gestor de actualizaciones y hacer click en comprobar.

Y al igual que getdeb, nos ofrece una interfaz web amigable con la que podemos ver los juegos que ofrece el repositorio, los cuales podemos instalar haciendo click install this now (previamente habiendo añadido e instalado el repositorio).


playdeb.net


Oct 22, 2011

Gonzalo Díaz

Gonzalo Díaz
/dev/GON (español) feed

Opinión sobre Unity y otros entornos de Escritorio

No soy ningún experto en usabilidad, por lo tanto no tengo ningún estándar o  métrica para evaluar un entorno de escritorio, pero llevo varios años moviéndome de un Sistema Operativo a otros, de...

[...]


Sep 21, 2011

blogger-droid blogeando desde Android

Desde hace unas semanas tengo un telefono con Android, con este utilizo Twitter, Google +, Facebook, Internet y otras aplicaciones. Y por que no posteo en Blogger también??, y hay un aplicación para esto en market de Android y se llama Blogger-droid, de echo este post está realizado en está aplicación.
La puedes descargar desde http://market.android.com/details?id=and.blogger
Published with Blogger-droid v1.7.4

Sep 11, 2011

Maximiliano Marin Bustos

Maximiliano Marin Bustos
Maximiliano Marin » linux feed

Error: “The VMWare Authorization service is not running”

Hola! El semestre se esta acabando, pero no por eso los posts. Ahora estaba probando VMWare para levantar una vm con Linux. Todo iba muy bien, hasta que me salio este error: Este error ocurre cuando el servicio de VMWare se detiene por motivos que desconozco :B. Para solucionarlo hay que ir a: Inicio -> [...]
Maximiliano Marin Bustos

Maximiliano Marin Bustos
Maximiliano Marin » linux feed

php5.ini en GoDaddy

Cada vez son mas las personas que contratan algún servicio de hosting compartido para alojar sus sitios web. Esto es muy bueno, ya que hace que la web crezca cada vez mas. El panorama se complica cuando el desarrollador necesita hacer un cambio importante en la configuracion de php y no se tiene privilegios de usuario. GoDaddy [...]
Maximiliano Marin Bustos

Maximiliano Marin Bustos
Maximiliano Marin » linux feed

Hosts Virtuales en IIS 7.5 y Apache 2

En estricto rigor, cada servidor web debe alojar a un sitio web. Solo basta con imaginar la cantidad de sitios web que existen y la cantidad de maquinas funcionando para levantar cada sitio web (Menos mal existe la virtualizacion, pero aun asi el gasto de recursos sera gigante), para darse cuenta que esta medida es [...]

Aug 25, 2011

Felipe Ignacio Portales Oliva

Felipe Ignacio Portales Oliva
I'm fportales » GNU/Linux feed

Controlando Amarok desde un dispositivo con Android

Buscando nuevas utilidades para mi Galaxy Tab encontré esta útil herramienta. En este artículo usted aprenderá a: - Controlar Amarok usando Android como control remoto.

Aug 02, 2011

David Moreno

David Moreno
Stereonaut! feed

RVM + Rake tasks on Cron jobs

RVM hates my guts. And it doesn't matter, because I hate RVM back even more. Since I was technologically raised by aging wolfs, I have strong reasons to believe that you just shouldn't have mixed versions of software on your production systems, specially, if a lot of things are poorly tested, like most of Ruby libraries, aren't backward compatible. I was raised on a world where everything worked greatly because the good folks at projects like Debian or Perl have some of the greatest QA processes of all time, hands down. So, when someone introduces a thing like RVM which not only promotes having hundreds of different versions of the same software, both on development, testing and production environments, but also encourages poor quality looking back and looking forward, there isn't anything else but to lose faith in humanity.

But enough for ranting.

I had to deliver this side project that works with the Twitter API and the only requirement pretty much was that it had to be both run from the shell but also loaded as a class within a Ruby script. And so I did everything locally with my great local installation of Ruby 1.8.7. When it came the time to load on the testing/production server I found myself on a situation where pathetic RVM was installed. After spending hours trying to accommodate my changes to run properly with Ruby 1.9.2, I set up a cron job using crontab to run my shit every now and then. And the shit wasn't even running properly. Basically, my crontab line looked something like this:

*/30 * * * * cd /home/david/myproject && rake awesome_task

And that was failing, crontab was returning some crazy shit like "Ruby and/or RubyGems cannot find the rake gem". Seriously? Then I thought, well, maybe my environment needs to be loaded and whatever, so I made a bash script with something like this:

#!/bin/bash
cd /home/david/myproject
/full/path/to/rvm/bin/rake -f Rakefile awesome_task

And that was still failing with the same error. So after trying to find out how cron jobs and crontab load Bash source files, I took a look at how Debian starts its shell upon login. And while that didn't tell me that much that I didn't know, I went to look at the system-wide /etc/profile and found a gem, a wonderful directory /etc/profile.d/ where a single shitty file was sitting, smiling back at me, like waiting for me to find it out and swear on all problems in life: rvm.sh. /etc/profile is not being loaded when I just run /bin/bash by my crappy script, only when I log in, I should've known this. Doesn't RVM solve the issue of having system-wide installations so the user doesn't have to deal with, you know, anything outside of his own /home ?

So I had to go ahead and do:

#!/bin/bash
source /etc/profile
cd /home/david/myproject
/full/path/to/rvm/bin/rake -f Rakefile awesome_task

And hours later I was able to continue with work. Maybe this will help some poor bastard like myself on similar situation on the future.

Of course one can argue that I could've installed my own RVM and its Ruby versions, but why, oh why, if it was, apparently, already there. Why would I have to fiddle with the Ruby installations if all I want is get my shit done and head to City Bakery where I can spend that money I just earned on chocolate cookies? My work is pretty simple to run with pretty much any ancient version of Ruby, nothing fancy (unless you call MongoMapper fancy). RVM is a great project that doesn't solve an issue, but just hides some really fucked up shit on the Ruby community.

Jul 01, 2011

David Moreno

David Moreno
Stereonaut! feed

DebConf 11

Last year, I had all the intention in the world to go to Bosnia and Herzegovina this summer to attend DebConf 11, but given my non-existent involvement on the project for the last couple of years, there's no reason for me to do it. Even last year when the event was held in town, I was not entirely thrilled about it. Life has changed quite a bit in the last few years, allowing me to just find and allocate my priorities on their right places.

I hope everybody attending have a great time and snap lots of photos for me to see and regret not being there.

Jun 27, 2011

Miguel Cantillana Farias

Miguel Cantillana Farias
Home feed

Plantilla de Ejemplo - Administración (HTML+CSS)

Lo prometido es deuda, les dejo el demo del backend desarrollado en clases con un poco más de detalle, lo pueden descargar de acá backend-demo

El layout refleja la siguiente estructura gráfica.

Base HTML

Como pueden observar en el HTML se divide en 3 grandes bloques, #head, #main y #footer donde en cada un de ellos se deviden en los distintos elementos que situaremos.

Los estilos estan expuestos en el directorio CSS, dentro de el directorio hay una hoja llamada template.css puedes agregar todos los estilos que quieras en esa hoja o agragar más hojas, además recomiendo ser ordenado y dejar fotos e imagenes en carpeta images y bibliotecas javascript en algún directorio dedicado a esto.

Ahora sólo te queda seguir perfeccionando la plantilla, cambiar colores y en fin integrarlo con tu código en codeigniter.

¿Dudas?

Jun 26, 2011

Miguel Cantillana Farias

Miguel Cantillana Farias
Home feed

Simple Login con Codeigniter 1.7.3 y postgreSQL

Code Igniter LogoComo dice el título, explicaré a grandes rasgos como crear un login con manejo de sesion con codeigniter 1.7.3, así que manos a la obra.

Lo primero es descargar codeigniter 1.7.3, lo descomprimos en nuestro directorio web, en mi caso es /home/USER/www si usas algún servidor web basado en windows como wamp la ruta es C:\wamp\www en el caso de Xampp es C:\xampp\htdocs.

una vez descomprimido el fichero procederemos a realizar algunas configuraciones como la conexion a la base de datos, que en nuestro caso es postgreSQL,  y otras como cargar bibliotecas para validación de formulario, utilitarios de URL, etc

Jun 14, 2011

Miguel Cantillana Farias

Miguel Cantillana Farias
Home feed

Clase 6, HTML y CSS

HTML Folder IconEn la presentación revisada en clases revisamos los conceptos asociados al desarrollo web, fundamento la construcción de sus sitios web en el Lenguaje Hipertextual HTML y su sinergía con CSS, dando una visión Semantica en el desarrollo de soluciones Web.

La presentación la pueden descargar desde acá

Además les dejo dejo material de Interés:

May 16, 2011

Christian González

Christian González
/home/chgonzalez feed

Iconos de carpetas en KDE SC 4.6.3

Hace algunos días se publicó la versión 4.6.3 de KDE SC. Como en cada versión de mantenimiento, se corrigieron algunos errores y en general se sigue mejorando la experiencia del usuario. Sin embargo, hay un aspecto que ha levantado bastante polémica: los nuevos íconos de carpetas del tema Oxygen.

oxygen-icons-4.6.3

Personalmente creo que son algo anticuados y no armonizan bien con el resto de los íconos de Oxygen. Y por lo que he leído en varios blogs, estos nuevos íconos no han tenido buena aceptación. Aunque ya saben lo que dicen: en gustos no hay nada escrito.

De todas formas, es posible seguir usando los íconos de la versión anterior (la 4.6.2) descargándolos directamente desde el SVN de KDE. El procedimiento en Fedora (aunque es similar para otras distros) es el siguiente:

su -
yum install subversion
cd /usr/share/icons
svn co svn://anonsvn.kde.org/home/kde/tags/KDE/4.6.2/oxygen-icons/

Advertencia: la descarga utilizará aproximadamente 720 MB en tu disco. Asegúrate de tener espacio suficiente.

Posteriormente debemos dirigirnos a Preferencias del sistema -> Apariencia de las aplicaciones -> Iconos y seleccionar el tema "Oxígeno" (en mi caso aparecerán dos: el primero es el que que instala a partir de los paquetes del sistema y el segundo es el que descargué directamente desde SVN).

systemsettings-icons

Finalmente hay que hacer click en el botón "Aplicar" y tu escritorio volverá a usar los íconos de carpetas de KDE SC 4.6.2.

oxygen-icons-4.6.2

Nota final: si quieres recuperar algo de espacio en tu disco, puedes eliminar el directorio /usr/share/icons/oxygen-icons/scalable y liberarás casi 600 MB. Yo lo hice así y no he tenido problemas hasta el momento.


Apr 19, 2011

Zimbra: Como proteger listas de correo de usuarios de otros dominio


En la consola de administración de Zimbra se pueden crear listas de correo que no son otra cosa que un alias que entrega el o los mensajes a varios usuarios.

Con el fin de que sea mas facil el enviar mensajes masivos, muchos optamos por la practica de crear un alias llamado todos@midominio.com en el cual estarán como miembros todas las direcciones de correo de nuestros usuarios. Pero deben imaginar que sucedería si uno o varios spammers envían sus mensajes a esta lista.

Para evitar esto ultimo se puede optar por configurar postfix para que proteja el alias. Lo hacemos de la siguiente manera como usuario zimbra:
su - zimbra

Creamos el archivo /opt/zimbra/postfix/conf/remitentes_permitidos que contenga:

localhost OK
midominio.ec OK
mail.midominio.ec OK
razametal@dominio.com OK

Con esto quiero decir que voy a permitir los remitentes de localhost, midominio.ec, mail.midominio.ec y razametal@dominio.com, esta ultima linea la he agregado para mas adelante poder hacer pruebas de funcionamiento.
Creamos el archivo /opt/zimbra/postfix/conf/destinatarios_protegidos que contenga:


todos@midominio.ec                  lista_remitentes_permitidos
usuario-protegido@midominio.com     lista_remitentes_permitidos

Creamos un script en bash /opt/zimbra/postfix/conf/actualizar_destinatarios_protegidos para actualizar la lista de destinatarios protegidos, el archivo debe contener:

#!/bin/bash
echo "actualizando remitentes_permitidos ..."
postmap /opt/zimbra/postfix/conf/remitentes_permitidos
echo "actualizando destinatarios_protegidos ..."
postmap /opt/zimbra/postfix/conf/destinatarios_protegidos

Este script lo ejecutaremos cada vez que hagamos una modificacion en los archivos destinatarios_protegidos y remitentes_permitidos.
Hacemos el script ejecutable y lo ejecutamos, esto nos creara dos archivos nuevos con extension .db dentro de /opt/zimbra/postfix/conf/ :


chmod a+x /opt/zimbra/postfix/conf/actualizar_destinatarios_protegidos
/opt/zimbra/postfix/conf/actualizar_destinatarios_protegidos

Ahora es tiempo de modificar la configuracion de postfix en /opt/zimbra/postfix/conf/main.cf agregamos las siguientes lineas al final del archivo:

lista_remitentes_permitidos = check_sender_access hash:/opt/zimbra/postfix/conf/remitentes_permitidos, reject
smtpd_restriction_classes = lista_remitentes_permitidos

Agregamos al inicio del archivo /opt/zimbra/conf/postfix_recipient_restrictions.cf :

check_recipient_access hash:/opt/zimbra/postfix/conf/destinatarios_protegidos

Reiniciamos postfix:


postfix reload

Ahora debemos probar si funciona, hacemos telnet a nuestro servidor y probamos con el usuario razametal@dominio.com que se encuentra en la lista de remitentes permitidos:


Connected to mail.midominio.ec
Escape character is '^]'.
220 mail.midominio.ec ESMTP Postfix
HELO gmail.com
250 mail.midominio.ec
mail from: razametal@dominio.com
250 2.1.0 Ok
rcpt to: todos@midominio.ec
250 2.1.5 Ok
quit
221 2.0.0 Bye

Ahora probamos con un remitente que no se encuentre en la lista de permitidos:

Connected to mail.midominio.ec
Escape character is '^]'.
220 mail.midominio.ec ESMTP Postfix
HELO gmail.com
250 mail.midominio.ec
mail from: prueba@gmail.com
250 2.1.0 Ok
rcpt to: todos@midominio.ec
554 5.7.1 : Recipient address rejected: Access denied
quit
221 2.0.0 Bye

Para agregar remitentes/dominio modificamos como usuario zimbra los archivos:

/opt/zimbra/postfix/conf/remitentes_permitidos
/opt/zimbra/postfix/conf/destinatarios_protegidos

Luego se ejecuta el script para actualizar los archivos .db de postfix:

/opt/zimbra/postfix/conf/actualizar_destinatarios_protegidos

Y finalmente reiniciamos postfix:

postfix reload

Ahora todos@midominio.ec solo estara disponible para los remitentes_permitidos.



 via http://www.ecualug.org 

http://www.ecualug.org/2009/10/11/blog/razametal/zimbra_como_proteger_listas_de_correo_de_usuarios_de_otros_dominios

gracias RazaMetaL

Apr 08, 2011

Bienvenido GNOME3

El comienzo de una nueva era… y por supuesto
I am GNOME

Gracias a todos los que han contribuido para permitir esta nueva versión.

Finally GNOME 3.0 is here!


Mar 30, 2011

Christian González

Christian González
/home/chgonzalez feed

Nuevo cambio de hora en Chile: nuevos paquetes actualizados para CentOS 5 y Fedora

El gobierno decidió volver a posponer el cambio de hora en Chile, esta vez hasta el 7 de Mayo. Dejando de lado lo apropiado o inapropiado de la decisión desde el punto de vista energético, sólo quiero decir que me parece absolutamente ridículo realizar un cambio así con tan pocos días para ajustar todos los sistemas informáticos que existen. Pero de nada sirve llorar sobre la leche derramada; mejor vamos a ver cómo ajustar nuestros sistemas a esta nueva modificación.

Si ya actualizaste tus sistemas con los pasos descritos en mi entrada anterior, entonces tus sistemas van a realizar el cambio de hora el 2 de Abril... es decir, ¡este sábado! Así que si no quieres pasarte el fin de semana cambiando la hora de tus servidores (o arreglando los problemas el lunes en la mañana), lo mejor es que apliques las correcciones necesarias ahora.

Si utilizas Fedora, la actualización del paquete tzdata ya está en el repositorio updates-testing. Así que la solución es ejecutar (como root) la siguiente instrucción:

yum update tzdata* --enablerepo=updates-testing

En el caso de CentOS, aún no aparece la actualización de tzdata, así que decidí crear mis propios RPMs aplicando el parche de Fedora. Si quieres usarlos en tus servidores, puedes descargarlo desde aquí para la arquitectura i386 o desde aquí para x86_64 (lo SRPM modificado están aquí). Debido a que no incrementé la versión de los paquetes, debes instalarlos usando el parámetro "--force" de rpm. Por ejemplo, para i386 sería así:

rpm -Uvh --force tzdata-2011b-1.el5.i386.rpm tzdata-java-2011b-1.el5.i386.rpm

Para verificar que el cambio se ha aplicado correctamente, puedes usar el comando:

zdump -v -c 2011,2012 America/Santiago

Este es el resultado antes de la actualización de tzdata:

America/Santiago  Fri Dec 13 20:45:52 1901 UTC = Fri Dec 13 16:03:06 1901 CLT isdst=0 gmtoff=-16966
America/Santiago  Sat Dec 14 20:45:52 1901 UTC = Sat Dec 14 16:03:06 1901 CLT isdst=0 gmtoff=-16966
America/Santiago  Sun Apr  3 02:59:59 2011 UTC = Sat Apr  2 23:59:59 2011 CLST isdst=1 gmtoff=-10800
America/Santiago  Sun Apr  3 03:00:00 2011 UTC = Sat Apr  2 23:00:00 2011 CLT isdst=0 gmtoff=-14400
America/Santiago  Sun Oct  9 03:59:59 2011 UTC = Sat Oct  8 23:59:59 2011 CLT isdst=0 gmtoff=-14400
America/Santiago  Sun Oct  9 04:00:00 2011 UTC = Sun Oct  9 01:00:00 2011 CLST isdst=1 gmtoff=-10800
America/Santiago  Mon Jan 18 03:14:07 2038 UTC = Mon Jan 18 00:14:07 2038 CLST isdst=1 gmtoff=-10800
America/Santiago  Tue Jan 19 03:14:07 2038 UTC = Tue Jan 19 00:14:07 2038 CLST isdst=1 gmtoff=-10800

Y esta es la salida después de la actualización:

America/Santiago  Fri Dec 13 20:45:52 1901 UTC = Fri Dec 13 16:03:06 1901 CLT isdst=0 gmtoff=-16966
America/Santiago  Sat Dec 14 20:45:52 1901 UTC = Sat Dec 14 16:03:06 1901 CLT isdst=0 gmtoff=-16966
America/Santiago  Sun May  8 02:59:59 2011 UTC = Sat May  7 23:59:59 2011 CLST isdst=1 gmtoff=-10800
America/Santiago  Sun May  8 03:00:00 2011 UTC = Sat May  7 23:00:00 2011 CLT isdst=0 gmtoff=-14400
America/Santiago  Sun Aug 21 03:59:59 2011 UTC = Sat Aug 20 23:59:59 2011 CLT isdst=0 gmtoff=-14400
America/Santiago  Sun Aug 21 04:00:00 2011 UTC = Sun Aug 21 01:00:00 2011 CLST isdst=1 gmtoff=-10800
America/Santiago  Mon Jan 18 03:14:07 2038 UTC = Mon Jan 18 00:14:07 2038 CLST isdst=1 gmtoff=-10800
America/Santiago  Tue Jan 19 03:14:07 2038 UTC = Tue Jan 19 00:14:07 2038 CLST isdst=1 gmtoff=-10800

Esperemos que este sea el último cambio del año; no es muy entretenido andar ajustando la hora de todos mis servidores cada pocas semanas.


Mar 29, 2011

Christian González

Christian González
/home/chgonzalez feed

Cambio de hora en Chile: paquetes actualizados para CentOS 5 y Fedora

Como todos ya deben saber, el inicio del horario de invierno en Chile se extendió hasta el 2 de Abril. Esto significa que a las 24:00 horas del 2 de Abril, el reloj debe retrasarse una hora.

Este cambio tiene serias implicancias para los administradores de sistemas como yo, ya que los servidores no tienen por qué saber que se modificó la fecha del cambio de hora y por lo tanto harán el cambio en la fecha que estaba estipulada originalmente; es decir, el 12 de Marzo a las 24:00 horas... o sea, ¡mañana! Todo esto lo explica muy bien Aldrin Martoq en su blog (te recomiendo echarle una mirada antes de seguir leyendo este artículo).

Para los servidores Linux, la solución pasa por actualizar el paquete tzdata, que es el paquete que contiene la información que tu sistema utilizará para decidir cuándo hacer el cambio de hora. Lamentablemente, aún no ha sido publicada la actualización de tzdata para CentOS 5 (el sistema que usamos en casi todos los servidores de la empresa en la que trabajo) 
(ACTUALIZACIÓN: ya hay una nueva versión de tzdata en los repositorios oficiales de CentOS 5; ver comentario al final de este artículo). Por lo tanto decidí crear mis propios paquetes RPM actualizados e instalarlos en todos nuestros servidores CentOS. Para ello, descargué el SRPM de la última actualización oficial de tzdata en CentOS y le apliqué el parche publicado en el Bugzilla de Red Hat. Si quieres usarlo en tus servidores, puedes descargarlo desde aquí para la arquitectura i386 o desde aquí para x86_64 (los SRPM modificados estánaquí). Debido a que no incrementé la versión de los paquetes, debes instalarlos usando el parámetro "--force" de rpm. Por ejemplo, para i386 sería así:


rpm -Uvh --force tzdata-2010l-1.el5.i386.rpm tzdata-java-2010l-1.el5.i386.rpm

En el caso de Fedora, la actualización del paquete tzdata aún no está disponible en los repositorios oficiales. Sin embargo, puedes descargarla e instalarla tú mismo desde Koji.

Para verificar que el cambio se ha aplicado correctamente, puedes usar el comando:

zdump -v -c 2011,2012 America/Santiago

Este es el resultado antes de la actualización de tzdata:

America/Santiago  Fri Dec 13 20:45:52 1901 UTC = Fri Dec 13 16:03:06 1901 CLT is
America/Santiago  Sat Dec 14 20:45:52 1901 UTC = Sat Dec 14 16:03:06 1901 CLT is
America/Santiago  Sun Mar 13 02:59:59 2011 UTC = Sat Mar 12 23:59:59 2011 CLST i
America/Santiago  Sun Mar 13 03:00:00 2011 UTC = Sat Mar 12 23:00:00 2011 CLT is
America/Santiago  Sun Oct  9 03:59:59 2011 UTC = Sat Oct  8 23:59:59 2011 CLT is
America/Santiago  Sun Oct  9 04:00:00 2011 UTC = Sun Oct  9 01:00:00 2011 CLST i
America/Santiago  Mon Jan 18 03:14:07 2038 UTC = Mon Jan 18 00:14:07 2038 CLST i
America/Santiago  Tue Jan 19 03:14:07 2038 UTC = Tue Jan 19 00:14:07 2038 CLST i

Y esta es la salida después de la actualización:

America/Santiago  Fri Dec 13 20:45:52 1901 UTC = Fri Dec 13 16:03:06 1901 CLT is
America/Santiago  Sat Dec 14 20:45:52 1901 UTC = Sat Dec 14 16:03:06 1901 CLT is
America/Santiago  Sun Apr  3 02:59:59 2011 UTC = Sat Apr  2 23:59:59 2011 CLST i
America/Santiago  Sun Apr  3 03:00:00 2011 UTC = Sat Apr  2 23:00:00 2011 CLT is
America/Santiago  Sun Oct  9 03:59:59 2011 UTC = Sat Oct  8 23:59:59 2011 CLT is
America/Santiago  Sun Oct  9 04:00:00 2011 UTC = Sun Oct  9 01:00:00 2011 CLST i
America/Santiago  Mon Jan 18 03:14:07 2038 UTC = Mon Jan 18 00:14:07 2038 CLST i
America/Santiago  Tue Jan 19 03:14:07 2038 UTC = Tue Jan 19 00:14:07 2038 CLST i

Si tienes servidores con CentOS 5 o Fedora, apúrate y haz el cambio ahora. De lo contrario, es probable que el lunes sea un mal día para ti.

ACTUALIZACIÓN 2: Ya hay una nueva versión de tzdata en los repositorios oficiales de CentOS 5, que incorpora el cambio en la hora de Chile. Así que ahora basta con ejecutar "yum update tzdata*" y listo.

ACTUALIZACIÓN 3: el gobierno ha decidido posponer nuevamente el cambio de hora, esta vez hasta el 7 de Mayo. Aún no han salido paquetes actualizados para CentOS, así que estoy creando nuevos RPMs y los publicaré lo más pronto que pueda.


Mar 24, 2011

David Moreno

David Moreno
Stereonaut! feed

Disable Nginx logging

This is something that is specified clearly on the Nginx manual, but it's nice to have it as a quick reference.

The access_log and error_log directives on Nginx are on separate modules (HTTP Log and Core modules respectively) and they don't behave the same way when all you want is to disable all logging on your server (in our case, we serve a gazillion static files and perform a lot of reverse proxying and we're not interested on tracking that). It's a common misconception that you can set error_log to off, because that's how you disable access_log (if you do that, the server will still log to the file $nginx_path/off). Instead, you have to set error_log to log to the always mighty black hole /dev/null using the highest level for logging (which triggers the fewest events), crit:

http {
  server {
    # ...
    access_log off;
    error_log /dev/null crit;
    # ...
  }
  #...
}

If you're the possessor of the blingest of bling-bling, you can disable all logging (not only for a server block), by putting error_log on the root of the configuration and access_log within your http block and make sure you don't override that on any of the inner blocks. And you're good to go.

Mar 15, 2011

Respaldo Zimbra Community

Buscando como respaldar el servidor Zimbra en su versión libre Community, encontré una serie de script de los cuales hay unos bastante complejos y otros muy simples, la cuestión es que todos hacen lo mismo y casi de la misma manera.
En mi caso me quede con un script de Daniel W. Martin, creado el 05 de diciembre 2008, el cual en si es bastante simple.
lo traduje y le genere un para de cambios los que dan mayor control sobre el proceso.
El script básicamente hace lo siguiente:
  1. realiza un backup en caliente con rsync de /opt/zimbra en /backup
  2. baja los servicios Zimbra
  3. realiza un backup en frio con rsync de /opt/zimbra en /backup
  4. levanta los servicios Zimbra
  5. comprime el directorio /backup
  6. envía por ftp el archivo compreso a un storage remoto
en estos momentos estoy respaldando 130 GB (opt/zimbra), 295 cuentas, con rsync, que quedan en 50 GB comprimidos, lo que tarda 6 horas con la transferencia al FTP incluida.

lo ideal es disponer de un disco dedicado a esta función en el servidor o conectado a un stotage externo.

este es el script:

#!/bin/bash

# script backupzimbra
# Zimbra Backup Script semanal
# Este script está diseñado para ejecutarse desde el crontab como root
# De uso libre y sin ningún tipo de garantía! Daniel W. Martin, 05 de diciembre 2008
# modificado y traducido por Marco Acevedo, 07, enero, 2011.
# la linea de ejecucuion debe ser algo asi /dir_donde_dejas_los_script/backupzimbrasem >> /backup/backupzimbra.log
# esto es para dejar un log de cada respaldo

# MAC se agrega calculo de duracion para cada proceso 15/03/2011

echo xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
start_date="$(date +%F)"
dia_sem="$(date +%a)"
# Salidas del inicio de la copia de seguridad, para fines de registro y seguimiento
echo Hora de inicio de copia de seguridad = $start_date at $(date +%T)
before="$(date +%s)"
# rm -rvf /backup/zimbra/*

# sincronizacion en caliente antes de detener Zimbra, para minimizar el tiempo d sincronizació
# con los servicios abajo
# Comentar la linea siguiente si quieres probar un solo sincronizacion en frío
before2="$(date +%s)"
rsync -ahHK --stats --delete /opt/zimbra/ /backup/zimbra
# Calculo y resultados, cantidad de tiempo que tarda el respaldo en caliente
after="$(date +%s)"
elapsed="$(expr $after - $before2)"
hours=$(($elapsed / 3600))
elapsed=$(($elapsed - $hours * 3600))
minutes=$(($elapsed / 60))
seconds=$(($elapsed - $minutes * 60))
echo el backup en caliente tardo: "$hours horas $minutes minutos $seconds segundos"


# which is the same as: /opt/zimbra /backup
# Incluye la opcion --delete elimina de los archivos de la carpeta destino que no existen e el origen
# esto impide que los respaldos se inflen con contenido que no existe

# Ahora detendremos Zimbra para sincronizar los archivos que estaban o están bloqueados para rsync
# mientras el servicio estaba en marcha
before2="$(date +%s)"

# Detener los servicios de Zimbra
su - zimbra -c "/opt/zimbra/bin/zmcontrol stop"
echo espertando
sleep 20
echo termino de espera

# Mata todos los procesos huérfanos Zimbra
kill -9 `ps -u zimbra -o "pid="`
# Solo habilitar el siguiente comando si necesita matar a todos los procesos de usuario
# propieda de Zimbra antes de la sincronizacion
# ps auxww | awk '{print $1" "$2}' | grep zimbra | kill -9 `awk '{print $2}'`

# Sincronizar el directorio de copia de seguridad
rsync -ahHK --stats --delete /opt/zimbra/ /backup/zimbra

# Reiniciar los servicios de Zimbra
su - zimbra -c "/opt/zimbra/bin/zmcontrol start"

# Calculo y resultados, cantidad de tiempo que el servidor estabo fuera de servicio
after="$(date +%s)"
elapsed="$(expr $after - $before2)"
hours=$(($elapsed / 3600))
elapsed=$(($elapsed - $hours * 3600))
minutes=$(($elapsed / 60))
seconds=$(($elapsed - $minutes * 60))
echo Servidor estubo abajo por: "$hours horas $minutes minutos $seconds segundos"

# Crea un archivo txt en el directorio copia de seguridad que contiene la actual
# version del servidor. Util para saber en que version de Zimbra se puede restaurar la copia seguridad
su - zimbra -c "zmcontrol -v > /backup/zimbra/conf/zimbra_version.txt"
# o examinar su /opt/zimbra/.install_history

# Mostrar estado de servicios de Zimbra
echo "Mostrando estado de servicios de Zimbra ..."
su - zimbra -c "/opt/zimbra/bin/zmcontrol status"

# Crear archivo de un directorio de copia de seguridad para la transferencia fuera del sitio
# cd /backup/zimbra
echo "Creacion de archivo tar ${dia_sem}-mail.yolito.cl.tgz"
tar zcf /backup/${dia_sem}-mail.yolito.cl.tgz /backup/zimbra
echo "Compresion terminada"
# rm -rf /backup/zimbra/*

# envio del tgz al storage de backup y posterior borrado del archivo tgz de origen
before2="$(date +%s)"
echo Inicio de envio por FTP a Storage de backup del archivo ${dia_sem}-mail.yolito.cl.tgz
ncftpput -u sistemas -S .tmp -p otiloy 10.10.10.4 /Volume_1/sistemas/zimbra/ /backup/${dia_sem}-mail.yolito.cl.tgz
if [ "$?" = "0" ]; then
echo Envio terminado con exito
echo "BORRANDO ANRCHIVO ${dia_sem}-mail.yolito.cl.tgz"
# rm -rf /backup/*.tgz
else
echo "******** PROCESO TERMINO CON ERROR $? ********"
# Calculo y resultados, cantidad de tiempo que tarda el la transferencia FTP
after="$(date +%s)"
elapsed="$(expr $after - $before2)"
hours=$(($elapsed / 3600))
elapsed=$(($elapsed - $hours * 3600))
minutes=$(($elapsed / 60))
seconds=$(($elapsed - $minutes * 60))
echo La transferencia FTP tardo: "$hours horas $minutes minutos $seconds segundos"
fi

# Salidas de tiempo de la copia de seguridad terminada
# echo "Tiempo de copia de seguridad terminada = $(date +%T)"

# Calculo y salidas de tiempo total
after="$(date +%s)"
elapsed="$(expr $after - $before)"
hours=$(($elapsed / 3600))
elapsed=$(($elapsed - $hours * 3600))
minutes=$(($elapsed / 60))
seconds=$(($elapsed - $minutes * 60))
echo Tiempo empleado: "$hours horas $minutes minutos $seconds segundos"
echo xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
echo

espero que les sirva

Mar 01, 2011

Nicolás Boettcher

Nicolás Boettcher
Nicolas Boettcher feed

Instalar hping3 en Ubuntu Maverick 10.10

Hping es una herramienta avanzada para hacer pings...
Procedemos con la descarga

wget http://www.hping.org/hping3-20051105.tar.gz
tar xzvf hping3-20051105.tar.gz
cd hping3-20051105
./configure
make

libpcap_stuff.c:20: fatal error: net/bpf.h: No such file or directory
compilation terminated.
make: *** [libpcap_stuff.o] Error 1

Para arreglar este problema se debe linkear el archivo bpf.h existente a la carpeta net

sudo ln -sf /usr/include/pcap/bpf.h /usr/include/net/bpf.h
make

/usr/bin/ld.bfd.real: cannot find -ltcl8.4 collect2: ld returned 1 exit status make: *** [hping3] Error 1

como no se puede encontrar tcl8.4 se debe instalar

leer más

Jan 15, 2011

Nicolás Boettcher

Nicolás Boettcher
Nicolas Boettcher feed

Usar IOS descomprimido en GNS3 bajo Ubuntu 10.10 Maverick

La ventaja de poder ejecutar un IOS descomprimido, es que no hay que esperar a que se descomprima, por lo que el arranque del IOS del dispositivo es instantáneo
Para poder descomprimir un .bin se debe ejecutar el siguiente comando:

unzip -p ios.bin > ios.image

Una vez que se tiene el archivo .img (a todo esto pesa casi el doble que el .bin), se debe agregar al path de los IOS

Al arrancar este IOS, ya no se descomprimirá y se cargará instantáneamente

Nicolás Boettcher

Nicolás Boettcher
Nicolas Boettcher feed

Instalar Packet Tracer 5.3 en Ubuntu 10.10 Maverick

Primero se descarga el .bin

wget http://195.148.217.80/Public/Cisco/Programs/PacketTracer/Linux/Ubuntu/Pa...
sh ./PacketTracer53_i386_installer-deb.bin

Lo que hace el .bin es descomprimir un script que instala el .deb
Los archivos que contiene el .bin son los siguientes:

/tmp/selfextract.Wj8QVl$ ls
eula.txt  installer  PacketTracer-5.3-u.i386.deb

El instalable queda en la dirección usr/local/PacketTracer5/packettracer

Acá les dejo una captura de una topología que armé co ripv2,PPP,HDLC, y un server TFTP para hacer backup del IOS

Nov 17, 2010

Pedro Villavicencio

Pedro Villavicencio
Pedro Villavicencio Garrido feed

Announcing the Next Ubuntu Bug Day! November 18th 2010

Fellow Ubuntu Triagers!

This week’s Bug Day target is *drum roll please* GNOME Power Manager!
* 50 New bugs need a hug
* 50 Incomplete bugs need a status check
* 50 Confirmed bugs need a review

Bookmark it, add it to your calendars, turn over those egg-timers!
* November 18th 2010
* https://wiki.ubuntu.com/UbuntuBugDay/20101118

Are you looking for a way to start giving some love back to your
adorable Ubuntu Project?
Did you ever wonder what Triage is? Want to learn about that?
This is a perfect time!, Everybody can help in a Bug Day!
open your IRC Client and go to #ubuntu-bugs (FreeNode) the BugSquad will
be happy to help you to start contributing!

Wanna be famous? Is easy! remember to use 5-A-day so if you do a good
work your name could be listed at the top 5-A-Day Contributors in the
Ubuntu Hall of Fame page!

We are always looking for new tasks or ideas for the Bug Days, if you
have one add it to the Planning page
https://wiki.ubuntu.com/UbuntuBugDay/Planning

If you’re new to all this, head to http://wiki.ubuntu.com/Bugs

Nov 09, 2010

Pedro Villavicencio

Pedro Villavicencio
Pedro Villavicencio Garrido feed

Announcing the Next Ubuntu Bug Day! November 11th 2010

This week’s Bug Day target is *drum roll please* Bugs without a package!

* 100 New bugs need a hug!

Bookmark it, add it to your calendars, turn over those egg-timers!
* November 11th 2010
* https://wiki.ubuntu.com/UbuntuBugDay/20101111

Are you looking for a way to start giving some love back to your
adorable Ubuntu Project?
Did you ever wonder what Triage is? Want to learn about that?
This is a perfect time!, Everybody can help in a Bug Day!
open your IRC Client and go to #ubuntu-bugs (FreeNode) the BugSquad will
be happy to help you to start contributing!

Wanna be famous? Is easy! remember to use 5-A-day so if you do a good
work your name could be listed at the top 5-A-Day Contributors in the
Ubuntu Hall of Fame page!

We are always looking for new tasks or ideas for the Bug Days, if you
have one add it to the Planning page
https://wiki.ubuntu.com/UbuntuBugDay/Planning

If you’re new to all this, head to http://wiki.ubuntu.com/Bugs

Oct 20, 2010

Cambiando de rumbos

hola, tiempo que no escriba ahora lo hare por fin ya que termine de estudiar y solo estoy trabajando ... el tiempo no me sobra pero si tengo mas tiempo que antes.

Despues de haber usado Archlinux por mucho  tiempo y hacerla mi  distribucion favorita, volvi a windows para probar W7 que la verdad me deja bastante conforme, graficamente es muy lindo pero  a mi no me interesa la grafica.. ademas si se cuelga alguna aplicacion el sistema sigue funcionando.. que gran detalle.! 

Ahora bien, ya termine de probar w7 y volvi a mi querido archlinux, pero nuevamente tengo ese sabor amargo.. y me pregunto que mas hago en mi linux??? todos me diran hey nene se puede hacer de todo, pero siento ya cumpli una etapa, parti de lo mas basico hasta lo mas interesante aprendi cosas que sirven muchisimos y otras no tanto. de compilar un tarball hasta montar un servidor de correo o hacer laboratios y tratar de integrar linux al domain controler.

Entonces me pasa que esto es como las matematicas al hacer el ejerecicio o la ecuacion mas dificil  las restante se te haran aun mas faciles y un dia buscando una aplicacion Free que lea Log y que se integre con Squid.. vi un post sobre BSD la verdad es que lo vengo testeando hace bastante tiempo pero sin resultados postivos y mucho tiene que ver el que no tenia tiempo como para dedicarle, ahora bien como tengo un poco mas y le consulte a un amigo que tal BSD y me dijo es un mounstro de que lo probe no he vuelto a linux.. a lo cual quede algo sorprendido . y mi pregunta fue como partir en BSD y me respondio ... Parte con PCBSD. y prueba.. testea y cuando se domine ve por FreeBSD. 

a lo cual mi intereso bastante asi que deje descargando la iso de aprox 3G de PCBSD, llegare a instalarlo el dia de hoy,  subire un manual y contare mi experiencia. 

y el punto final es que  nuevamente encuentro motivación

Saludos.

Oct 17, 2010

Felipe Ignacio Portales Oliva

Felipe Ignacio Portales Oliva
I'm fportales » GNU/Linux feed

GNUplot se cuelga con la accesibilidad de GNOME

Aunque es un bug reportado, no tenía idea de la incompatibilidad de GNUplot con la accesibilidad de GNOME, he tenido que usar este programa para graficar (Duh’!) un conjunto de datos “experimentales” en el curso de métodos numéricos. Básicamente lo que sucede es que si uno grafica una función en GNUplot, la ventana solo está [...]

Sep 29, 2010

Felipe Ignacio Portales Oliva

Felipe Ignacio Portales Oliva
I'm fportales » GNU/Linux feed

El primer millón de visitas a Geeks & Linux Atelier

Como pueden leer en el título, Geeks & Linux Atelier, uno de los primeros sitios en los que encontré ayuda cuando me cambié a GNU/Linux, cumplió su primer millón de visitas. Esto es motivo especial de alegría para mi, ya que participé en dicho blog por unos cuantos meses, escribiendo uno que otro tutorial. Mis [...]

Aug 20, 2010

Pedro Villavicencio

Pedro Villavicencio
Pedro Villavicencio Garrido feed

Banshee Bug day rocked the house: Show me some green fields!

Last week we had an extraordinary Bug Day for the Operation Cleansweep and as you probably know yesterday we organized a Bug Day for Banshee the Multimedia Player and guess what happened…? it was *amazing*!. If you look at the Bug Day Page you’ll notice that there’s no white spots… only green rows!, I can’t recall the last bug day where we had all the bugs marked off the lists, and as a picture (in this case graph) says more than a thousand words, let me show you the graph of that bug day:



sweet isn’t?

Thanks a lot to our rocking contributors! and stay tune for next week Bug Day especially if you’re a translator, I’ve heard that David Planella is planning one for the Ubuntu Translations project!.

Jun 09, 2010

Como: quitar la “d” mayúscula a “dios” en fortune.

En ubuntu 9.10, hace algún tiempo, me di cuenta que entre las frases del pez Wanda aparecían algunas con la palabra dios con la letra “d” en mayúscula. Para corregir esta falta de ortografía (propia de una mala costumbre), podemos ejecutar lo siguiente en la consola -como root-:

#cd /usr/share/games/fortunes
#
find . \( ! -name “*.dat” \) | xargs perl -npi.bak -e “s/ Dios / dios /img”
#for arg in $(find . \( ! -name “*.dat” \)); do strfile $arg $arg.dat; done;

Se pueden ignorar los mensajes que resulten de estos comandos sin problemas.

Ahora, si todo salió bien, no más habrán más “dios” con mayúscula en las frases de Wanda o en las aplicaciones que usen fortune. Opcionalmente para borrar el respaldo creado por perl:

#for arg in $(find . “*.bak” ); do rm $arg; done;

Nota: no recomiendo pegar el comando directamente del navegador, puede traer problemas como Unrecognized character \xE2 en perl por culpa de las comillas. es mejor escribirlo a mano.

Actualización 09/06/10

Pueden descargar el script completo desde quitaD, le dan permisos de ejecución:

$ chmod +x quitaD.sh

y lo ejecutan:

$ ./quitaD.sh

Al terminar, no deberían haber más “Dios” con D mayúscula.


Apr 11, 2010

Marcos Rafael Paz Silva

Marcos Rafael Paz Silva
Mi ruta libre feed

Usando Webkit como framework en Konqueror

Imagen HTMLCambiar KHTML por Webkit como framework para Konqueror me ha servido mucho, ya no se me cuelga o cae dicho navegador cuando, por ejemplo, ingreso a blogspot. Sin embargo, he ganado otro problema, el cual es que en muchos artículos de Wikipedia Konqueror se congela o cuelga (¿una cosa por otra?). Aún así, en lo personal me ha resultado mucho mejor para la navegación en Konqueror usar Webkit en vez de KHTML.

En Archlinux podemos instalar, desde al AUR y usando Yaourt, la versión SVN de Webkit para KDE:

$ yaourt -S kwebkitpart-svn

Luego en una terminal ejecutamos:

$ keditfiletype text/html

Tras lo cual se nos abrirá una ventana como esta:

Keditfiletype

Clic para agrandar

Vamos a la pestaña empotrado y donde dice: orden de preferencia de servicios ordenamos las opciones (con los botnoes que están a la derecha) para que Webkit quede en primer lugar, tal como se ve en la siguiente imagen:

Keditfiletype

Clic para agrandar

Una vez hecho esto aplicamos los cambios, aceptamos y lanzamos o reiniciamos Konqueror.

Ahora navegarás con Webkit.

Muchas gracias a Thalskarth quién me dijo acerca de esta entrada en su blog, una vez que hice un comentario, en identi.ca, respecto a mis problemas con Konqueror en blogspot.

¡¡Saludos!!


Filed under: Tips Tagged: arch, archlinux, aur, comandos, gnu, gnu/linux, kde, khtml, konqueror, kwebkitpart, linux, svn, webkit, yaourt

Apr 02, 2010

Marcos Rafael Paz Silva

Marcos Rafael Paz Silva
Mi ruta libre feed

Cómo cambiar la DNS de tu ISP a OpenDNS en Archlinux

WebDespués de largo tiempo sin escribir aquí les dejo este tutorial para cambiar la DNS que por defecto usa tu ISP a OpenDNS, la cual, en teoría es más rápida y segura.

Estos pasos los realicé en Archlinux y con el ISP chilena VTR, aunque, se supone, es aplicable a cualquier distribución GNU/Linux y a cualquier proveedor de internet.

Editamos el archivo /etc/resolv.conf y añadimos los nameservers de la OpenDNS. Opcionalmente podemos borrar o dsesactivar (mediante # al principio de la línea) los otros nameservers ya listados en el archivo para sólo usar la OpenDNS:

# OpenDNS nameservers
nameserver 208.67.222.222
nameserver 208.67.220.220

Si usas dhcpcd edita el archivo /etc/dhcpcd.conf y cambia la siguiente línea de:

option domain_name_servers, domain_name, domain_search, host_name

a:

option domain_name, domain_search, host_name

Esto prevendrá a dhcpcd de añadir otros nameservers al archivo /etc/resolv.conf

También necesitarás editar o crear el archivo /etc/resolv.conf.head para añadir los namerservers de la OpenDNS. Es el mismo principio aplicado al archivo /etc/resolv.conf. Anádelos al principio del archivo y borra o desactiva los que ya existen:

# OpenDNS nameservers
nameserver 208.67.222.222
nameserver 208.67.220.220

dhcpcd dinámicamente genera el archivo /etc/resolv.conf anteponiendo /etc/resolv.conf.head y analizando las opciones del archivo /etc/dhcpcd.conf

Reinicia la red después de editar o crear el archivo /etc/resolv.conf.head para que los cambios tomen efecto inmediatamente:

# /etc/rc.d/network restart

Para corroborar que ahora usas la OpenDNS puedes usar nslookup con cualquier página web:

$ nslookup es.wikipedia.com
Server:         208.67.222.222
Address:        208.67.222.222#53

Non-authoritative answer:
es.wikipedia.org        canonical name = text.wikimedia.org.
text.wikimedia.org      canonical name = text.pmtpa.wikimedia.org.
Name:   text.pmtpa.wikimedia.org
Address: 208.80.152.2

Como ves en el parámetro Server, aparece el mismo valor que pusimos cuando editamos el archivo resolv.conf

¡¡Saludos!!

Fuentes: Wiki oficial de Archlinux: OpenDNS | BANDAANCHA.EU


Filed under: Tips Tagged: arch, archlinux, comandos, dhcpcd, dns, gnu, gnu/linux, linux, nslookup, opendns, terminal

Jan 09, 2010

Marcos Rafael Paz Silva

Marcos Rafael Paz Silva
Mi ruta libre feed

Instalando Archlinux usando el disco en red

Ya que están tan de modas las guías para instalar Archlinux (es cosa de googlear y encontraremos muchas :P ) aquí dejo la mía para no ser menos :P .

Este procedimiento  está basado en mi experiencia instalando Archlinux con el cd de instalación en red (FTP) en una máquina 32 bits.

Aquí sólo mostraré como instalar el sistema base, es decir, después de realizar este manual, tendrás Archlinux instalada en tu máquina pero sólo con lo mínimo (sin sistema gráfico, sin drivers específicos para tu hardware, etc.). En una próxima guía, escribiré acerca de cómo instalar KDE, en esta distro, usando KDEmod (KDE optimizado para Arch). Además esta guía asume, que el disco de instalación de Arch detecta automáticamente tu conexión a internet (a mi me pasó así y por lo tanto tuve que configurar absolutamente nada respecto a ese tema).

Manos a la obra. Lo primero es conseguir la iso del disco de instalación por FTP de Archlinux para i686, podemos hacer eso desde la página oficial de descargas de la distribución. Una vez descargada la grábamos (o quemamos) en un cd. Reiniciamos nuestro computador con la opción en la bios de boteo desde el cd activada y seleccionamos la primera opción Boot Arch Linux Live CD:

arch boot

Comenzará a cargar el instalador, esperamos un momento. Luego veremos que estamos en una terminal, donde podemos ingresar con el usuario root:

instalacion terminal

Una vez que hemos ingresado veremos que el live cd nos avisa que corriendo el comando km podemos configurar la distribución del teclado y la fuente de la consola:

km arch

Corremos dicho comando y seleccionamos la distribución de nuestro teclado. En mi caso debo elegir la opción latinoamericana:

teclado latinoamericano

Presionamos OK. Ahora veremos el menú que nos permite seleccionar la fuente de la consola, te recomiendo la opción cp865-8×14.psfu.gz:

fuente consola

Presionamos OK.

Ahora estaremos de nuevo en la consola.

Te recomiendo acceder a la guía (en inglés) que trae el live cd de Arch. Para ello ejecutamos:

# nano /arch/docs/official_installation_guide_en

installation guide arch

Desde esta guía podremos obtener valiosa información acerca de la instalación de Arch y puede que ayude a esclarecer dudas o pasos a seguir:

arch guide english

Bien, continuemos con la instalación. Para no tener que cerrar la guía cambiamos de consola virtual usando Control+F2. Podemos volver a la guía presionando Control+F1 y usar más consolas virtuales usando Control+F3, F4, F5, etc.

Ahora que estamos en la consola 2 (tty2), nuevamente ingresamos como root y ejecutamos el programa de instalación:

# /arch/setup

arch setup

Veremos, entonces, la pantalla de bienvenida:

instantánea72

Posterior a eso nos encontraremos en el menú principal de la instalación:

menu princpial

Seleccionamos, entonces, la primera opción, Select Source. Ahora podremos elegir la fuente de los paquetes que se instalarán en el sistema, esta puede ser el cd de instalación (opción que no nos sirve) o la net. Seleccionamos esta última:

net

Ahora el sistema nos avisará que si queremos configurar la red manualmente lo hagamos en otra consola virtual:

configurar redPresionamos OK.

En el nuevo menú que vemos, el de instalación de la red, seleccionamos la primera opción Setup Network:

instantánea76

Ahora seleccionamos una interface de red, por lo general, sólo tendrás una opción:

instantánea77

Ahora debemos indicar al instalador si queremos o no usar DHCP, en mi caso selecciono la opción Yes:

instantánea78

Esperamos mientras el sistema configura la red:

instantánea79

Una vez haya terminado lo avisará:

instantánea80Presionamos OK.

Estaremos nuevamente en el menú de la instalación de la red.

Ahora que nuestra red está configurada podemos usar el navegador web, en modo texto, elinks, que trae el cd de instalación. Para ello vamos a la tercera consola virtual tty3 presionando Alt + F3 (recordemos que en la tty1 tenemos abierta la guía de instalación que viene en el cd y en la tty2 está corriéndose el instalador de Arch). Ingresamos como root y corremos el comando elinks:

instantánea92

Se iniciará el programa. elinks es un navegador bastante simple y minimalista, pero cumple muy bien su objetivo, el usuario puede navegar por la red :P . Algunos comandos básicos son:

  • g: Go, para ir a una nueva página sobre la pestaña actual
  • t: Tab, abre una nueva pestaña
  • <>: Cambia entre las diferentes pestañas abiertas
  • : Salta al enlace, o al siguiente enlace, que está abajo
  • : Salta al enlace, o al siguiente enlace, que está arriba
  • Insert: Subir en la página actual
  • Supr: Bajar en la página actual

Este navegador nos servirá mucho durante el resto de la instalación puesto que podremos revisar documentación en línea como la wiki de Archlinux, buscar, en google, información sobre alguna duda que tengamos  o leer esta guía durante el proceso :P .

instantánea93

Bien, continuemos instalando el sistema base de Arch. Presionamos Alt + F2 para volver al instalador. Quedamos en el menú de configuración de la red. Seleccionamos la opción 2 Choose Mirror. El instalador nos recomendará seleccionar un mirror que no sea el oficial de Archlinux (mejor hacerle caso :P ):

instantánea81

Ahora seleccionamos un mirror que se encuentre lo más cerca posible a nuestra ubicación geográfica. En mi caso el de Chile:

instantánea82

Una vez seleccionado el mirror volveremos a estar en el menú de instalación de la red, esta vez, seleccionamos la opción 3 Return to Main Menu. Así, estaremos de nuevo en el menú principal de la instalación.

Seleccionamos, entonces, la opción 2 de dicho menú Set Clock. Entraremos en el menú de configuración de la fecha y tiempo:

instantánea83

Seleccionamos la opción 1 Select region and timezone. Ahora seleccionamos una región, en mi caso, America:

instantánea84

Ahora seleccionamos la ciudad más cercana a tu ubicación en la lista que apareció, en mi caso Santiago:

instantánea88Presionamos OK.

Estaremos de vuelta en el menú de configuración de fecha y tiempo. Ahora seleccionamos la opción 2 Set time and date:

instantánea89

Entraremos en el menú de configuración del reloj. Seleccionamos la opción que más nos acomode o guste, UTC o localtime, en mi caso UTC:

instantánea90

Ahora el sistema nos preguntará si la hora establecida es correcta o no. Seleccionamos la opción return y presionamos OK (de no estar correcta la hora y fecha podemos cambiarlas después de la instalación):

instantánea91

Volveremos al menú de configuración de fecha y tiempo. Esta vez seleccionamos la opción 3 Return to Main Menu y presionamos OK. Estaremos de nuevo en el menú principal de la instalación. Ahora seleccionamos la opción 3 Prepare Hard Disk Driver(s) y presionamos OK:

Menú principal de la instalación

Estaremos entonces en el menú de preparación de discos duros para la instalación:

Menu de preparación de discos duros

Tenemos 5 opciones para escoger: 1 Auto – Prepare: escogemos esta opción si queremos formatear completamente un disco duro para luego realizar la instalación, perderemos todos los datos en el disco duro a formatear. Los puntos de montaje mínimos /, /home, /boot, /bin, etc y la partición swap serán creados automáticamente. Es la opción más fácil o sencilla; 2 Manually Partition Hard Drives: escogemos esta opción si lo que deseamos es crear, deshacer o editar particiones en el disco duro que luego nos servirán para establecer los puntos de montaje. En teoría es la opción más compleja de todas; 3 Manually Configure block devices, filesystem and mountpoints: escogemos esta opción si ya tenemos creadas y configuradas correctamente las particiones para la instalación. Como mínimo debemos tener una partición para establecer el punto de montaje de la raíz del sistema /, y una partición para la memoria de intercambio swap; 4 Rollback last filesystem changes (you don’t need to do this): esta opción la utilizamos  para revertir los cambios hechos en las particiones cuando usamos la opción 3; 5 Return to Main Menu: escogemos esta opción si queremos volver al menú principal de la instalación.

En esta guía asumiremos que no tenemos, y que queremos configurar de acuerdo a nuestras necesidades, las particiones para la instalación, es por ello que escogemos la opción 2 Manually Partition Hard Drives y presionamos OK.

El instalador determinará que discos duros están disponibles en nuestra máquina y nos dará la opción de escoger uno:

Menú de selección de disco duro para editar

Seleccionamos uno y presionamos OK.

Ahora el instalador nos dará la opción de cambiar el nombre del primer disco duro del sistema (el que  escogimos en el paso anterior):

Menu de selección de ruta y nombre del primer disco duro del sistema

Por defecto, si el disco duro a particionar es un IDE, el instalador nos dará la opción /dev/sda para identificarlo. Me parece que si  el disco es un SATA la opción se cambiaría por /dev/sdb, pero no estoy seguro. Recomiendo seleccionar esta opción ya que en general se le asigna ese nombre al primer disco duro usado por el sistema si éste es un IDE. Sin embargo, si deseamos editar el nombre del disco, seleccionamos la segunda opción, OTHER. La opción DONE la escogemos si ya todo está hecho en el disco duro y está listo para realizar la instalación,  como ese no es  nuestro caso, escogemos la primera opción /dev/sda y presionamos OK.

El instalador nos avisará que entraremos a cfdisk un programa con el cual podemos editar a nuestro gusto el disco duro donde realizaremos la instalación. Además nos indica que deberíamos crear una partición swap y todas las particiones de datos que necesitemos. Asimismo nos advierte que si cfdisk solicita reiniciar el sistema lo hagamos y luego, al iniciar nuevamente el instalador, no seleccionemos Manually Partition Hard Drives en el menú de preparación de discos duros y pasemos directamente a la opción Manually Configure block devices, filesystem and mountpoints.

Presionamos OK y entraremos a cfdisk:

cfdisk en la instalación de Archlinux

En la imagen anterior vemos que el disco duro a configurar no tiene alguna partición, es decir, sólo tiene espacio libre. Si queremos crear una nueva partición para montar la raíz del sistema / seleccionamos la opción [  New  ] que se encuentra abajo y presionamos enter. El programa nos preguntará si queremos crear una partición primaria o lógica.

Nota: En general, si no necesitamos más de 4 particiones en un mismo disco duro, no existe la necesidad de usar particiones lógicas (más información aquí).

Como en esta guía sólo utilizaremos una partición para la raíz /, para nuestra carpeta personal /home y para la memoria de intercambio swap, no hay necesidad de crear particiones lógicas. Entonces, seleccionamos la opción [ Primary ] y presionamos enter:

Captura cfdisk

Ahora el programa nos consultará por el tamaño de la partición en MB. Como se trata de la partición para / con no más de 15 GB estaría bien.

Nota: La última vez que instalé Arch usé 20 GB en la partición de la raíz del sistema debido a que instalo unos paquetes especiales desde los repos de KDEmod llamados debug, los cuales son muy  pesados y necesarios a la hora de reportar errores de KDE en bugs.kde.org. Si no vas a usar KDE, o si lo vas usar pero no te interesa reportar errores (y de esa forma ayudar al software libre), entonces te recomiendo 15 GB.

Recuerda que 1 GB tiene 1024 MB. Ingresa la cantidad de MB que deseas para la partición y presiona enter:

Captura de cfdisk

cfdisk nos preguntará si queremos incluir la nueva partición al comienzo o al final del disco duro, creo que esto da igual, sin embargo seleccionamos la opción [ Beginning ] comienzo y presionamos enter:

Captura de cfdisk

Estaremos de regreso en el menú principal de cfdisk, donde veremos la nueva partición a crear:

Captura de cfdisk

Ahora debemos indicarle a cfdisk el tipo de sistema de archivos que tendrá la nueva partición. Para ello seleccionamos la opción [ Type  ], teniendo la partición correspondiente seleccionada, y presionamos enter:

Captura de cfdisk

El programa nos mostrará los tipos de sistema de archivos que podemos establecer en la partición a crear:

Captura cfdisk

Si presionamos cualquier tecla el programa nos mostrará más opciones y nos dirá que ingresemos el tipo de sistema de archivos que queremos establecer para la partición seleccionada anteriormente. Ingresamos el número 83 y presionamos enter:

Captura de cfdisk

Estaremos de nuevo en el menú principal de cfdisk y veremos nuestra nueva partición a crear con el parámetro FS Type (FileSystem Type) como Linux:

Captura de cfdisk

Ya tenemos una partición para /, ahora nos falta una partición para /home.

Nota: Si bien esto no es un requisito de la instalación es conveniente hacerlo puesto que si llegase a fallar el sistema operativo podemos formatear la partición donde está / y reinstalar sin perder nuestros archivos ya que esos se encuentran en la carpeta /home que estaría en otra partición. En conclusión, a mi parecer, es una excelente medida de seguridad.

Creamos entonces una nueva partición para /home, seleccionando el espacio libre (free space), siguiendo los mismos pasos anteriores y procurando dejar espacio suficiente para la partición swap.

Ahora crearemos la partición swap.

Nota: según lo que he leído la memoria de intercambio debe ser el doble de la memoria ram que poseemos, es decir, si tenemos 512 MB de ram la memoria de intercambio (swap) debiera ser de por lo menos 1 GB más o menos. Sin embargo, aquí viene un problema: ¿qué pasa si tenemos 4 GB o más de memoria ram? eso significaría crear una partición para swap de por lo menos 8 GB. ¿Será eso realmente conveniente pensando en la cantidad de espacio ocupado (8 GB es una cantidad considerable) y que 4 GB de ram  son más que suficientes para un pc de escritorio que se utiliza en tareas cotidianas? (recuerda que la memoria swap se ocupa cuando la memoria ram está 100 % ocupada, o sea, es una especie de ram auxiliar). La decisión es tuya, pero si me lo preguntas, creo que no, no es necesaria una swap cuando posees 4 Gb de ram o más o por lo menos no de un tamaño doble al de la cantidad de memoria ram.

Para crear la partición de la memoria de intercambio selecciona el espacio que queda en tu disco y creala siguiendo los mismo pasos que usaste para crear las particiones anteriores (en el menú de selección de tipo de sistema de archivo de cfdisk el valor de swap es 82).

Una vez creada la última partición deberíamos tener algo como esto cuando miramos el menú principal de cfdisk:

Captura de cfdisk

Es decir, una partición para / de por lo menos 15 GB, otra partición para /home y otra para la swap.

Nota: más adelante, el instalador nos adviertirá que sería bueno establecer el punto de montaje o carpeta /boot en una partición por separado, por esto, si lo deseas, sería conveniente que crearas ahora la partición donde montarás /boot para luego no tener que retroceder todo lo avanzado en la instalación :P . En caso de que decidas crear esta nueva partición, ten en cuenta que la carpeta /boot contendrá datos normales por lo que en cfdisk, para dicha partición, debes establecer el sistema de archivos linux (el número 83). Además, según lo que he leído, la partición debería ser de por lo menos 200 MB y no más de 300 MB

Ahora, en el mismo menú mostrado en la imagen anterior (el principal de cfdisk) debemos seleccionar la opción [ Write ] y presionar enter:

Captura de cfdisk

El programa nos advertirá que al escribir la tabla de particiones que hemos creado sobre el disco, este perderá todos los datos que contiene. Escribimos yes y presionamos enter:

Captura de cfdisk

La acción que acabamos de realizar aplicó todos los cambios, mostrados en la tabla de particiones que hemos creado, al disco seleccionado anteriormente (el que escogimos antes de entrar a cfdisk). Además, una vez terminada la acción anterior, el sistema nos advertirá que ninguna partición primaria ha sido marcada como bootable (algo así como iniciable) y que algunos sistemas operativos no son capaces de bootear (iniciar) el disco como se encuentra actualmente:

Captura de cfdisk

Por supuesto ese no es el caso de Archlinux ni de GNU/Linux en general, por lo que continuamos con la instalación. Para salir de cfdisk seleccionamos la opción [ Quit ] y presionamos enter:

Captura de cfdisk

Estaremos de vuelta en el menú de selección de disco, esta vez escogemos la opción DONE y presionamos OK:

Captura de cfdisk

Estaremos entonces, de nuevo, en el menú de preparación de discos duros para la instalación, esta vez escogeremos la opción 3 Manually Configure block devices, fylesistem and mountpoints y presionamos OK:

Menú de preparación de discos durosComo dice la opción que acabamos de escoger llega el momento de establecer qué particiones asignaremos a los puntos de montaje principales de GNU/Linux, como por ejemplo /, /home, /boot, etc. Además de asignar el sistema de archivos (ext1, etx2, ext, ext4, etc.) que tendrán dichas particiones.

Nota: Si bien es cierto ya particionamos el o los discos duros con cfdisk, éste programa no establece un sistema de archivos para las particiones.

Bienm continuemos. Estaremos ahora en un menú que nos mostrará las diferentes particiones, recién creadas, o existentes en nuestro sistema:

Menú de administración de sistema de archivos

Primero escogemos la partición que será la raíz ( / ) del sistema. En mi caso, o en este ejemplo, /dev/sda1 y presionamos OK. El instalador nos preguntará si deseamos cambiar el sistema de archivos actual de la partición. Como acabamos de crear la partición, esta no posee un sistema de archivos por lo que escogeremos la opción Yes. Si la partición ya tiene un sistema de archivos y sabes cuál es simplemente selecciona No.

Nota: Al escoger la opción Yes le estamos indicando al instalador que estableceremos un nuevo sistema de archivos para la partición, lo cual necesariamente implica el formateo de dicha partición con la consiguiente pérdida de datos.

Escogemos la opción deseada, en mi caso  Yes, y presionamos enter:

Pregunta del instalador respecto a sistema de archivos

Estaremos en el menú de selección de selección de sistema de archivos para la partición que escogimos anteriormente. Recomiendo escoger ext4 puesto que es el sistema de archivos más actual usado por los sistemas GNU/Linux.

Nota: He leído que usando el sistema de archivos ext4, en raras ocasiones, puede existir pérdidas de datos por lo que si “te quieres ir a la segura” seleeciona ext3, un sistema de archivos, en teoría, muchos más seguro, puesto que es más antiguo.

Escogemos la opción deseada y presionamos OK:

Selección de sistema de archivosAhora el instalador nos preguntará cuál será el punto de montaje para la partición que estamos editando, como dijimos anteriormente, escogemos la raíz del sistema ( / ) y presionamos OK:

Selección de punto de montaje para la partición

Si en la última pregunta que nos hizo el instalador hemos escogido la opción No, volveremos, entonces, al menú de selección de particiones a editar. En cambio, si hemos seleccionado la opción Yes, entonces, después de presionar OK, veremos una ventana donde podremos establecer opciones adicionales para la partición que estamos editando. Puedes ver los parámetros opcionales a ingresar en el artículo Fstab, sección  <options>, de la wiki oficial de archlinux:

Parámetros opcionales para la partición

En mi caso presiono OK para dejar sólo los parámetros por defecto.

Posteriormente estaremos de vuelta en el menú de selección de particiones a editar.

Debemos realizar el mismo procedimiento para todas las particiones esenciales del sistema, en este ejemplo para la partición /home y para la partición Swap, procurando escoger el sistema de archivos y punto de montaje correcto para cada una de ellas.

Finalizado todo este paso de la instalación estaremos de vuelta en el menú de selección de particiones, dónde veremos algo más o menos parecido a esto:

Menú de selección de particiones a editar

En la imagen anterior, la partición /dev/sda1 (raíz del sistema / ) y /dev/sda3 (swap) serán formateadas, por ello es que, después del sistema de archivos que se les establecerá (ext4 y swap, respectivamente), dice yes.

Una vez que estamos seguros de que todo está bien (siempre podemos editar nuevamente las particiones posicionándonos sobre ellas y presionando OK) seleccionamos la poción DONE en el menú de selección de particiones a editar (el de la imagen anterior) y presionamos OK.

Ahora el sistema nos advertirá que no hemos establecido una partición separada para la carpeta /boot:

Recomendación del instalador acerca de la carpeta /boot

La verdad yo creo que eso no es necesario, sin embargo, si ya tienes creada dicha partición sólo retrocede (back) y establécela como punto de montaje de /boot. Si no has creada la partición tendrás que retroceder en la instalación hasta cfdisk o de plano, comenzar todo de nuevo :P (advertí de esto en la parte dónde explico como particionar con cfdisk)

Para continuar con la instalación, simplemente seleccionamos la opción ignore y presionamos OK. El instalador comenzará la creación de los sistemas de archivos en las particiones y establecerá los puntos de montaje de las mismas:

Instalador estableciendo sistemas de archivos y puntos de montaje de las particiones

Una vez haya terminado nos lo avisará:

Mensaje del instaladorPresionamos OK y estaremos de vuelta en el menú de preparación de discos duros. Estando allí, esta vez, seleccionamos la opción 5 Return to Main Menu y presionamos OK nuevamente.

Otra vez estaremos en el menú principal de la instalación. Esta vez seleccionamos la opción 4 Select Packages y presionamos OK:

Menú principal de la instalación

El instalador nos avisa, entre otras cosas, que podremos escoger entre dos grupos de paquetes:

Aviso del instaladorPresionamos OK.

Ahora podremos seleccionar los paquetes:

Menú de selección de paquetes a instalarComo muy bien dice el menú anterior, no deseleccionamos el grupo de paquetes base, a menos que sepamos muy bien lo que estamos haciendo, puesto que dicho grupo incluye los paquetes que son la base del sistema. Si deseas deseleccionarlo de todas formas, lo puedes hacer posicionándote sobre el y presionando la barra espaciadora.

El otro grupo de paquetes es base-devel, los que nos servirán en el futuro para compilar aplicaciones. Podemos instalar estos paquetes ahora o después, sin embargo, yo prefiero hacerlo ahora. Para instalarlos nos posicionamos sobre el grupo correspondiente y presionamos la barra espaciadora:

Selección de grupos de paquetes a instalarEn la imagen anterior, ambos grupos de paquetes serán instalados puesto que entre los corchetes [ ], que preceden a los nombres de los grupos de paquetes, hay un asterisco *.

Presionamos OK.

Ahora el instalador será más específico y nos mostrará una lista con cada paquete que instalará:

Lista de paquetes que se instalaránAl igual que en el caso anterior, los paquetes que se instalarán son aquellos que tienen un * entre los corchetes [ ]. Te recomiendo no deseleccionar paquetes a instalar (a menos que sepas muy bien lo que haces). Además, si lo deseas, puedes seleccionar más paquetes a instalar de entre los que están en la lista, posicionándote sobre ellos y presionando la barra espaciadora. El mismo procedimiento sirve para deseleccionar paquetes a instalar.

Una vez que hayamos seleccionado o deseleccionado los paquetes que deseamos presionamos OK.

Estaremos de nuevo en el menú principal de la instalación, y como es obvio, esta vez, seleccionamos la opción 5 Install Packages y presionamos OK.

El instalador nos avisará que ahora comenzará la instalación de paquetes, que podemos ver el progreso en la ventana de salida, y que seamos pacientes :P :

Aviso del instaladorPresionamos OK y comenzará el proceso de instalación de paquetes:

Instalación de paquetes base

Cuando el proceso haya acabado al final de la ventana (puedes moverte usando ↑ o ↓) verás un botón que dice Continue:

Instalación de paquetes finalizadaPresionamos el mencionado botón y veremos un aviso del instalador que dice que está generando los glibc base locales (ni mierda idea tengo sobre qué es eso):

Generando glibc base locales

Luego, estaremos de nuevo en el menú princpial de la instalación, esta vez escogemos la opción 6 Configure System y presionamos OK:

Menú principal de la instalaciónAhora el instalador nos pregunta si queremos usar la configuración actual de la red en los archivos rc.conf y resolv.conf y que si hemos usado un proxy, la configuración de este se escribirá en el archivo /etc/profile.d/proxy.sh :

Consulta del instaladorPara no complicarnos la vida, y como en teoría la configuración de red que se usó en la instalación es la correcta y es la que utilizaremos de ahora en adelanto en nuestro nuevo sistema, presionamos la opción yes.

Ahora veremos un menú donde debemos escoger el editor de texto que utilizaremos en nuestro sistema (después puedes instalar adicionales). Podremos elegir entre nano (el más sencillo y fácil de utilizar), joe (que nunca he usado) y vi (el más avanzado de todos y por lo tanto, en teoría, más complicado). En lo personal me gusta mucho nano, porque satisface mis necesidades, que no son muchas, en cuanto a edición de texto (¿para qué quiero más?):

Selección de editor de texto

Una vez hayamos escogido nuestro editor favorito de entre la lista presionamos OK.

Ahora podremos configurar el sistema, mediante la edición de los diferentes archivos que se nos muestran en la lista:

Configuración del sistemaBien, en lo personal, yo edito, los archivos /etc/locale.gen/etc/rc.conf, en ese orden, y además establezco la contraseña del usuario root. Siguiendo el orden anterior editaremos el archivo /etc/locale.gen. Nos posicionamos sobre el en el menú y presionamos OK. Veremos, entonces, el mencionado archivo con el editor de texto que escogimos anteriormente, en mi caso, nano:

Archivo /etc/locale.gen visto con nano

Este archivo es el que le indica al sistema, qué idiomas están disponibles para ser utilizados. La lista es bastante extensa, pero nosotros hablamos español, por lo que buscamos los idiomas que empiezan con la palabra es y luego buscamos el idioma español de nuestro país, en mi caso, es_CL. Una vez hayamos encontrado nuestro idioma con nuestro país debemos descomentar uno de los dos que vemos, el UTF-8, el ISO o ambos. En lo personal, lo que yo hago es descomentar ambos:

Idioma Español Chileno UTF8 e ISO descomentado

Si estamos usando nano, presionamos Control + o para guardar los cambios y Control + x para salir. De esta forma los idiomas disponibles en el sistema serán, el inglés de Estados Unidos en_US (que también se encuentra descomentado en el archivo) y el español de tu país.

Una vez hayamos salido del editor de texto estaremos nuevamente en el menú de configuración del sistema.

Ahora editaremos el archivo /etc/rc.conf, nos posicionamos sobre dicho archivo en la lista y presionamos OK. Veremos, entonces, el mencionado archivo:

Archivo /etc/rc.conf visto con nano Personalmente, lo que hago en este archivo es establecer, en la sección LOCALIZATION, la variable LOCALE de en_US.UTF-8 al idioma español  UTF-8 de mi país (es_CL.UTF-8) y que descomentamos anteriormente en el archivo /etc/locale.gen, de esta forma el idioma usado en mi nuevo sistema será el español de Chile. Tu debes hacer lo mismo, pero obviamente utilizando el idioma español que descomentaste anteriormente en el archivo /etc/locale.gen:

Sección LOCALIZATION del archivo /etc/rc.conf

Asimismo, en la sección NETWORKING, cambio el parámetro de la variable HOSTNAME, que es el nombre de nuestra máquina en la red:

Sección NETWORKING del archivo /etc/rc.conf

Obviamente, si sabes bien lo que haces, tu puedes cambiar más parámetros del archivo.

Recuerda que en nano para guardar cambios debes presionar Control + o y para salir debes presionar Control + x.

Una vez hayamos terminado de editar el archivo, y por supuesto, hayamos guardado los cambios, salimos del editor y estaremos de vuelta en el menú de configuración del sistema.

Ahora, siguiendo con lo que yo hago como ejemplo, estableceremos la contraseña del usuario root. Nos posicionamos en la fila correspondiente (Root-Password) y presionamos OK. Veremos que aparece abajo un texto que dice enter new UNIX password:

Solicitud de ingreso de la  nueva contraseña del usuario rootIngresamos la contraseña deseada y presionamos enter, luego se nos pedirá re ingresarla y después, nuevamente, presionamos enter. Eso es todo.

Ahora sólo queda escoger la última opción del menú de configuración, la cual es Done, con lo cual regresaremos al menú principal de la instalación. Nos posicionamos en la opción antes mencionada y presionamos OK.

El instalador comenzará a configurar nuestro nuevo sistema de acuerdo a los cambios que hayamos realizado en los archivos de configuración que acabamos de editar:

Instalador configurando el nuevo sistema

Una vez haya terminado el proceso anterior, estaremos de vuelta en el menú principal de instalación. Esta vez seleccionamos la opción 7 Install Bootloader y presionamos OK:

Menú principal de la instalaciónAhora, el instalador nos da la opción de instalar grub o de no instalar un bootlader:

Selección de bootloader

Si escoges la segunda opción debes instalar un bootloader después (por ejemplo lilo).

Escogemos la primera opción, Grub, y presionamos OK.

El instalador nos avisa que está creando un archivo para Grub y que seamos pacientes:

Aviso del instalador: creando un archivo para Grub

Ahora el instalador nos avisa que antes de instalar el Grub deberíamos editar el archivo de configuración de este, presionamos OK:

Aviso del instalador: se debería editar el archivo de configuración del Grub

Veremos entonces el archivo /boot/grub/menu.lst, con el editor de texto que escogimos anteriormente:

Archivo /boot/grub/menu.lst visto con nanoLa verdad yo no edito este archivo puesto que no uso otro sistema operativo aparte de Archlinux, por lo que simplemente presiono Control + x para salir de nano.

Si tu editas el mencionado archivo, asegúrate de guardar los cambios y posteriormente sal del editor de texto.

Bien, ahora el instalador nos muestra una lista con los diferentes discos duros que hay en el sistema y con sus respectivas particiones:

Menú de selección de disco duro o partición dónde se instalará Grub

De esa lista debemos escoger el lugar dónde instalar el Grub, si no conoces muy bien esto de los Bootloaders (como yo :P ) te recomiendo que lo instales en el mismo disco duro donde se encuentra la partición de la raíz del sistema, en este caso /dev/sda. Ojo dije en el mismo disco duro no en la misma partición.

Una vez tengas claro dónde instalar el Grub seleccionas el disco duro o la partición correspondiente y presionas OK.

Si todo ha salido bien el instalador lo avisará:

Aviso del sistema: el Grub ha sido instalado satisfactoriamente Presionamos OK.

Estaremos nuevamente de vuelta en el menú rpincipal de la instalación, finalmente la única opción que nos queda es la 8 Exit install, la seleccionamos y presionamos OK.

Veremos ahora un aviso del instalador que nos indica que si la instalación finalizó correctamente podremos reiniciar el sistema escribiendo reboot y de esa forma comenza a disfrutar de Archlinux:

Aviso del instalador: podemos reiniciar el sistemaPresionamos OK.

Estaremos ahora, de nuevo en la terminal, logueados como root. Escribimos la palabra reboot, presionamos enter para reiniciar el computador:

Reiniciando el sistemaSe iniciará, entonces, por primera vez Archlinux:

tty1 Archlinux

Puedes loguearte como root usando la contraseña que estableciste durante la instalación.

Ahora queda todo el resto, que es configurar el sistema, agregar usuarios, agragar un entorno gráfico, controladores de video, de sonido y todo eso.

Trataré de analizar y profundizar cada punto de esta guía en la medida que pueda o que el tiempo me lo permita.

Espero que les haya gustado :)

¡Saludos!


Posted in Guía Tagged: arch, archlinux, cfdisk, gnu, gnu/linux, instalacion, linux

Dec 27, 2009

Configurar grupo de trabajo en ubuntu 9.10 y windows

Funciona, confirmado por su servidor. (Primera vez en toda mi vida de geek que veo funcionar samba de verdad y al 100%)

http://jjant.com/node/46


Dec 24, 2009

Miguel Ángel Ruiz Manzano

Miguel Ángel Ruiz Manzano
mruiz's blog » Linux feed

Merry Christmas from Ubuntu Chile

Ubuntu Chile wishes you a Merry Christmas and a prospering New Year.


Dec 17, 2009

Cómo compartir internet con Ubuntu 9.10

A la fecha, existen cientos de tutoriales en la red sobre cómo compartir internet con ubuntu. La mayoría trata sobre iptables.

Y como es de esperarse (estamos hablando de ubuntu), es posible que alguuuna vez en épocas remotas, estos hayan sido válidos, pero actualmente son todos una mierda, horriblemente complicados, basados en paquetes que ya no existen, que estropean las conexiones que antes funcionaban ok, etc. etc…

Sin más blabla, dejo aquí un tutorial que SI funciona en ubuntu karmic a la fecha. Probado por su servidor usando una tarjeta wlan0 que recibe internet inalámbrica y un cable cruzado que se conecta a otro pc.

http://doctormo.wordpress.com/2009/12/06/ubuntus-internet-connection-sharing/

Otro día cuando tenga más tiempo lo traduzco.


Dec 04, 2009

Miguel Ángel Ruiz Manzano

Miguel Ángel Ruiz Manzano
mruiz's blog » Linux feed

Signing keys with CAFF

CAFF is a script that helps you in keysigning. It takes a list of key IDs on the command line, fetches them from a keyserver or keyring and calls GnuPG to sign them. It then mails each key to all its email addresses.

CAFF it’s part of the signing-party package (various OpenPGP related tools). Also we need the gnupg-agent to store our passphrase during the signing. Lets install them in Ubuntu.

$ sudo apt-get install signing-party gnupg-agent

After that, the best idea is to configure a relay host to send the emails. I followed a really good guide based on Exim4, that just works ;-)

Also we need to configure the default behaviour of CAFF, through a configuration file (.caffrc under our home directory).  You can follow this example.

# .caffrc -- vim:ft=perl:
# This file is in perl(1) format - see caff(1) for details.
$CONFIG{'owner'} = 'Juan Perez';
$CONFIG{'email'} = 'juan@perez.com';
$CONFIG{'gpg-sign-args'} = "save";
$CONFIG{'keyserver'} = "pgp.mit.edu";
$CONFIG{'caffhome'}    = $ENV{'HOME'}.'/.caff';
# Specify the last 16 characters of your key
$CONFIG{'keyid'} = [ qw{1D4FE8D976862225} ];
$CONFIG{'also-encrypt-to'} = [ qw{1D4FE8D976862225} ];
# Mail template to use for the encrypted part
$CONFIG{'mail-template'} = << 'EOM';
Hi,
please find attached the user id{(scalar @uids >= 2 ? 's' : '')}
{foreach $uid (@uids) {
$OUT .= "\t".$uid."\n";
};}of your key {$key} signed by me.
If you have multiple user ids, I sent the signature for each user id
separately to that user id's associated email address. This gives you
also the chance to upload only specific signatures if you don't want
my signature on all your user ids.
You can import the signatures by running each through `gpg --import`.
Note that I did not upload your key to any keyservers. If you want this
new signature to be available to others, please upload it yourself.
With GnuPG this can be done using
gpg --keyserver subkeys.pgp.net --send-key {$key}
If you have any questions, don't hesitate to ask.
Regards,
{$owner}
EOM

Before the signing process, we have to start the gpg-agent. If you got problems launching the agent, please read the following reference .

$ eval `gpg-agent --daemon`

If your KSP host gave you a keyring, the following command must be used to sign the keys. The “m” argument specifies to send mail (using the template described previously) and the “R” prevents to retrieve keys from a keyserver. We’ll use a keyring file as input.

$ caff -mR --keyfile <keyring-file>

As always, many people listed on the keyring don’t participate in the KSP. Is this case I suggest to create a file with the attendants IDs only, such as the following.

B9270F9D
1773ED49
3114452A
1D814B8E
18DC68C4
7E633BAE

Then, we have to modify the previous command.

$ caff -mR --keyfile <keyring-file> `cat <keys-to-sign>`

If you want to sign only one key and you have its ID, don’t worry. CAFF will save the day. It can retrieve the key.

$ caff -m yes <key-ID>

Finally, the batch process starts and we have to sign the keys. Enjoy the day because CAFF will help you to finish this tasks without pain.

References: Waikato Linux User Group, CAFF man page

Nov 23, 2009

Víctor Munzenmayer

Víctor Munzenmayer
.:: Victor Munzenmayer ::. feed

Lanzamiento del sitio patopetersen.cl


Con mucho agrado quiero dar a conocer el sitio web de mi colega y amigo Patricio Petersen, el cual, lo acaba de lanzar el día de hoy. El sitio tiene como finalidad el dar a conocer los trabajos desarrollados por él.

Además, cabe mencionar que Patricio es un gran diseñador gráfico, y prueba de ello la excelente calidad de los trabajos publicados en su sitio.

Desde ya los invito a visitar patopetersen.cl


Saludos.

Oct 31, 2009

Miguel Ángel Ruiz Manzano

Miguel Ángel Ruiz Manzano
mruiz's blog » Linux feed

Release time!

Yesterday was an important day for the Ubuntu community: Karmic Koala was released. Yay!

I want to say thanks to everyone involved on this cycle. We are improving at every release and our community is becoming stronger and bigger.


karmic-release


Pedro and I created a mini release party to celebrate the day.

Welcome Lucid Lynx!

Oct 19, 2009

De YouTube a Mp3 en Linux

Para descargar un video de YouTube y pasarlo a formato mp3 basta con que sigas los siguientes pasos:

1. Instala youtube-dl

apt-get install youtube-dl

2. Descarga tu video con el siguiente comando:

youtube-dl http://url_del_video_en_youtube

3. Este comando descargará el video en formato .flv, para pasarlo a mp3 descargas el conversor mmc desde aquí: http://www.miksoft.net/mobileMediaConverterDown.htm

Te recomiendo que en las opciones de mmc uses ‘Audio Frequency’ con un valor de 32000, para obtener mejores resultados.

Fuente: telenekos.wordpress.com

Artículos Aleatorios

Oct 16, 2009

Los secretos de las capturas de pantalla en GNOME

La aplicación que nos ayuda a hacer capturas de pantalla en GNOME (“gnome-screenshots”) no sólo captura todo nuestro escritorio, también tiene características adicionales que nos permiten hacer cosas más interesantes.

Una de las opciones más conocidas es la captura de pantalla con un retraso de tiempo. Desde la línea de comandos ejecuta lo siguiente:

gnome-screenshot -d 3

Este comando tomará una captura de tu pantalla con un retraso de 3 segundos. Interesante, pero hay más. Ahora ejecuta lo siguiente:

gnome-screenshot -w

Con la opción “-w” capturará sólo la pantalla que esté activa y nada más. Esto es muy útil cuando hacemos tutoriales y queremos capturar sólo la ventana de un programa.
Ahora prueba con lo siguiente:

gnome-screenshot -w -e shadow

Este comando capturará la ventana actual y le aplicará un efecto de sombra bastante elegante. Por ejemplo, capturé la ventana de la terminal con este efecto:

shot1

Si lo que quieres agregar es un borde a tu captura intenta lo siguiente (nota: los efectos funcionan sólo junto a la opción “-w”)

gnome-screenshot -w -e border

shot2

Por último, si quieres todas estas opciones en una linda interfaz gráfica de usuario, ejecuta:

gnome-screenshot -i

Con la opción “-i” obtienes lo siguiente:

shot3

Entradas Relacionadas

Oct 09, 2009

Tus primeros pasos con Zend Framework: Parte 2

En la primera parte de esta serie vimos que son los frameworks, las razones para usar Zend Framework y, finalmente, analizamos como instalarlo. En este artículo crearemos nuestro primer proyecto. Vamos a eso.

Nota: se asume que conoces el Modelo Vista Controlador.

Nuestro Primer Proyecto

Zend Framework tiene una clase llamada “Bootstrap” que nos permite iniciar los recursos que utilizaremos en nuestro proyecto, la ubicación de esta clase es: /var/www/zf/primer-proyecto/application/Bootstrap.php.

Lo primero que haremos es agregar al Bootstrap la funcionalidad de autocarga de recursos:

// /var/www/zf/primer-proyecto/application/Bootstrap.php
<?php 
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap 
{ 
     protected function _initAutoload() 
     { 
          $moduleLoader = new Zend_Application_Module_Autoloader(array( 
               'namespace' => '', 
               'basePath' => APPLICATION_PATH)); 
          return $moduleLoader; 
     } 
}

En nuestras aplicaciones con Zend Framework tenemos controladores (controllers) y dentro de ellos existen acciones (actions), así si por ejemplo estuviéramos programando un blog y llamamos a: http://localhost/zf/primer-proyecto/public/entradas/agregar, el controlador sería “entradas” y la acción “agregar”.

Para nuestro proyecto inicial lo que haremos es un directorio de contactos, es decir, una aplicación simple que nos servirá para gestionar la información relacionada con las personas que conocemos. Como es un proyecto simple nos basta con trabajar con el controlador por defecto (“index”) y dentro de este las siguientes acciones:

zend1

Creando el controlador

Para crear nuestras acciones basta con abrir una terminal, acceder al directorio de nuestro proyecto (/var/www/zf/primer-proyecto/application/controllers) y ejecutar los siguientes comandos:

zf create action add index 
zf create action edit index 
zf create action delete index

Estos crearan las acciones “add”, “edit” y “delete” dentro del controlador “index”. Si todo se realizó correctamente deberías poder ver dentro del directorio application/controllers un archivo llamado “IndexController.php” que contiene las acciones antes mencionadas:

<?php 
 
class IndexController extends Zend_Controller_Action 
{ 
 
    public function init() 
    { 
        /* Initialize action controller here */ 
    } 
 
    public function indexAction() 
    { 
        // action body 
    } 
 
    public function addAction() 
    { 
        // action body 
    } 
 
    public function editAction() 
    { 
        // action body 
    } 
 
    public function deleteAction() 
    { 
        // action body 
    } 
 
}

Estos mismos comandos además de crear el controlador y sus acciones también crea las vistas que mas tarde utilizaremos.

Resumiendo ya tenemos la siguiente estructura:

zend2

Si pruebas cada URL deberías ver el siguiente mensaje (con excepción de la primera URL que tiene aún la vista por defecto de Zend Framework)

View script for controller index and script/action name delete

Creando el modelo

En el apartado anterior definimos el esquema general del controlador y ahora es tiempo que trabajemos en el modelo.

Lo primero es que configuremos la información de nuestra base de datos, para esto abrimos el archivo: “/var/www/zf/primer-proyecto/application/configs/application.ini” y agregamos dentro de “[production]” (antes de “[staging : production]”), lo siguiente:

resources.db.adapter = PDO_MYSQL
resources.db.params.host = localhost
resources.db.params.username = usuario
resources.db.params.password = clave
resources.db.params.dbname = nombrebasededatos

A continuación crearemos la tabla que almacenará nuestros contactos. Para esto podemos usar phpmyadmin o el programa de tu preferencia:

CREATE TABLE `zfdb`.`contacts` (
`id` INT NOT NULL AUTO_INCREMENT ,
`name` VARCHAR( 30 ) NOT NULL ,
`lastname` VARCHAR( 30 ) NOT NULL ,
`email` VARCHAR( 60 ) NOT NULL ,
PRIMARY KEY ( `id` )
)

Además agregaremos una entrada a la tabla para tener datos con los que trabajar:

INSERT INTO contacts (name,lastname,email)
VALUES 
('Juan','Perez','juan@perez.com'),
('Maria','Gonzalez','maria@gonzalez.com'),
('Sofia','Alvarez','sofía@alvarez.com'),
('Pedro','Sanchez','pedro@sanchez.com');

Una vez realizado esto podemos generar nuestro modelo creando el siguiente archivo:

<?php 
class Model_Table_Contacts extends Zend_Db_Table 
{ 
      protected $_name = 'contacts'; 
      public function getContact($id) 
      { 
            $id = (int)$id; 
            $row = $this->fetchRow('id = ' . $id); 
            if (!$row) { 
                 throw new Exception("No se encuentra la fila $id"); 
            } 
            return $row->toArray(); 
      } 
      public function addContact($name, $lastname, $email) 
      { 
            $data = array( 
                 'name' => $name, 
                 'lastname' => $lastname, 
                 'email' => $email, 
            ); 
            $this->insert($data); 
      } 
      function updateContact($id, $name, $lastname, $email) 
      { 
            $data = array( 
                 'name' => $name, 
                 'lastname' => $lastname, 
                 'email' => $email, 
            ); 
            $this->update($data, 'id = '. (int)$id); 
      } 
      function deleteContact($id) 
      { 
            $this->delete('id =' . (int)$id); 
      } 
}

Así dentro del modelo tendremos los métodos que nos ayudarán a interactuar con nuestra base de datos.

Creando las vistas

En Zend Framework encontramos las vistas en el directorio “views” y se organizan de la forma: views/scripts/{nombredelcontrolador}/{nombredelaaccion}.phtml .

Como te habrás dado cuenta nuestras vistas ya están creadas (ocurrió cuando creamos el controlador en el punto 4.1), ahora corresponde que nos ocupemos del “layout”.

En la mayoría de los proyectos hay partes de código HTML que se repite para todas las vistas, por ejemplo: un encabezado, una columna lateral y el pie de página. Para evitar repetir código es que existe la posibilidad de crear un “layout” o plantilla donde colocaremos el código común y desde donde llamaremos las vistas.

Lo primero que debemos hacer es crear el directorio: “application/layouts/” y agregar en nuestro archivo de configuración (configs/applications.ini) la siguiente linea (justo después de la configuración de la base de datos que agregamos):

resources.layout.layoutpath = APPLICATION_PATH “/layouts”

También agregaremos las definiciones generales para nuestro layout editando la clase Bootstrap (“/application/Bootstrap”) y agregando lo siguiente:

    function _initViewHelpers() 
    { 
       $this->bootstrap('layout'); 
       $layout = $this->getResource('layout'); 
       $view = $layout->getView(); 
       $view->doctype('XHTML1_STRICT'); 
       $view->headMeta()->appendHttpEquiv('Content-Type', 'text/html;charset=utf-8'); 
       $view->headTitle()->setSeparator(' - '); 
       $view->headTitle('Primeros pasos en Zend Framework'); 
    }

Por último crearemos el archivo de nuestro “layout” en “/application/layouts/layout.phtml”:

<?php echo $this->doctype(); ?> 
<html>
<head> 
      <?php echo $this->headMeta(); ?> 
      <?php echo $this->headTitle(); ?> 
</head> 
<body> 
  <h1><?php echo $this->escape($this->title); ?></h1> 
  <?php echo $this->layout()->content; ?> 
</body> 
</html>

Con esto finalizamos lo relacionado con la estructura del sistema, en adelante nos corresponde “darle vida” a sus funcionalidades.

Implementando las funcionalidades

En esta quinta parte analizaremos como implementar las funcionalidades de nuestro sistema, es decir, como mostrar, agregar, editar y eliminar nuestros contactos.

Mostrando los contactos

El primer paso es agregar la lógica de la funcionalidad en la acción del controlador, por lo que vamos a “/application/controllers/IndexController.php” y agregamos lo siguiente en nuestra acción por defecto (“indexAction”):

// action body 
// Título de la vista	
$this->view->title = "Mis Contactos"; 
// Iniciamos una instancia del nuestro modelo
$contacts = new Model_Table_Contacts(); 
// Asignamos a la vista el resultado de consultar por todos los registros
$this->view->contacts = $contacts->fetchAll();

El segundo paso es ir a la vista para esta acción (“/application/ views/ scripts/ index/ index.phtml”) y cambiamos su contenido por el siguiente:

<p><a href="<?php echo $this->url(array('controller'=>'index','action'=>'add'));?>">Agregar contacto</a></p> 
<table> 
<tr> 
<th>Nombre</th> 
<th>Apellido</th> 
<th>Correo</th> 
<th>&nbsp;</th> 
</tr> 
<?php foreach($this->contacts as $contact) : ?> 
<tr> 
<td><?php echo $this->escape($contact->name);?></td> 
<td><?php echo $this->escape($contact->lastname);?></td> 
<td><?php echo $this->escape($contact->email);?></td> 
<td> 
<a href="<?php echo $this->url(array('controller'=>'index','action'=>'edit','id'=>$contact->id));?>">Editar</a> 
<a href="<?php echo $this->url(array('controller'=>'index','action'=>'delete','id'=>$contact->id));?>">Borrar</a> 
</td> 
</tr> 
<?php endforeach; ?> 
</table>

Ahora si abrimos la página de inicio (“http://localhost/zf/primer-proyecto/public/index/”) nos deberíamos encontrar con lo siguiente:

zend3

Agregando contactos

Para agregar contactos crearemos un formulario en “/application/forms/Contact.php ”:

<?php 
// Creamos una clase que extiende el componente Zend_Form 
class Form_Contact extends Zend_Form 
{ 
    public function __construct($options = null) 
    { 
    parent::__construct($options); 
    $this->setName('contact'); 
    $id = new Zend_Form_Element_Hidden('id'); 
    $name = new Zend_Form_Element_Text('name'); 
    $name->setLabel('Nombre') 
           ->setRequired(true) 
           ->addFilter('StripTags') 
           ->addFilter('StringTrim') 
           ->addValidator('NotEmpty'); 
    $lastname = new Zend_Form_Element_Text('lastname'); 
    $lastname->setLabel('Apellido') 
          ->setRequired(true) 
          ->addFilter('StripTags') 
          ->addFilter('StringTrim') 
          ->addValidator('NotEmpty'); 
    $email = new Zend_Form_Element_Text('email'); 
    $email->setLabel('Correo') 
          ->setRequired(true) 
          ->addFilter('StripTags') 
          ->addFilter('StringTrim') 
          ->addValidator('NotEmpty'); 
    $submit = new Zend_Form_Element_Submit('submit'); 
    $submit->setAttrib('id', 'submitbutton'); 
    $this->addElements(array($id, $name, $lastname, $email, $submit)); 
  } 
}

Ahora sólo nos resta agregar en nuestro controlador la lógica de la acción destinada a agregar contactos (addAction):

public function addAction() 
{ 
    $this->view->title = "Agregar un nuevo contacto"; 
    $form = new Form_Contact(); 
    $form->submit->setLabel('Agregar'); 
    $this->view->form = $form; 
    if ($this->getRequest()->isPost()) { 
        $formData = $this->getRequest()->getPost(); 
        if ($form->isValid($formData)) { 
            $name = $form->getValue('name'); 
            $lastname= $form->getValue('lastname'); 
	 $email= $form->getValue('email'); 
            $contact = new Model_Table_Contacts(); 
            $contact->addContact($name, $lastname, $email); 
            $this->_redirect('/'); 
        } else { 
            $form->populate($formData); 
        } 
    } 
}

Por último, en la vista de la acción “agregar” (/views/scripts/index/add.phtml) incluíremos:

<?php echo $this->form ;?>

Si vamos a http://localhost/zf/primer-proyecto/public/index/add deberíamos ver lo siguiente:

zend4

Editando los contactos

La acción dedicada a la edición de nuestros contactos es muy similar a la ocupada para agregarlos. Luego en “editAction()” agregaremos lo siguiente:

public function editAction() 
    { 
        // action body 
 
        $this->view->title = "Editar contacto"; 
 
        $form = new Form_Contact(); 
        $form->submit->setLabel('Guardar'); 
        $this->view->form = $form; 
        if ($this->getRequest()->isPost()) { 
            $formData = $this->getRequest()->getPost(); 
            if ($form->isValid($formData)) { 
                 $id = (int)$form->getValue('id'); 
                 $name = $form->getValue('name'); 
                 $lastname = $form->getValue('lastname'); 
                 $email = $form->getValue('email'); 
                 $contacts = new Model_Table_Contacts(); 
                 $contacts ->updateContact($id, $name, $lastname, $email); 
                 $this->_redirect('/'); 
            } else { 
                 $form->populate($formData); 
            } 
        } else { 
            $id = $this->_getParam('id', 0); 
            if ($id > 0) { 
                 $contacts = new Model_Table_Contacts(); 
                 $form->populate($contacts->getContact($id)); 
            } 
        } 
 
    }

Mientras que en la vista de esta acción (/views/scripts/index/edit.phtml)

<?php echo $this->form ;?>

Al visitar http://localhost/zf/primer-proyecto/public/index/edit deberíamos encontrar lo siguiente:

zend5

Borrando contactos

Por último necesitamos implementar una funcionalidad para eliminar registros en nuestro sistema. Para esto en el controlador definiremos la acción “deleteAction”:

public function deleteAction() 
    { 
        // action body 
        $this->view->title = "Eliminar contactos"; 
 
        if ($this->getRequest()->isPost()) { 
            $del = $this->getRequest()->getPost('del'); 
            if ($del == 'Yes') { 
                 $id = $this->getRequest()->getPost('id'); 
                 $contacts = new Model_Table_Contacts(); 
                 $contacts->deleteContact($id); 
            } 
            $this->_redirect('/'); 
        } else { 
            $id = $this->_getParam('id', 0); 
            $contacts = new Model_Table_Contacts(); 
            $this->view->contact = $contacts->getContact($id); 
        } 
 
    }

Mientras que en la vista incluiremos un mensaje de confirmación del registro que se quiere borrar:

<p>Est&aacute; seguro de querer borrar el contacto: 
<?php echo $this->escape($this->contact['name']); ?> <?php echo $this->escape($this->contact['lastname']); ?>? 
</p> 
<form action="<?php echo $this->url(array('action'=>'delete')); ?>" method="post"> 
<div> 
  <input type="hidden" name="id" value="<?php echo $this->contact['id']; ?>" /> 
  <input type="submit" name="del" value="Yes" /> 
  <input type="submit" name="del" value="No" /> 
</div>

Al intentar borrar un contacto nos debería mostrar la siguiente confirmación:

zend6

En este artículo hemos visto como desarrollar una pequeña aplicación usando Zend Framework. Si bien el uso de estas herramientas nos permiten mantener en orden un proyecto y, además, aumentar la velocidad de desarrollo, también se debe considerar el tiempo que hay que invertir en su aprendizaje.

Si quieres profundizar en Zend Framework un buen comienzo es el sitio oficial del proyecto y su documentación (http://framework.zend.com/). Además te recomiendo el libro que utilicé como base para este artículo: “Zend Framework in Action” (http://www.zendframeworkinaction.com/)

Artículos Aleatorios

Oct 01, 2009

Instalando Backtrack 4 (pre-final)

Bueno como dice el titulo les indicare como instalar backtrack 4 (pre-final), cabe decir que esta distro es una de las mejores en su categoria de auditoria, seguridad y como herramienta de hacking.  esta nueva version se basa en la distribucion de linux Ubuntu la cual no es de mi agrado pero si es para hacer la vida mas facil a los usuarios habra que aceptarlo.

Comencemos.

Lo primero es correr backtrack (maquina virtual en mi caso).
posteriomente ya cargado nos dara el prompt del sistema escribomos Startx como lo demuestra en la imagen.



Despues de ya haber inciado en entorno grafico se deben realizar las configuraciones basicas para cuando instalemos quede ya listo, en este caso seria el idioma teclado, sistema y red. estos dos ultimo explicare como hacerlo no asi el primero. debera ser tarea para ustedes.

Despues de haber cambiado el idioma de teclado haremos la configuraciones de red, en este caso com uso una VM sera mediante NAT. abrimos una consola y tecleamos lo siguiente.



bt-hack#ifup eth0    (con esto habilitamos la tarjeta de red ver imagen)






  (Si lo desean hacer manual deben agregar ustedes la IP con el comando ifconfig eth0 IP netmask  y posteriormente agregar el gateway. creo que eso es sabido.)

Ya con esto estamos ok con la red y ahora instalaremos el sistema en español de la siguiente manera

bt-hack#apt-get install kde-i18n-es

se instalara el paquete de lenguaje en español......

ahora instalaremos BT en nuestro HDD en entorno GUI. de la siguiente manera.

abrimos una consola y escribimos lo siguiente.

bt-hack#ubiquity    ( y se abrira un instalador en modo grafico para poder instalarlo de manera guiada aprueba de noob.) ver fotos.




















Y eso seria todo.

Saludos.

Sep 23, 2009

Retomando......

Bueno, despues de mucho tiempo he decidido retomar esto que empeze, ahora tengo mas tiempo y ademas estoy a punto de terminar lo que estudio, de igual manera no me dedicare hablar solo de linux si no que de redes tambien e informatica en general, esperando la aceptacion de quienes leen.

.....



Ya estaremos online.......

Jun 14, 2009

Víctor Munzenmayer

Víctor Munzenmayer
.:: Victor Munzenmayer ::. feed

Ojo con las "donaciones"

Me acaba de llegar este mail, lo encontré muy interesante y lo comparto con ustedes :)

Ayer en un SUPERMERCADO, SANTA ISABEL para ser exactos, mi padre redondeó su cuenta, algo un tanto insignificante y una práctica muy común en todos y cada uno de los centros comerciales del país. El ticket de compra aparecía un 'redondeo 5 PESOS'. Esto despertó mi instinto, mi instinto legal fué que, en la pantalla de la cajera aparecía el siguiente concepto: Donación AL HOGAR DE CRISTO.
Al ver lo anterior escrito, le pregunté a la cajera que si ellos lo manejaba como una donación, a lo cual me respondió que sí, pues bueno ahora entiendo que todas y cada una de la donaciones son deducibles de impuestos, para cada contribuyente siempre y cuando se expida el pertinente comprobante fiscal.
Basado en lo anterior, le pedí a la cajera que me diera mi comprobante de donación, claramente la respuesta fue una negativa, ya que ellos sólo lo manejan como redondeo.Pedí hablar con el gerente, ya que evidentemente bajo mi razonamiento había una evasión fiscal escondida tras un redondeo.
Llegó el gerente y le dije que si podía expedirme un recibo de donación a cargo de HOGAR DE CRISTO. por todas mis compras realizadas en dicha tienda, ya que ése era el concepto y quería deducirlas (evidentemente le dije que traía conmigo mis tickets de compra, falso pero buenoooo, esa era la onda).
El gerente me negó mi comprobante (que ojo! es mi derecho), y trató de explicarme que... bueno, ellos solamente son captadores del efectivo, es decir juntan la suma de capital del redondeo y lo entregan aL HOGAR DE CRISTO. Terminé pidiéndole que me regresara mis 5 PESOS, porque no iba a participar en una defraudación fiscal y accedió.

¿Por qué fraude???
Pues es simple, ellos recaudan una cantidad específica de dinero a lo largo del mes, calculemos que de cada compra recaudan 5pesos , es claro que en un mes recaudan una muy alta cantidad de pesos, esa cantidad es recolectada en este caso por SUPERMERCADO SANTA ISABEL y entregada aL HOGAR DE CRISTO Ojo, el dinero que es de un montón de ciudadanos y cooperación de los mismos, no es entregado en nombre de todos y cada uno de los contribuyentes REALES, sino en nombre de 'SANTA ISABEL ', por lo que el recibo de donación es a nombre de " SANTA ISABEL'... ¿más claro?? Lo que donaste se lo adjudica otra persona, y ella lo deduce, es decir hace uso de tu dinero para ahorrarse impuestos, en tal sentido, defrauda a el fisco y paga con tu dinero impuestos que el debería de pagar con el suyo.
Así que la próxima vez que te pidan el redondeo, piénsalo... no te digo que no dones, para eso ahórrale y hazlo directamente ante las instituciones y no ante una empresa 'intermediaria' .
Si calculamos que en un día , por una caja pasan 100 clientes por hora, y si lo multiplicamos por 25 cajas, por 15 horas en que está abierto el SANTA ISABEL, con un supuesto de 5 PESOS de redondeo por cada compra, nos da un total de $ 187.500 por tienda. Existen 220 tiendas de SANTA ISABEL en el pais, se metieron $41.250.000 pesos al día.
¡¡Es un robo hormiga!! Si gana y ése es un milloncito diario, calcula mensualmente POR 30 DÍAS, o mejor aún, por 365 días del año nos da un total de la nada despreciable cifra de $ 451.687.500.000 que es la forma en que se deduce y nada más fíjate la gran cantidad de $$$ que no pagan... de impuestos. Que forma de robar, no tienen vergüenza! y nosotros meta pague y pague impuestos, mientras que ellos evaden al fisco, franca y descaradamente, y ¿A dónde va tanto dinero?, ¿Acaso pecan de honestidad y entregan todo el dinero? ¿Ya te lo estás preguntando? y por si fuera poco TODAVÍA TE LO METEN EN LA CABEZA POR LA TELE.
En lo que a mí respecta, ya no pienso colaborar con ese fraude. Y para finalizar, esto lo hace también LIDER, MONSERRAT, JUMBO,TOTTUS, ETC., Y TU... ¿QUÉ PIENSAS DEL REDONDEO?? ¿SEGUIRÁS DICIENDO TODAVÍA QUE SÍ? ASÍ LAS MULTINACIONALES GANA FORTUNAS Y NOS EMPOBRECEN, COMO INDIVIDUOS Y COMO PAIS.

Atte. Un ciudadano de buena fe ... MANDA ESTE MAIL, A TODOS TUS
CONTACTOSPARA QUE ESTO NO SIGA PASANDO, PIENSA Y PREOCÚPATE POR TODOS NOSOTROS.



Interesante...

Apr 20, 2009

Fernando Vásquez

Fernando Vásquez
Elmo.cl » Linux feed

Flisol 2009

FLISOL (c) Juan Carlos Inostroza El Festival Latinoamericano de Instalación de Software Libre (FLISoL) es el evento de difusión de Software Libre más grande en Latinoamérica. Se realiza desde el año 2005 y su principal objetivo es promover el uso del software libre, dando a conocer al público en general su filosofía, alcances, avances y [...]

Feb 16, 2009

Fernando Vásquez

Fernando Vásquez
Elmo.cl » Linux feed

Ubuntu para el bolsillo

Para los que nos gusta leer la literatura nerd de la informática conocemos al galardonado escritor de libros y publicaciones Linux, Keir Thomas. Si te gustan las cosas gratis, puedes bajar su último libro completo “Ubuntu Pocket Guide and Reference” totalmente gratis y legalmente correcto aquí. Personalmente no he leído esta guía de bolsillo, pero si al parecer está [...]

Dec 29, 2008

Fernando Vásquez

Fernando Vásquez
Elmo.cl » Linux feed

Boxee disponible para Ubuntu y OSx

Ayer mientras revisaba mis blog favoritos lo cual no hacia hace tiempo me encontre un post en el blog de huasonic donde habla de un lcd ynos cuenta sobre su experiencia con este aparato, dentro del post destaca a boxee, no lo conocia asi que me puse a preguntar  hasta que logre obtener una invitacion [...]