miércoles, 29 de febrero de 2012

Un vistazo al futuro: Fedora 17 Alpha

El equipo de desarrollo de la distribución auspiciada por Red Hat ha presentado hoy la versión Alpha de lo que será Fedora 17. En términos prácticos, la versión 17 también es una continuación de lo que hemos venido observando desde Fedora 15 / 16 en donde se apuesta fuertemente al sector profesional a través de las mejoras en virtualización y la disponibilidad de las últimas herramientas de desarrollo.


No obstante, también tenemos mejoras que beneficiarán a los usuarios caseros: Resalta la inclusión de Gnome 3.4, que por primera vez incluirá un "Render por software" que permitirá disfrutar a la mayoría del modo completo de Gnome y no el relegado "Fail back mode" en computadores con recursos de hardware limitados. Por otro lado, también brilla la apuesta por el famoso KDE 4.8.

Quizá uno de los mejores aspectos que tendrá Fedora 17 es que vendrá con FirewallD activado por omisión ¿Lo recuerdan? Es el firewall dinámico que se introdujo en Fedora 15 que permite realizar cambios a la reglas del firewall sin necesidad de reiniciar el servicio completo. Este cambio implica que las típicas herramientas de configuración (IPTables, System-config-firewall) ya no vendrán de serie.

Junto al firewall dinámico, Fedora 17 incorporará “Zonas de red”, el cual, permite establecer perfiles de seguridad de acuerdo a la red donde nos encontremos conectados. Así, si estamos en casa se activará un perfil llamado "Home" que permite acceder archivos y documentos alojados en nuestro computador desde otros PCs de la red, pero al conectarnos a una WiFi pública, se activará un perfil "Public" que cerrará todos los puertos y solo permitirá acceso a lo mínimo necesario.

Otro cambio importante es la redistribución del sistema base de archivos:

/usr - Sistema instalado; Es posible compartirlo; Posiblemente en solo lectura por omisión.
/etc – Datos de configuración; No se puede compartir
/var – Datos compartidos; No se puede compartir
/run –Datos volátiles; No se puede compartir; Sistema de archivos obligatorio tmpfs

Bajo esta premisa, los siguientes directorios serían movidos y existirían a través de enlaces simbólicos bin -> usr/bin; sbin -> usr/sbin; lib -> usr/lib; lib64 -> usr/lib64. ¿El resultado? Un sistema de archivo más compacto y fácil de mantener, ya que podrían realizarse y restaurarse copias de seguridad más fácilmente.

Eso es solo el comienzo. Fedora 17 incluye muchas más características nuevas que puedes consultar desde aquí. Recuerda que la versión Alpha está destinada únicamente a desarrolladores y entusiastas para su prueba y evaluación y en ningún momento se recomienda su uso en equipos de producción ya que puede (Y seguramente lo haga) presentar errores.

Descarga de Fedora 17:
http://fedoraproject.org/get-prerelease

martes, 28 de febrero de 2012

Adiós Adobe, adiós Tweetdeck

Justamente cuando instalaba de nuevo todas las herramientas en Fedora, leí una noticia bastante desalentadora: Flash en Linux existirá solo hasta la versión 11.2. Para mis adentros pensé ¿Qué rayos está haciendo Adobe? Primero sacó del aire la versión de Adobe Air para Linux y ahora también viene a sacar Flash.


Posiblemente sea verdad que para ellos no sea rentable mantener esas versiones para Linux y aunque no funcionaran del todo bien y les llovían críticas, debemos admitir que era mejor contar con ellas. Si algo siempre ha necesitado el pingüino es que las grandes empresas confíen en su potencial y saquen ediciones de su software para este sistema operativo.

Sin embargo, para mí la situación de Adobe es más complicada de lo que parece, la salida de HTML5 (Aunque yo no creía) en realidad ha puesto en serios aprietos a Flash y sus demás tecnologías pierden cada vez más vigencia y fuerza. En mi caso, lo único que utilizaba con Adobe Air era mi cliente favorito de Twitter: Tweetdeck pero una vez comprado por la empresa del pajarito azul simplemente ya no sirve, Twitter compró Tweetdeck no para hacer un mejor cliente de sus servicios sino para sacar del camino a uno de los más serios competidores que tenía en el mercado. Ciertamente lo logró: Tweetdeck actualmente es paupérrimo, ni la versión de Chrome se salvó.

Ahora, con la decisión de Adobe de retirar por completo sus desarrollos para Linux confirmó lo que muchos vaticinaron desde hace tiempo pero no quise escuchar: Es tiempo de buscar alternativas tanto a los productos de Adobe, como a los buenos clientes de Twitter que solían hacer uso de esas tecnologías.

Ah claro, por suerte existe una estratégica alianza entre Adobe y Google, Flash en Linux podrá existir a través de un complemento de Chrome. Si bien la posibilidad existe, obligar a alguien a usar un navegador por una tecnología Web es ahora tan nefasto como la monopolización de la red que alguna vez logró un viejo amado (¿?) y recordado gratamente (¿¿??) por los desarrolladores Web: Internet Explorer 6.

Gracias Adobe por lo que hizo en su momento para traer sus productos a Linux, buen viento y buena mar porque ciertamente no lo tiene fácil por delante; Por el lado de Tweetdeck pues nada… Seguramente también termine por desaparecer absorbido completamente por su nuevo dueño, en todo caso ya no vale la pena seguir usándolo… Será buscar o en su defecto hacer un mejor cliente realmente abierto. No siendo más ¡Chao Adobe! ¡Chao Tweetdeck!

lunes, 27 de febrero de 2012

¿Cómo obtener información del hardware en Linux con Hardinfo?

Anteriormente hablamos de cómo recuperar la información de nuestro hardware a través de la consola de comandos (Consulta este post), sin embargo, quizá no sea lo más fácil de leer ni tampoco lo más práctico. Por esta razón llega Hardinfo, una utilidad que nos permitirá conocer desde una interfaz gráfica (Basada en GTK) agradable los detalles de nuestro computador.

Primero necesitamos instalar Hardinfo en Fedora, para ello ejecuta en una terminal:
$ su -c 'yum install hardinfo'
Una vez instalado encontrarás Hardinfo en el menú actividades de Gnome como System Profiler and Benchmark, ejecútalo y a explorar el hardware de tu computador.


Uno de los valores agregados de Hardinfo es que permite realizar "Benchmarks" de tu hardware y compararlos con otros resultados, si bien no se puede tomar como un software de medición de rendimiento profesional, nos da una idea de cómo estamos frente a otras configuraciones de hardware.

¿Cómo obtener información del hardware en Linux por consola?

Una de las tareas más habituales es conocer la información de nuestro hardware, así que vale la pena tener a la mano estos comandos ¡Prúebalos en tu computador! (No requieren privilegios de root):

Obtener información del procesador
$ cat /proc/cpuinfo
Nos devolverá un listado con toda la información por cada núcleo lógico del procesador.

Obtener información de la memoria RAM
$ cat /proc/meminfo
O bien:
$ free -m
Con -m especificamos que deseamos ver la salida en MB.

Obtener información de la tarjeta de video
$ lspci -v -s `lspci | awk '/VGA/{print $1}'`
Obtener información de la tarjeta de sonido
$ lspci -nn | grep Audio
Obtener información de la tarjeta de red
$ lspci -nn | grep Ethernet
O bien de la tarjeta Wireless:
$ lspci -nn | grep Wireless
Obtener información del disco duro
$ df -h
¿Se me quedó algún dispositivo importante por fuera? Creo que no, de todas formas con esta lista de comandos ¡Ya nos podemos defender!

domingo, 26 de febrero de 2012

¿Verdad o mito? Virus en Linux

Una de las puntas de lanza del sistema operativo del pingüino es precisamente su seguridad motivo por el cual sus usuarios alardean y es usado ampliamente en sistemas de misión crítica, computadores de operación científica y servidores. Sus usuarios confían plenamente en él y navegan mayoritariamente en la red sin ninguna clase de seguridad en tanto que sus detractores de Windows creen que simplemente tienen suerte por ser una minoría que no vale la pena atacar. ¿Existen los virus en Linux? o simplemente ¿Sus usuarios están en un sueño del que pronto despertarán?


Empecemos por definir ¿Qué es un virus? Desafortunadamente, los departamentos de soporte técnico y uno que otro personaje de IT nos ha acostumbrado a llamarle virus a cualquier cosa: ¡Que mi computador está lento! -Eso es un virus-, ¡Que Gmail no me deja adjuntar un .exe! -Eso es un virus-, ¡Que el mouse no funciona! -Eso es un virus-.

Anteriormente habíamos dicho, que la clasificación más apropiada usada por los departamentos de soporte técnico debería ser "Malware" -Claro, excluyendo los problemas por usuarios torpes o errores de capa 8 que llaman- pero lo que llamamos propiamente un virus debe tener tres características fundamentales:

1) Que sea capaz de auto ejecutarse
Un buen virus debe tener la capacidad de ejecutarse automáticamente, sin ninguna clase de intervención del usuario y por supuesto, que corra sin que el usuario lo note. 

2) Que sea capaz de infectar archivos
Un buen virus debe tener la capacidad de modificar / infectar archivos. Por ejemplo, corromper los .exe para que no se puedan ejecutar, o bien, para que además lancen otros procesos que compliquen aún más el panorama del equipo infectado. Modificar archivos de configuración es un accionar válido pero lo hace menos sofisticado y más fácil de erradicar.

3) Que sea capaz de infectar otras máquinas
¿Qué es un virus si éste no es capaz de propagarse por sí mismo a otras máquinas?

Teniendo estos aspectos claros... ¿Qué tan posible es que todo esto pase en un equipo Linux?

Para empezar en Linux absolutamente nada, léase bien, absolutamente nada, se ejecuta por sí solo. En Linux a diferencia de Windows no existen los auto ejecutables y además todo lo que se ejecuta tiene unos permisos asociados al usuario que lo lanza limitando su campo de acción.

Dos ilustraciones hipotéticas: Supóngase que un virus se agregue de alguna forma, a los programas que corren al inicio de sesión de Gnome, logrando que se auto ejecutara sin que el usuario lo note. ¿Es capaz de corromper el sistema operativo? No. ¿Es capaz de corromper archivos de usuario? Sí. Pero al cambiar se sesión -Con otro usuario- Ya no hay "virus" y es posible recuperar en buena medida la información. ¿Verdad?.

El segundo caso, es cuando el usuario instala y además da permisos de root a un "Virus" que se oculta en un software. Ciertamente sí es posible, por eso la primera recomendación es no instalar software fuera de los repositorios oficiales de cada distribución. Aquí se requiere que el usuario permita específicamente que pase "Algo" en el sistema (Como la instalación de ese paquete) Que es una situación controlable a diferencia de una bellezas en Windows, que por ejemplo, con solo conectar una USB al computador ¡Ya tienes tu virus!.

¿Y podrá infectar el mismo virus otras máquinas? Ya vimos que no dado que requiere intervención del usuario pero digamos que podría hacerlo a través de técnicas de ingeniería social engañando a más usuarios de tal forma que instalen el paquete comprometido (Como el caso de la USB). (Esta limitación, de entrada les quita el status de virus chéveres).

¿Cuál es la razón? Básicamente los permisos asociados a los archivos: En Linux a la mayoría de los archivos de ámbito de usuario para que se ejecuten, se les debe permitir explícitamente los permisos de ejecución. ¿Y a los que no son de usuario, o sea los del sistema? ¡También! Pues todo en Linux es abstraido como un archivo con unos permisos asociados.

Les mentiría si les dijera que toda la seguridad en Linux está limitada a permisos, usuarios y roles. También cuenta que precisamente todo el software que se instala de los repositorios está firmado, la presencia de un firewall y en el caso de Fedora y Red Hat, por omisión cuentan con SELinux (Que, como una extensión de los permisos agrega contextos) que dificultan más el accionar de un posible virus.

Personalmente llevo años usando Linux por la red sin antivirus y jamás he tenido problemas en ese sentido, nunca he tenido que formatear por problemas de seguridad y me olvidé de mantener y comprar suites de seguridad, antivirus y anti-todo. Como dato extra, tampoco he conocido nadie que se haya quejado por este tema.

¿Existen los virus en Linux? ¿Verdad o mito? Me atrevo a decir que no, o al menos, no como los conocimos en Windows. Por supuesto, Linux como todo software no es infranqueable y no está libre de bugs / vulnerabilidades: Como mostramos anteriormente, podría comprometerse seriamente con malware (¿Esto ya suena diferente a virus no?) si no tomamos las medidas adecuadas... Dicho malware podría tener algunos comportamientos típicos virales pero difícilmente cumplirá con todos los aspectos necesarios para ser un clásico virus.

Está claro que actualmente usar Linux es el mejor antivirus que existe pero no hay que bajar la guardia: Evita instalar software fuera de los repositorios, mantener activo un firewall en tu computador, tener hábitos de navegación saludables (Evitando entrar a sitios de dudosa reputación) nunca sobra y recuerda: Un sistema actualizado es un sistema más complicado de atacar.

--
Por cierto, muchas gracias a @JorgeAlfonso quien propuso este tema para ¿Verdad o Mito?

Avast 7 ¡Ya está aquí!

A todo el que me pregunta ¿Qué antivirus me recomiendas? Yo les digo ¡Mejor usa Linux! con total seguridad Avast. Es mi herramienta de seguridad con la que me he casado desde hace bastante tiempo sin queja alguna, haciendo muy bien su trabajo y hoy estrenando la versión 7.


En esta nueva edición se ha hecho énfasis en dos aspectos: El primero, la simplicidad de la interfaz permitiendo al usuario novato tomar decisiones con seguridad, y el segundo, -Como no- Mejorar la efectividad de la detección de problemas potenciales.

Avast 7 de cierta manera, se vuelca hacia "La nube" recibiendo las definiciones de virus ya no en "Lotes"  (Ahí es cuando nos salta el típico aviso de notificación) sino recibiendo las nuevas firmas en -Voy a ponerlo así- "Streaming". ¿Cuál es la ventaja? Bueno, en caso de una amenaza global que se expande rápidamente podría marcar la diferencia una actualización en tiempo real y no esperar el próximo reinicio para chequear las definiciones de virus.

También incluye una nueva funcionalidad llamada FileRep, que con base a la información suministrada por los usuarios, establece la reputación de un archivo determinando que tan inseguro podría ser abrirlo. FileRep también ayuda a tomar decisiones el escáner de Avast.

WebRep, el complemento para el navegador (Que se incluyó en Avast 6) también se ha mejorado notoriamente, siendo más efectivo en detectar sitios Web potencialmente inseguros bien sea por posibles ataques de phishing o incluso por certificados SSL alterados.

Así mismo, los desarrolladores de Avast prometen que esta versión de Avast es más liviana, rápida y consume menos recursos. La versión no gratuita, incluye algo muy llamativo: La capacidad de asistencia remota, muy útil para solucionar problemas de la mano "Del amigo que sabe".

No se diga más, si ya tienes instalado Avast ¡Actualiza ahora mismo! De lo contrario deberías considerar seriamente darle una oportunidad:

Descarga Avast:
http://www.avast.com/es-es/free-antivirus-download

sábado, 25 de febrero de 2012

Dando el salto (Al vacío) con los 64bits y Fedora

Sabía que en algún momento llegaría este momento; Un día esperado por unos y temido por otros, el día en que la computación con las limitaciones de memoria como la conocíamos cambiaría para siempre: La llegada de los 64bits.

Bueno, ya dejando el trascendentalismo acerca del cambio de 32 a 64 bits, hay que decir que el cambio ha sido mucho más suave de lo que pensábamos: En realidad, mucha gente que compra nuevos computadores no sabe que su nuevo sistema operativo es de 64bits y tampoco le importa (Ciertamente no debería tampoco desde que funcione) y los que conocen un poco dirán que sirve para que reconozca las 4GB o más de memoria RAM.


Y es cierto, usar un sistema operativo de 64bits borra del mapa la limitación que no permitía que el sistema operativo reconociera más de 4GB... De hecho uno de 32bits solo reconoce como 3.5GB efectivos haciendo que toda esa memoria extra invertida quedara como adorno en la tarjeta madre.

Pero 64 bits es mucho más que "Reconocer" grandes cantidades de memoria RAM, dado que requiere que el hardware mismo lo soporte agrega a nivel de procesador nuevos juegos de instrucciones de propósito general (Pasa de 8 a 16), también duplica el juego de registros SSE de 8 a 16 bits y realiza llamadas al sistema más rápido debido a que la segmentación no está soportada en el modo de 64 bits. (Las llamadas al sistema no tienen las latencias asociadas con almacenar y recuperar la información de segmentación ni tienen que realizar las comprobaciones necesarias de protección a nivel de segmentación)[1].

En otras palabras, los 64 bits implican que tenemos un capacidad de cómputo superior, es posible crear librerías mucho más complejas cargadas en tiempo de ejecución y realizar cálculos con una precisión antes no vista en computadores caseros. Sin embargo, requiere también un software que explote todo ese poder y es aquí donde entra Linux.

Mi primer acercamiento a los 64bits
Antes tuve computadores con bastante memoria RAM, pero nunca creí necesario realmente los 64 bits. No obstante, para que reconociera mis 4GB de memoria usé mucho tiempo una extensión llamada Kernel-PAE. (Physical Address Extension por sus siglas en Inglés). Kernel-PAE crea una tabla de equivalencias que mapeaba los 32bits de tal forma que reconociera los 4GB o más de memoria instalada: Simple y efectivo, toda mi RAM y la compatbilidad de siempre.

Intenté instalar hace un buen tiempo (Al menos un año o dos) una distro de 64bits pero realmente no estaba lista para mí, aún faltaba mucha paquetería para la arquitectura y el reconocimiento de hardware era más bien pobre. Lo que es peor, las herramientas con las que habitualmente trabajo, no funcionaban o sacaban errores incomprensibles que arruinaban horas de dedicación.

Pero llegó mi nuevo laptop, con poder de procesamiento de sobra y desde su nacimiento -Ok, desde su ensamblaje- concebido para los 64 bits convirtiéndose en el escenario perfecto para adentrarme en este desconocido mundo de mapas de memoria extendidos definitivamente.

Descargué e instalé Fedora 16 de 64bits en mi Lenovo Ideapad G470. Para mi sorpresa, casi todo el hardware funcionó a la primera sin ninguna intervención y perfectamente; Las excepciones fueron como siempre el chip del WiFi (Una Broadcom que funcionó al pelo con el paquete kmod-wl de RPM-Fusion) y el micrófono integrado al que al día de este post tampoco le he prestado atención para ponerlo funcionar... Todo lo demás, incluyendo el bluetooth, audio y cámara integrada están de maravilla.

Eso confirmó mi teoría que el soporte de hardware en Linux es cada vez mejor y que hoy en día eso de compilar e instalar drivers está pasando de moda... De ser un trabajo meramente por motivos de aprendizaje y no de necesidad.

Un barrido por los repositorios de Fedora me dejó impresionado. De todo lo que uso, absolutamente todo está disponible para la arquitectura y no me he quedado varado por nada. Eso sí, instalé por error un repositorio de 32bits... Todo el software de allí instalaba correctamente pero no funcionaba, hasta que caí en cuenta en mi error de principiante y realicé las correcciones pertinentes: Bastó con desinstalar el software problemático, cambiar un i386 por x86_64 en el archivo del repositorio, instalar de nuevo y ¡Todo de maravilla! Así que un consejo es fijarte siempre que lo que instales tenga la arquitectura x86_64 o bien "noarch" como se ve en la imagen:


No tengo ninguna clase de medida científica para afirmar que en tareas cotidianas el rendimiento sea efectivamente superior, al fin y al cabo un computador nuevo (Sea cual sea) siempre parece que vuela... Pero algo si me sigue dejando triste con el pingüino: El rendimiento de la batería. Gnome 3 tiene una herramienta de configuración energética absolutamente paupérrima, mejor dicho, de eso a nada, creo que es mejor nada; KDE por otra parte, tiene el sueño de todo portátil, se puede configurar absolutamente todo, creando perfiles, ajustes personalizados, desactivar efectos ¡Todo!

Pero el problema no es en sí el administrador de energía sino el mismo kernel Linux. Se ha vuelto un goloso de la energía y a pesar de lo avanzado o pobre del gestor de energía, de desactivar funciones innecesarias e incluso de usar herramientas avanzadas como PowerTop las mejoras no son muy alentadoras.

Me preocupa, porque una batería capacitada para durar unas 3 horas en Windows, escasamente llegue con esfuerzo a las 2 horas (Y esto es independiente de si es 32 o 64bits) en Linux y en usuarios con alta movilidad esa sí que puede ser una buena razón para quedarse con el sistema operativo de Redmond. Espero que los desarrolladores lo solucionen pronto o bien provean una herramienta que permita ajustar estos parámetros más efectivamente.

En conclusión, los 64 bits en Linux ya son tan transparentes como lo son para los usuarios de Windows: Poca o nula dificultad con el hardware, abundante software listo para instalar aunque una que otra dependencia nueva necesaria, y la compatibilidad y confiabilidad a la que estamos acostumbrados.

¿Y ustedes? ¿Ya dieron el gran salto? ¡Los comentarios estás abiertos!

--
[1] X86_64

martes, 14 de febrero de 2012

Firefox 10 y Google Chrome 17: Frente a frente

La semana pasada tuvimos dos nuevos lanzamientos de los más populares navegadores que luchan frente a frente por el liderato en velocidad y por supuesto por una "Tajada en el pastel" del mercado. Se trata del zorro de fuego en su 10a edición y a Google Chrome en su edición 17a que he querido llamar "Ferrari".


En principio, ambos andan en la tónica de cambiar tres líneas de código y ya tenemos una versión mayor para el lanzamiento, algo particularmente incómodo en las empresas y para los administradores de sistemas. No obstante, lo cierto es que estos dos lanzamientos han cumplido con lo que prometen así que veámoslos cara a cara.

Velocidad 
En este apartado Firefox 10 no presenta mejoras sustanciales respecto a lo que hemos venido observando por parte de Mozilla, si bien no "Vuela" tanto como Chrome hay que decir que su desempeño global es bastante aceptable siendo óptimo para la mayoría de las tareas.

Por otra parte Google Chrome 17 tampoco incorporó un mecanismo que cargue las páginas más rápido, pero sí ahora intenta anticiparse al usuario: Al escribir las primeras letras en la barra de direcciones Chrome realiza una precarga del sitio más probable al cual el usuario se vaya a dirigir. Así, al pulsar Enter da la ilusión (Y de hecho no es ilusión sino real) de cargar más rápido.

En términos de velocidad no hay discusión, Chrome sigue siendo el rey.

Eficiencia
Pero una cosa es la velocidad y otra la eficiencia. Firefox con un rendimiento -Digamos- discreto presenta un consumo aceptable de recursos (CPU y RAM). En tanto Chrome, con un super rendimiento presenta consumos exponenciales especialmente de memoria lo que lo hace poco apto para equipos con características limitadas de hardware.

En mis pruebas locales obtuve los siguientes datos (Sobre Windows):

Item / Navegador Chrome Firefox
Número de procesos al iniciar 2 1
Consumo aproximado de memoria al iniciar 60MB 64MB
Número de procesos navegación (YouTube, El Espectador, El Tiempo, Vimeo, Google) 7 1
Consumo aproximado navegación 403MB 154MB

+ Hay que decir que al cerrar pestañas en Google Chrome se liberan los recursos inmediatamente. Otro aspecto que noté y me pareció muy interesante es que Firefox libera parte de recursos cuando las pestañas quedan en segundo plano... Es decir, al tener una Web compleja y pasar a una pestaña con Google se liberan unos cuantos megas. Firefox también libera eficientemente los recursos al cerrar pestañas pero siempre conserva un caché de aproximadamente unas 20MB

Haciendo la analogía, Firefox podría ser un vehículo convencional para la ciudad, cómodo para la mayoría y a pesar de tener un motor potente cuenta con un consumo de combustible aceptable. Chrome vendría siendo ese gran Ferrari, muchos caballos de fuerza, muchas revoluciones por minutos pero consume ¡Un galón de combustible cada vez que pisas el acelerador!

Con estos datos a la mano afirmaría que Chrome podría ser incluso más lento en computadores con características limitadas de hardware en tanto que Firefox presentaría un rendimiento más uniforme en una variedad de configuraciones de hardware.

Personalización
Si bien Chrome ya cuenta con una cantidad de "Plug-ins" y aplicaciones de gran calidad, personalmente sigo pensando que Firefox es más extensible y a su vez flexible. Cosas como “Personas” son pequeños detalles que hacen al navegador adaptar distintas personalidades de acuerdo a los gustos de las personas.

Desarrrollo
Chrome por omisión (Out of the box que llaman) cuenta con las mejores herramientas para desarrollar y depurar nuestros proyectos de desarrollo en la Web. Sin embargo, Firefox cuenta con los mejores agregados (Plug-ins) para esta tarea.

¿Por cuál me inclinaría? Obviamente es cuestión de costumbre y de lo que se desarrolle, pero mi opinión se va por el clásico Firebug, junto con HTTPFox y cómo no, las pruebas unitarias de Selenium que hacen un gran trabajo.

¿Está en peligro la sobrevivencia del Zorro de Fuego?
Gracias a @JorgeAlfonso quién me compartió el artículo La muerte anunciada de Firefox que sugiere la extinción del navegador de acuerdo a la tendencia de uso a la baja que ha presentado en los últimos años.

Si bien, hay que admitir que Firefox no está pasando por su mejor momento (Cosa que sí hace Chrome) puedo asegurar que tendremos navegador de Mozilla para rato por varias razones:

Primero, los desarrolladores comprendieron el desafío y de a poco van enderezando el camino; Segundo, Aunque Firefox no cuenta con una gran maquinaria detrás (Como lo es Microsoft detrás de IE o Google detrás de Chrome),  sí cuenta con una minoría creciente llamada comunidad de Software Libre (Que lo vió nacer) y aunque su adopción se reduzca a un puñado de usuarios de Linux, seguro que ese grupo valdrá la pena.

Tercero, Firefox no está haciendo mal las cosas, solo se dejó alcanzar y pasar por Google Chrome por no haber comprendido que la competencia dejó de ser "Una Web libre y abierta (De las oscuras manos de IE)" a una lucha feroz por mercado y velocidad.

Así que ¿Qué opinas? ¿Podrá Firefox alcanzar a Google Chrome en la carrera por el navegador más rápido del oeste? ¿Sobrevivirá a los embates de la competencia? Lo cierto es que la lucha en los navegadores está para alquilar balcón.

domingo, 12 de febrero de 2012

¿Verdad o Mito? Un virus puede dañar el hardware

Es bien sabido que los virus (O la definición más moderna y adecuada malware) pueden arruinar el funcionamiento de nuestro equipo: Causar comportamientos erráticos, lentitud para realizar tareas o lograr que simplemente no funcione. Pero muchas veces he escuchado rumores de virus que pueden lograr que el hardware físicamente se dañe, algo así como que a causa de un virus literalmente logre que tu computador "Explote y eche humo" ¿Verdad o mito?.



Empecemos por tener claro que todo malware es una pieza de software; Y como tal depende de la plataforma (El sistema operativo) para su ejecución y para el  acceso a los recursos de hardware. El sistema operativo, tomando el malware como un programa común y no como una amenaza simplemente concede los recursos necesarios de hardware al programa y es aquí cuando tenemos problemas: El virus actúa.

¿Y qué puede hacer un malware con el hardware? Pues obviamente lo que se le programe que haga (Si no, no sería un virus de computador sino una especie de bacteria espacial super inteligente)... ¿Pero en realidad puede llegar a estropear el hardware?

Aquí es donde tenemos el choque de dos mundos: El software no puede ir más allá de los límites del hardware. En otras palabras, a nivel de software estamos en capacidad de exigir al hardware el 100% de su capacidad, pero nunca lograr que transpase esos límites de tal forma que los componentes electrónicos resulten afectados y literalmente exploten.

Entonces ¿De dónde salió que un malware puede dañar físicamente el hardware? Fácil, hay hardware que tiene componentes de software.

El ejemplo más clásico es el disco duro. Este cuenta con un sector especial llamado MBR (Master Boot Record por sus siglas en Inglés) que guarda información muy importante acerca de cómo están las particiones del disco duro (Algo como: De aquí pa' allá está C: y arranca una cosa llamada Windows). El MBR es cargado por la BIOS, lo que sucede apenas oprimes el botón de encendido de tu PC y reconoce el disco como uno con capacidad de iniciar el computador (Boot) para luego pasarle el control al sistema operativo.

En algún  momento de la historia sucedió que algunos virus lograban sobrescribir con datos erróneos el MBR del disco duro causando que, al siguiente reinicio el computador simplemente no iniciara lanzando un bello error de "Daño al disco duro" (Así lo interpretaban los usuarios) o en el peor de los casos que ni siquiera reconociera el disco duro... Como si no estuviera conectado.

Técnicamente, el disco duro físicamente no está dañado... Sus platos y sus cabezales no salieron volando en pedazos y tu información sigue estando ahí, solo que una parte de su configuración salió averiada y no es posible recuperarlo sino con métodos especializados...

Aunque este problema del MBR hace ya años no es nada común (¡Gracias Microsoft por notar que el sistema operativo no debería permitir acceder a un programa al MBR! ¬¬)... Es posible que problemas de este tipo sucedan con otro tipo de hardware más moderno que incluye la capacidad de configurarse a través de software embebido dentro de sí mismo... Lo llamaremos Firmware y existe en casi todos los dispositivos electrónicos de la actualidad.

Así que ¿Verdad o mito? ¿Puede dañar un virus / malware físicamente el hardware? Diré con seguridad que es mentira.

Los sistemas operativos modernos abstraen muy bien y limitan adecuadamente el acceso a los recursos de hardware. Sin embargo, dejo la salvedad que en algunos casos arruinar el firmware es la forma más moderna de hacer que "Que tu dispositivo explote" dada la dificultad que implica repararlo para la mayoría.

martes, 7 de febrero de 2012

Robyn Bergeron: Por primera vez una mujer al frente de Proyecto Fedora

Jared Smith ha dimitido de su posición como FPL (Fedora Project Leader) sin dar mayores detalles sobre su decisión... Pero sí dejando claro que un proyecto de código abierto necesita renovarse continuamente a través de personas e ideas nuevas.

Es así como Proyecto Fedora tiene ya hoy un nuevo líder y por primera vez llevará las riendas de la distribución una mujer ¡Y vaya que ha hecho méritos! Se trata de Robyn Bergeron, una talentosa dama que venía desempeñándose en Red Hat como Fedora Program Manager, posición que a hoy le a permitido conocer muy bien la comunidad, los objetivos y futuro de la distro.

 Robyn Bergeron: Nueva líder de proyecto Fedora.
No quiero crear ninguna clase de sensacionalismo respecto a que el cargo lo ocupe una mujer o no (Sobra decir que es reprochable cualquier tipo de discriminación a la mujer); Solo diré que particularmente en la tecnología y especialmente ahora en el mundo del código abierto siempre es genial ver rostros femeninos comprometidos y dando lo mejor de sí.

Hay que recordar que el cargo de Fedora Project Leader no es elegido por la comunidad sino que es asignado por Red Hat, ya que se trata de un puesto remunerado en dicha compañía y como su nombre lo indica, implica entre otras labores estar al frente de Fedora Board: Nada más y nada manos que dar el rumbo y la forma a la distribución.

Desde Piensa en Binario ¡Buen viento y buena mar para Robyn en este gran reto que tiene por delante! Pero también es nuestro deber como comunidad participar y apoyarla tanto como sea posible, al final, ese el espíritu del Software Libre.

jueves, 2 de febrero de 2012

Teamviewer 7 ¡Disponible para Linux!

Uno de los buenos programas para trabajar remotamente y realizar videoconferencias a través de la red de forma fácil y rápida es Teamviewer y su equipo, nos ha presentado la versión 7 del software disponible para los sistemas operativos Linux.


Entre las novedades tenemos:
  • Grandes mejoras en el rendimiento, especialmente en las conexiones directas y las transferencias de archivos debido a la optimización en los paquetes de datos y las opciones por omisión en la configuración de la pantalla.
  • Ahora es posible tomar "Pantallazos" en cualquier momento, incluso ahora los pantallazos de los escritorios remotos se realizan más rápido.
  • Reuniones instantáneas: Con solo un clic ya tienes un reunión lista, incluso sino han ingresado participantes, es una función muy útil para preparar los recursos y la agenda de tu compromiso.
  • Es posible invitar hasta 25 participantes en una reunión.
  • Los participantes pueden unirse a tu reunión desde dispositivos móviles como un iPhone, iPad o Android.
  • Puedes asignar varios roles en la reunión, organizador de la reunión, participante y expositor. Este último también podrá, por ejemplo, compartir su pantalla en el momento de su intervención.
  • Correcciones de bugs y otras mejoras.
Para instalar Teamviewer en Fedora consulta este post:
http://www.piensaenbinario.com/2011/10/escritorio-remoto-con-teamviewer.html

La lista de cambios completos:
http://www.teamviewer.com/en/download/changelog.aspx

Descarga Teamviewer para Windows y Mac en:
http://www.teamviewer.com/en/download/index.aspx

miércoles, 1 de febrero de 2012

Instalar Java 7 - JDK (Java Development Kit) en Fedora

Nota: Artículo actualizado a Fedora 16
Fedora viene por defecto con OpenJDK, la versión abierta de Java que es suficiente para la mayoría de las tareas. Sin embargo, si eres desarrollador Java quizás le convenga instalar la versión oficial de Sun.


Ten en cuenta que si no eres desarrollador y sólo deseas disfrutar de las bondades de Java, necesitas es el JRE (Java Runtime Environment), para ello consulta éste post.

Para empezar vamos a descargar el software de Java, por favor consulta: http://java.sun.com/javase/downloads/index.jsp

Nota: Hasta el día de éste post la última versión es la 7 update 02, recomiendo al lector visitar la página de Sun para obtener la última versión. Modifica los comandos de acuerdo a la versión descargada.
Nota: Descargamos el instalador con extensión .tar.gz y NO el RPM.
Una vez hemos descargado la versión de Java adecuada procedemos a instalar algunas dependencias necesarias (Requiere contraseña de root):

$ su -c 'yum install compat-libstdc++-33 compat-libstdc++-296'

Una vez instaladas creamos el enlace de las nuevas librerías digitando en consola (Requiere contraseña de root):

$ su -c '/sbin/ldconfig'

Ahora procedemos a instalar Java. Asumiendo que el instalador quedó en la carpeta Descargas ejecutamos en consola (Requiere contraseña de root) (una instrucción por línea):

$ su -
# cd Descargas/
# tar zxvf jdk-7u02-linux-i586.tar.gz
# mv jdk1.7.0_02 /opt

Una vez hecho esto es momento de hacer nuestra instalación la predeterminada en el sistema; primero creamos el archivo java.sh (puedes reemplazar nano por tu editor de texto favorito, como por ejemplo gedit o kwrite):
$ su -c 'yum -y install nano'
$ su -c 'nano /etc/profile.d/java.sh'

Dicho archivo debe contener las siguientes líneas:

export JAVA_HOME=/opt/jdk1.7.0_02
export PATH=$JAVA_HOME/bin:$PATH

Guarda y cierra el editor de texto (Ctrl+O y Ctrl+X en nano), a continuación digita en una terminal (como root):

# source /etc/profile.d/java.sh
# alternatives --config java

Verás algo en pantalla como:

There is 1 programs which provide 'java'.
Selection     Command
-----------------------------------------------
*+ 1         /usr/lib/jvm/jre-1.6.0-openjdk/bin/java
     
Enter to keep the current selection[+], or type selection number:

Nos muestra la lista de programas que proveen la funcionalidad de Java. En este caso sólo hay uno así que agregaremos el número 2. Si el comando no muestra nada, no te preocupes, significa que no hay una instalación de Java y para eso estamos aquí. Con el siguiente comando agrega tu instalación:



Nota: Si no tienes ningún programa que provea Java reemplaza el número 2 por un 1. Si hubieran 2 programas ajusta el comando reemplazando el 2 del final por un 3 y así sucesivamente.
Con éste comando se debió haber agregado nuestra versión de Java, así que una vez más ejecuta:

$ alternatives --config java

Ahora deberías ver algo como:

There are 2 programs which provide 'java'.
Selection     Command
-----------------------------------------------
*+ 1         /usr/lib/jvm/jre-1.6.0-openjdk/bin/java
   2         /opt/jdk1.7.0_02/bin/java
Enter to keep the current selection[+], or type selection number:

Ingrese el número de la opción que ingresamos (por ejemplo 2). Si todo salió bien digita en consola:

$ java -version

Debes ver algo como:

java version "1.7.0_02"
Java(TM) SE Runtime Environment (build 1.7.0_02-b13)
Java HotSpot(TM) Client VM (build 22.0-b10, mixed mode, sharing)

Agregando el plugin de Java a Firefox

Finalmente agregamos el plugin a Firefox digitando en una terminal (Ejecuta como root):



Una vez hecho ésto reinicia el navegador Firefox y visita el sitio de Sun para verificar la instalación http://www.java.com/es/download/installed.jsp

Y listo, a programar y a disfrutar de las bondades de Java!