4 grandes mitos sobre Linux que la gente necesita dejar de creer

Linux lleva consigo la carga de los estigmas que ha acumulado con los años, y aunque ha hecho todo lo posible por borrar la mala imagen que tienen muchos de las distribuciones, aún la gente sigue creyendo cosas que dejaron de ser ciertas hace rato. Si quieres saber por qué Linux ya no es lo que era, no es lo que era, no es lo que era, sigue leyendo y entérate de por qué ahora es incluso mejor.

65242980_6a359a1a57_oMuchas veces cuando se habla de sistema operativos pareciese que se está discutiendo una religión, en la que el rebaño de cada uno ve con ojos de hereje a todos los demás. Mi dios es el verdadero y único camino. Puede que suene a exageración, pero si alguna vez te has visto envuelto en un debate sobre si es mejor un iPhone que un Android, o una Mac en lugar de una PC, o el Software Libre en lugar del privativo, de seguro notas las similitudes de inmediato.

“Expande tus horizontes y mira un poquito más allá de tu propia nariz.”

Es normal que muchos sintamos cierta pasión por las cosas que nos gustan, y que estemos dispuestos a defenderlas como lo mejor, pero la delgada linea que nos separa del fanatismo y le fe ciega es muy delgada, y a mucha gente le cuesta ver las cosas desde otro punto de vista, o siquiera darle una oportunidad a algo diferente. No se trata de traicionar tus creencias, se trata de expandir tus horizontes y ver un poquito más allá de tu propia nariz. Además, en la variedad está el gusto.

He usado Linux por muchos años, quizás una década, eso es más o menos el 40% de mi vida, y aunque pasé por una etapa muy estúpida en la que recurría a hablar mal de Windows para intentar tristemente promover el Software Libre con mis conocidos, ya he madurado lo suficiente como para entender lo falaz y lamentable que es esa actitud. Y, de hecho, sigo usando Windows felizmente. No necesitas echar tierra a los demás cuando lo que promueve tiene bondades, eso es muy de políticos, y solo deja una mala impresión. Es más fácil exponer tu punto si no estás intentando desesperadamente ganar una pelea.

Linux es difícil de usar

Esto es cierto, sumamente cierto, Linux es difícil de usar, pero solo porque para empezar a usar Linux por primera vez tienes que dejar el miedo al cambio de lado, y dejar el miedo a un lado es muy, muy difícil. De resto, instalar una distribución y comenzar a usarla es pan comido, ya no estamos en 1998. Hay tantas versiones amigables por ahí que cualquier niño, tu mama, o tu abuelo podrían aprender a usarlas en unos minutos. No tienen ni que abrir una terminal nunca en su vida, la tan temida y malentendida terminal.

“En Linux todo es muy parecido a lo que estás acostumbrado, la brecha se ha acortado mucho.”

Esto es un hecho, lo he probado con mucha gente, usuarios que entienden de informática lo que yo de física cuántica, personas mayores que sabemos tienen más dificultad para llevárselas con la tecnología, niños, cualquiera que haya usado un ordenador antes. En Linux todo es muy parecido a lo que están acostumbrados, la brecha se ha acortado mucho, y de hecho más de uno lo siente más fácil y divertido de lo que esperaban. El que más dificultades presenta es aquel usuario malcriado y caprichoso que todos conocemos, ese que hace berrinche porque le cambiaron un botón de sitio, esos que crean un grupo de Facebook para quejarse del nuevo diseño todos los años.

Linux no va a funcionar en mi PC

mitos-sobre-linux-portada

Esto es súper cierto, Linux funciona mal en muchos ordenadores. Pero, ¿saben ustedes cuantos modelos de ordenadores hay en el mundo?. Linux tiene un problema, los fabricantes de hardware, esos que construyen y venden las piezas de las PCs, no ofrecen soporte para Linux la enorme mayoría del tiempo, por lo que Linux depende totalmente de la comunidad para desarrollar controladores para los millones de componentes y las diferentes marcas de todo el planeta tierra. Y a pesar de esa limitación, en la mayoría de las PCs puedes ejecutar una distro Linux. ¿No es eso sorprendente y digno de una ovación?.

Saben que es más sorprendente aún, que cuando sistemas operativos como Windows y OS X dejan a un lado el hardware viejo, eliminando el soporte porque ya no les produce ninguna ganancia a sus respectivas empresas; en Linux la historia es todo lo contrario. Mientras más vieja es una máquina, más probabilidades hay de que funcione bien con una distro Linux, de hecho hay muchas que están orientadas a ordenadores de pocos recursos, PCs viejas que están listas para el basurero, pueden conseguir una segunda oportunidad gracias a Linux.

En cuanto al hardware moderno, el soporte cada vez es mejor, y de hecho fabricantes como NVIDIA y AMD han empezado a mejorar su compatibilidad principalmente por la revolución de Steam y sus juegos. Lo que me lleva al siguiente punto.

En Linux no puedes jugar nada

Hey, esto era 99% cierto hace 2 o 3 años. Jugar en Linux siempre fue una experiencia terrible, y la razón de que muchos entusiastas del SL y de los videojuegos aun usaran Windows para poder jugar. Pero, hace un par de años dios volvió a la tierra en la figura de Gabe Newell, y Steam llegó a Linux. Steam es la plataforma de videojuegos para PC más grande del mundo, cuenta con miles de miles de juegos y millones de usuarios, y unas ofertas que dan gastritis.

Valve planea su propio sistema operativo basado en Linux para dar vida a las Steam Machines, su propio híbrido entre PC y consola de sobremesa para jugones. Una iniciativa que promete revolucionar el mercado, y sí, de la mano de Linux. ¿Quien lo diría?. Aunque el panorama aún luce a años luz de lo que representa la experiencia de juego en Windows, ya Linux cuenta con más de 500 títulos disponibles, muchos son triple A, como The Witcher, la saga de Metro, Left 4 Dead, etc. Y estamos seguros de que solo vendrán más y más.

Cómo es gratis, Linux no tiene soporte

mitos-sobre-linux1

Esto es cierto, yo nunca he pagado por una distribución Linux, y en mi vida he llamado a soporte técnico… ya va, un momento. El Software Libre no es sinónimo de “software gratis”, de hecho hay empresas enormes como Red Hat que utilizan Linux para ofrecer soluciones empresariales, sí, esta gente cobra por su trabajo, son sumamente respetados y ofrecen calidad.

Android es software libre, y adivinen que empresa hace dinero con Android, no es solo Google, sino vean a Samsumg. Canonical, los responsables de Ubuntu, si bien no cobran por Ubuntu, tienen muchos otros servicios basados en el open source. Y así muchas más. Muchos de estos proyectos ofrecen soporte especial para los usuarios a través de portales especiales, wikis, foros, comunidades llenas de gente que busca ayuda y gente que busca ofrecerla.

Linux tiene una comunidad enorme que te ayuda a conseguir la solución a tu problema solo por amor al arte. Es de hecho una de las maneras en las que he terminado conociendo gente genial por muchos años, y haciendo amigos.

vito en: bitelia

Diferencias entre Software Libre y Open Source

No deben ser pocas las veces en has utilizado estos términos sin conocer bien que son. A pesar de que están estrechamente relacionados, los movimientos de Software Libre y Open Source tienen sutiles diferencias y es importante conocerlas.

Diferencias entre Software Libre y Open Source

A pesar de que son términos relacionados y solemos usarlos indistintamente, Software Libre y Open Source no son exactamente lo mismo, al menos no según la FSF, de las iniciales de Free Software Foundation, organización creada por Richard Stallman en el año 1985 con el propósito de difundir este movimiento.

A pesar de que están intrínsecamente relacionados, hay algunas diferencias puntuales. Veamos cuales son.

¿Qué es Software Libre?

El Software Libre o Free Software en inglés, es un software que respeta las cuatro libertades que la FSF establece:

  • La libertad de usar el programa, con cualquier propósito.
  • La libertad de estudiar cómo funciona el programa y modificarlo, adaptándolo a tus necesidades.
  • La libertad de distribuir copias del programa, con lo cual puedes ayudar a tu prójimo.
  • La libertad de mejorar el programa y hacer públicas esas mejoras a los demás, de modo que toda la comunidad se beneficie.

En otras palabras, es aquel que respeta la libertad de todos los usuarios que adquirieron el producto para ser usado, copiado, estudiado, modificado, y redistribuido libremente de varias formas. Es muy importante aclarar que el Software Libre establece muchas libertades pero no es necesariamente gratuito. Con esto quiero decir que conservando su carácter libre (respetando las libertades), puede ser distribuido de manera comercial. Esto garantizando sus derechos de modificación y redistribución.
Software Libre y Open Source
¿Qué es Open Source?

Open Source o código abierto, es la expresión con la que se conoce al software distribuido y desarrollado libremente. Es un movimiento más pragmático, se enfoca más en los beneficios prácticos como acceso al código fuente que en aspectos éticos o de libertad que son tan relevantes en el Software Libre.

Su premisa es que al compartir el código, el programa resultante tiende a ser de calidad superior al software propietario, es una visión técnica. Obviamente para lograr calidad técnica lo ideal es compartir el código, pero no estás obligado a hacerlo.

Diferencias

Como podemos ver, el movimiento del Software Libre hace hincapié en cuestiones éticas y morales relacionadas con el software, viendo el aspecto técnico como secundario, a diferencia
del movimiento Open Source que lo establece como prioritario, siendo esta su diferencia más grande.

Otra de sus diferencias, quizá la más importante para lo que al ámbito comercial concierne, es que con una aplicación desarrollada bajo los estándares del Software Libre puedes obtener remuneración por conceptos de desarrollo, soporte y puesta a punto siempre y cuando entregues los fuentes, a diferencia del movimiento Open Source que no te obliga a hacerlo. Todos los productos desarrollados en Software Libre así como sus derivados siempre deben ser libres, a diferencia de Open Source.

Como podemos ver, básicamente el movimiento de Software Libre tiene diferencias de índole filosóficas con el Open Source, sin embargo, ambos han permitido el desarrollo de software de gran calidad y con muchísimas mas libertades de las que el software privativo otorgaría jamás.

Fuente: bitelia

Editores de texto basados en terminal más usados en Linux

Editores de texto basados en terminal más usados en Linux

Los editores de texto son una parte fundamental para el manejo de nuestro sistema. Ciertamente hay un montón de aplicaciones que permiten hacerlo desde la terminal, pero estas tres son las más populares.

A pesar de que para muchos es más simple editar sus textos desde utilidades gráficas como Gedit, la capacidad de poder hacerlo desde la terminal es imbatible, sobre todo en esos casos donde tenemos problemas con la interfaz gráfica o cuando estamos trabajando sobre un servidor remoto.

Existen muchas alternativas para este fin, pero son principalmente las tres que mencionaremos a continuación las más populares.

Nano

Ioannis Kedros  cc

Nano es un editor de texto basado en Curses, una biblioteca para el control de terminales sobre sistemas Unix. Es muy similar a Pico, un editor minimalista basado en terminal. A diferencia de Pico, Nano permite el resaltado de sintaxis y en términos generales es muy sencillo de usar.

Para editar un archivo con nano, solo debemos invocarlo en la terminal junto con el texto que deseamos editar. Cuando editamos un archivo con nano se despliega su interfaz junto con el contenido del archivo. Las opciones de edición incluyen moverte entre paginas si el texto es muy largo, buscar, copiar, cortar y guardar los cambios, entre otras. Para seleccionar una de estas opciones debemos presionar la tecla ctrl más la letra de la opción deseada.

Vim

jasonwryan

Vim es un editor de texto muy completo. Es una versión mejorada de Vi, un editor de la década de los 70’s que se encuentra en casi todo sistema de tipo Unix. Vim incluso es utilizado por programadores y administradores de sistema, su gran variedad de opciones lo hace perfecto para este fin. Es avanzado y versátil, incluso permite la configuración o instalación de temas personalizados que resaltan la sintaxis de una manera específica.

Vim te permite hacer tantas cosas que sería casi imposible poder asignarle un atajo de teclado único a cada una de ellas. Es por esto que Vim presenta varios modos de operación, para que puedas realizar varias operaciones con el mismo atajo. Entre los modos de operación mas útiles están:

  • Comando: este es el modo inicial. Permite ejecutar instrucciones para trabajar el formato del texto borrando lineas, por ejemplo. No permite escritura.
  • Inserción: se puede cambiar del modo comando al modo inserción pulsando la tecla i. Este modo es para escribir, borrar y editar texto.
  • Visual: para seleccionar bloques de texto o realizar operaciones por bloques. Una vez se tiene el texto marcado se pueden usar órdenes del modo comando para manipularlo.
  • Linea de ordenes: en este modo se pueden realizar búsquedas. Para acceder se pulsa la tecla dos puntos :. Las búsquedas se pueden realizar hacia adelante y hacia atrás.

También dispone de modos de Selección y Ex. Sin embargo, Vim no es tan fácil de aprender, pero una vez que lo dominas el esfuerzo se paga solo. Vim también tiene plugins para búsqueda difusa de archivos, explorar directorios y mejorar la interfaz de usuario, entre otros. Con un poco de conocimiento en Python o en el lenguaje de scripting de Vim, puedes programar tus propios plugins.

Emacs

Kelsin5

Emacs es un complejo editor de texto siendo GNU Emacs del Proyecto GNU, su implementación mas popular. Al igual que Vim, es muy usado por usuarios avanzados y programadores. Dispone de una gran variedad de características y funciones. Entre otras opciones, permite personalizar el resaltado de sintaxis, usando distintos tipos de letra o colores para mostrar las palabras reservadas, por ejemplo.

Gran parte del poder de Emacs viene de Emacs Lisp, una poderosa extensión de lenguaje que permite manejar múltiples tareas. Emacs tiene varios modos de edición llamados major modes. Hay major modes para edición de archivos de texto ordinario, código fuente para diversos lenguajes de programación, documentos HTML, y LaTeX, entre otros. Estos a su vez permiten la activación de varios minor modes, que contienen características relacionadas a un major mode, haciéndolo aun mas robusto. Los major modes disponen también de comandos especiales de edición para un tipo concreto de texto.

Emacs permite a sus usuarios extender o personalizar aún más sus funcionalidades, pudiendo estos escribir código en Emacs Lisp. Su curva de aprendizaje es elevada, pero una vez dominado se pueden lograr grandes cosas.

Los usuarios de Emacs y Vim suelen ser muy apasionados acerca de cual es el mejor editor pero la idea no es armar una guerra campal, sino que cuentes con excelentes opciones a la hora de editar tus documentos y decidas cual se adapta más a tus necesidades. ¿Usas otra aplicación? Cuéntanos cuál es tu favorita y por qué.

via: bitelia

5 Razones para migrar de Windows XP a Linux

El final se acerca. Si has estado al pendiente de la actualidad tecnológica, ya debes saber que el soporte oficial para el ya anciano Windows XP se termina el 8 de Abril.

ddsnet

Es impresionante como un sistema operativo que tiene más de 12 años de creado aún mantenga una cuota de mercado tan elevada. Microsoft ya ha lanzado 3 versiones (y media) diferentes de Windows posteriores a XP, y apenas hace poco Windows 7 superó a XP en los ordenadores personales.Windows XP es usado hasta la fecha en todos lados, en millones de ordenadores, incluyendo sistemas criticos, lo que significa un verdadero problema de seguridad para todas las empresas e individuos que no se molestaron en prever actualizar a un sistema moderno en más de una década. Microsoft lo sabe y por eso les tira un último jamón ofreciendo soporte antimalware para Windows XP hasta 2015.Esta no es ni de lejos una razón para que esperes a 2015 para actualizar tu sistema, Microsoft quiere que te mudes a Windows 8 (aunque la mayoría va a apostar seguro por Windows 7). Pero esas no son las únicas alternativas, en Bitelia ya te contamos que podías hacer para enfrentar el final de XP, una de las opciones es migrar a Linux, y como nunca es mal momento para promover el software libre, ahora de damos 5 razones por las cuales esta es una de las mejores opciones.

1. Es gratis

Windows no es gratis, no importa cuantos Windows uE piratas te bajaste en tu vida, sigue siendo ilegal instalar el software de Microsoft sin pagar una licencia de uso, porque eso es lo que compras, una licencia que te permite usar el sistema operativo, un permisito. En sus ciento setenta y cinco mil posibles versiones, Windows 7 puede costar desde poco más de 100$ hasta más de 300$. Windows 8 es más barato, va desde una versión para estudiantes por 69.99$, hasta las estándar por 119.99$. Aunque Microsoft está pensando en bajar más los precios para competir con iniciativas como las de Apple de ofrecer OS X de manera gratuita.El precio de cualquier distro Linux: 0. Un ahorro del 100%. Para todo lo demás existe MasterCard. Si bien, no tiene nada de malo pagar por buen software, y la verdad opino que Windows 7 y 8 son buenos, no todo el mundo tiene cien dolares a la mano para pagar por una licencia, cien dolares que puedes gastar en hacer un upgrade de tu hardware.

2. Es fácil

En la prehistoria, o como se le conoce por tu barrio: 2004; se quedaron los días de instalaciones de Linux complicadas, de tener que configurar el driver X, de montar tu mismo un entorno gráfico, y demás cosas que espantan en 5 segundos a un “non-techie”. La mayoría de las distros actuales, utilizandiscos de instalación tan automatizados y amigables que hay que ser un analfabeta tecnológico para no entenderlos.Además casi todas tienen un Live CD que te deja probar el sistema antes de decidirte a instalarlo, y si te decides puedes seguir jugando con el, mientras se instala, una maravilla que te encuentras en Windows jamás. “¿Desea instalar Ubuntu junto a Windows XP o borrar todo?”, esa es la pregunta más complicada que te vas a encontrar.wellsie82

3. Es seguro

Quedarte en Windows XP pensando que eso de el soporte no te afecta, que ya tu tienes instalado todo lo que necesitas y que los “hackers” de la Internet no tendrían ningún interés en entrar a tu ordenador,es estúpido. Pronto verás tu mundo derrumbarse, poco a poco el software que usas se quedará también sin soporte, el mismo Google dijo que dejara de ofrecer actualizaciones de Chrome para XP poco después de la muerte del sistema.Te vas a encontrar usando un sistema completamente vulnerable a ataques, ten por seguro que la gente mala se va a aprovechar de esto, y a sabiendas de que mucha gente ni está pendiente de actualizar su sistema, van a atacar con más fuerzas que nunca, y toda la información que tienes en tu ordenador va a estar a merced del ejercito de malware que viene en camino. Winter is comming, y tuestás sentado sobre un cadáver digital, mejor que no hagas transferencias bancarias si vas a seguir casado con XP, o de cajón desconecta el cable de red para siempre.Linux siempre ha sido más seguro, y las amenazas son una minúscula fracción de las que atacan a Windows. Tienes el soporte de una comunidad y desarrollo abiertos que por años han probado ser una roca, y por eso las grandes supercomputadoras del mundo y los servidores, usan Linux en su enorme mayoría.

4. Es ligero

Las probabilidades son de que si a estás alturas aún usas Windows XP, tengas un ordenador viejo o una máquina con pocos recursos. En esos casos actualizar a algo como Windows 8 no es ni siquiera una opción, si bien los requerimientos han bajado, y tanto Windows 7 como 8 no son la bestia come recursos apocalíptica que era Windows Vista, si tienes un procesador de un solo nucleo con 1GB de Ram, nunca vas a obtener un gran rendimiento con estos sistema.Distribuciones de Linux hay para tirar al techo, y muchas están diseñadas específicamente paraordenadores de pocos recursos, con entornos ligeros y rápidos, aplicaciones que consumen poca memoria y que funcionan perfectamente como alternativas al software que usabas a diario.

5. Es algo nuevo

Hey, tal vez un lavado de cara es lo que le hacia falta a tu ordenador. Si nunca has usado Linux te vas a encontrar con una nueva experiencia tecnológica que puede resultarte más que agradable, en especial si pasas mucho tiempo frente al ordenador y te fatigas. A todos nos gustan las cosas nuevas y brillantes, elige una distro de Linux, buena y bonita y disfruta de una nueva aventura con tu PC.Linux ya no es esa cosa “solo para nerds” de antes, ya hasta tenemos juegos y drivers de vídeo que no son una basura rompe gónadas. Hay distribuciones amigables que puedes usar como tu primer Linux y enamorarte por completo.Todas estás razones ni siquiera incluyen nada sobre el movimiento filosófico de Stallman, de la libertad del usuario que implica usar software de código abierto, o de los gatitos que alguien adopta cada vez que se instala un Linux. Solo son razones prácticas que pueden hacer que entres por primera vez a un mundo nuevo lleno de posibilidades, y si te gusta te quedes.

visto en:  bitelia

La Estación Espacial Internacional migra a GNU/Linux para evitar los virus

Los astronautas de la Estación Espacial Internacional descubrían recientemente que un virus informático se había colado en la estación. Concretamente, en la red local donde trabajan y están conectados sus portátiles, algunos de los cuales fueron infectados. Quien haya visto la película ‘Gravity’ puede imaginar su angustia pues, si en tierra firme un virus ya asusta, los nervios se multiplican a 400 km del suelo y dependiendo la supervivencia del buen funcionamiento de los ordenadores.

La red informática de la Estación Internacional está separada de Internet, así que el virus no pudo venir del exterior sino que entró por algún dispositivo, posiblemente un USB, que trajo alguien de la Tierra. Eugene Kaspersky, creador de la empresa de antivirus que lleva su nombre, aseguró en una charla, la semana pasada en Australia, que “los científicos de vez en cuando llegan a la estación espacial con USBs infectados, no bromeo. Hablé con algunos chicos rusos de la estación y me dijeron que cada cierto tiempo tienen una epidemia vírica“.

El primer virus conocido que infectó la Estación Espacial Internacional, en 2008, fue W32.Gammima.AG worm, un virus poco peligroso dirigido a usuarios de juegos en línea, a los que robaba nombres de usuario y contraseñas. No han trascendido el nombre ni la peligrosidad de este último, descubierto a finales de la pasada primavera según Kaspersky, pero posiblemente sea el último de verdad: la Estación Espacial Internacional está migrando su red y ordenadores de los investigadores (una docena de portátiles) alsistema operativo libre GNU/Linux.

Ahora mismo los astronautas están recibiendo lecciones sobrecómo trabajar y crear programas para Linux. De esta forma se evitarán las infecciones cada dos por tres, debidas en buena parte a que los ordenadores de la estación usaban el sistema operativo Windows, el preferido por los diseminadores de código malicioso. No es que no existan virus para Linux, pero el porcentaje es infinitamente menor. A partir de ahora, si se descubre un nuevo virus en la Estación Espacial será muy posiblemente porque alguien lo haya creado y “colado” intencionadamente, no a causa del despiste de un científico.

Kaspersky hizo estas revelaciones en el transcurso de una charla en Camberra sobre cibercrimen, espionaje y seguridad informática de los sistemas críticos, llamados SCADA (Supervisión, Control y Adquisición de Datos), que puede referirse tanto a grandes empresas como infraestructuras -ferrocarriles, centrales eléctricas, nucleares- y otros sistemas críticos.

Kaspersky puso como principal ejemplo el gusano informático Stuxnet, “un prototipo funcional y aterrador de un arma cibernética que conducirá a la creación de una nueva carrera armamentística mundial”. Según “un amigo de un amigo” de Kaspersky, Stuxnet se habría detectado recientemente en una planta nuclear rusa. Se cree que Israel creó este virus para infiltrarse en plantas nucleares de Irán y destruir sus sistemas informáticos. Saltó a la luz pública en 2010 y desde entonces ha sido detectado en diversas centrales nucleares, no sólo iraníes.

Al hablar Kaspersky de Stuxnet y la Estación Internacional en la misma charla, algunos periodistas creyeron que el virus de la estación había sido Stuxnet y cundió la alarma, que fue rápidamente sofocada con una aclaración de Kaspersky.

El romanticismo ya no existe

Hoy en día los virus informáticos los crean hackers mercenarios vendidos al “lado oscuro” o listos que compran un “kit” para hacer virus como churros y así robar el dinero o el ancho de banda a la gente. Pero hace años, “cuando los hackers eran hackers y escribían sus propios “drivers””, frase mítica de Linus Torvalds (autor del sistema operativo Linux), los virus eran obra de programadores excelsos cuyo interés estaba más en la investigación y la vida artificial que en molestar, robar o aprovecharse de alguien.

En aquellos tiempos, invierno de 1996, un escritor de virus español, Mr. Sandman, co-fundador del grupo 29A, que llegó a ser considerado el mejor del mundo, tuvo una genial idea: estaba a punto de lanzarse la sonda Huygens, que debía aterrizar en Titán, la luna de Saturno, en octubre de 1997 y llevaba en su interior un Compact Disc. La Agencia Espacial Europea había abierto una sitio web donde quien quisiera podía dejar su nombre y un pequeño texto para incluir en el CD. Mr. Sandman explicó su idea en el primer número de la revista 29A: “Como el espacio para escribir este texto es suficientemente grande como para contener un virus, he decidido mandar uno, por tanto será el primer virus del mundo que llega a otro planeta”.

No se sabe si finalmente Mr. Sandman mandó su virus. Pero muy posiblemente sus corazón palpitaría también con la idea de que una creación suya llegase a la Estación Espacial Internacional. Por desgracia, los viejos escritores de virus, científicos más que criminales, exentos de maldad e interés crematístico, están casi o totalmente extinguidos. El romanticismo ya no existe en el mundo de los virus.

Fuente: rebelion

Ubuntu y Canonical descubren lo que pasa cuando ignoras a la comunidad del software libre

ubuntu-edge-3

Es posible que desde fuera el mundo del software libre parezca un mundo muy bonito, en el que personas con intereses comunes se juntan las manos y programan grandes creaciones con música góspel de fondo. La realidad es muy diferente, ya que es en la comunidad de código libre donde se pueden encontrar algunas de las peleas mas brutales que ha visto la red en su existencia. La mayoría de estas riñas se producen por la diferencia de opinión sobre hacia dónde debería ir el proyecto en el futuro. ¿Adoptamos KDE o Gnome? ¿Desarrollamos nuestro instalador o usamos uno y lo modificamos? ¿Cambiamos el servidor gráfico a riesgo de hacerlo incompatible con los drivers?

Si hay un proyecto que ha entrado en polémica estos últimos años, ese ha sido la distribución Linux Ubuntu. Montada en el gran éxito que aún disfruta, Canonical (la compañía detrás de esta distribución) ha tomado desde su nacimiento decisiones muy polémicas que le han ganado la enemistad de una parte importante de los desarrolladores de código libre y de otros proyectos. Desde la decisión de facilitar la instalación de códecs y programas privativos hasta la apuesta por su propio entorno de escritorio, Unity, todas estas decisiones se han ido aceptando con el tiempo por una sencilla razón: no afectan demasiado al resto de distribuciones. Si Canonical quiere gastar su dinero en desarrollar un escritorio propio en vez de usar los ya disponibles, está en todo su derecho de hacerlo.

ubuntu13-04

El problema llega cuando Canonical se convierte en la compañía relacionada con Linux mas importante del escritorio, y sus decisiones empiezan a afectar a otros proyectos. Es entonces cuando queda claro que la compañía no tiene ningún interés en seguir el esquema de darle poder a la comunidad que otras distribuciones han seguido. Siempre se ha dicho que Canonical quiere ser la Apple de Linux, en el sentido de ofrecer una experiencia para todos los usuarios, pero este símil está llegando también a otros aspectos, como el síndrome “Not invented here” (“no ha sido inventado aquí”, referido a una compañía que rechaza estándares y código ajeno).

Así, cuando Canonical anunció al mundo que iba a crear su propio servidor gráfico, Mir, que no sería compatible con el que el resto de la comunidad ya estaba desarrollando, Wayland, nadie se sorprendió. El resultado es que los fabricantes de tarjetas gráficas tendrían que elegir a qué servidor dar soporte, ya que darlo a los dos sería posible pero demasiado costoso. Y nadie duda de que, gracias a su éxito y a sus contactos con los fabricantes, la opción ganadora será la de Ubuntu. De esta manera, Canonical ha hecho mucho daño a un proyecto con mucha gente detrás como Wayland, y a juzgar por las dudosas razones que dio en su momento (muchas de ellas desmontadas por la gente de Wayland), todo apunta a que Mir solo existe porque Canonical quería hacer las cosas a su manera.

La consecuencia directa de todos estos actos es que Canonical está sola en el mundo Linux. Los creadores prefieren trabajar en proyectos donde su voz se tenga en cuenta, y cada vez va quedando mas claro que Ubuntu no es ese proyecto. Aunque puede que Canonical esté descubriendo ahora lo que eso conlleva, sobre todo ahora que estos problemas van mas allá de la comunidad libre, ya que Intel ha anunciado que no ofrecerá soporte oficial a Mir.

ubuntu-moviles-02

A esto se le suma el anuncio de que Ubuntu 13.10, previsto para este mes, finalmente no contará con Mir como estaba planeado. La compañía cita problemas con drivers para retrasar el lanzamiento de su servidor gráfico, algo que podría haberse solucionado si hubiese contado no solo con el apoyo de los fabricantes sino también con el de la comunidad. Por el momento, el estreno de Mir se va para 14.04, que debería ser una versión estable y por tanto necesita mas trabajo. No solo eso, sino que Ubuntu Touch también está consumiendo una buena parte de su atención.

Al depender solo de sus propios trabajadores, Canonical se ha creado su propia burbuja que no podrá explotar cuando mas le haga falta: cuando necesite a la comunidad para poder cumplir sus proyectos.

fuente: rebelion.org

 

La lucrativa paradoja de Red Hat y el negocio del Software Libre

Es gratis, pero da dinero

Desde que en 1983 Richard Stallman lanzara el proyecto GNU, el software libre ha experimentado numerosos cambios, tanto de concepto como en la manera de distribuirse y llegar al usuario final.

Pese a la gran cantidad de licencias diferentes que existen y que se consideran libres (GPL, BSD o Apache) , hay un asunto que aún confunde a aquellos que no conocen el tema en profundidad: el concepto de gratuidad. El software libre no tiene por qué ser gratis, pero siempre lo es.

Richard Stallman, creador del movimiento GNU y la licencia GPL (Foto: Webmink, Flickr)

Richard Stallman, creador del movimiento GNU y la licencia GPL (Foto: Webmink, Flickr)

Para entender esta contradicción es necesario explicar cómo funciona el sistema de licencias. Supongamos que un programador obtiene el código fuente de una aplicación de internet bajo licencia GPL y lo modifica. El programa resultante es una versión mejorada del original y el programador decide que quiere sacar algún dinero vendiendo su trabajo,con el fin de compensar su esfuerzo. No solo es perfectamente legal, sino además ético desde el punto de vista del software libre. Cualquier persona debe tener derecho a cobrar por su trabajo el precio que estime oportuno, pero la diferencia entre este nuevo programa (que sigue siendo ‘software’ libre) y otros, es que además del derecho del trabajador está el derecho del resto de usuarios.

El programador ha cogido un código que previamente había estado en manos de otras personas y no ha tenido que pagar por él. Por eso, y siguiendo con la licencia GPL, debe devolver ese código mejorado a la comunidad. Es decir, que por un lado puede cobrar por su código, pero al mismo tiempo cualquier usuario que lo consiga (pagando o no) es libre de compartirlo de manera gratuita (o cobrando también) con quien quiera. De ahí que el software libre siempre sea gratis, incluso cuando no lo es.

Logo de la licencia GPLv3 (Foto: Wikimedia Commons)

Logo de la licencia GPLv3 (Foto: Wikimedia Commons)

Sin embargo, existen otras licencias libres como la Apache que permiten al programador que ha mejorado el código no liberar su parte, quedándose con los derechos de las líneas que ha añadido por sí mismo.Android funciona de esta manera, y por eso las empresas que realicen su propia versión del sistema no tienen por qué compartirlo con las demás y son libres de comercializarlo como deseen.

RED HAT, GANAR DINERO CON SOFTWARE LIBRE ES POSIBLE

El ‘sombrero rojo’ es una empresa radicada en Carolina del Norte (EEUU). Lleva dedicándose a ofrecer soluciones informáticas basadas en ‘software’ libre desde 1993, cuando Linux era sinónimo de ‘sistema operativo para geeks’. Contra todo pronóstico, esta compañía ha conseguido no solo crecer utilizando este tipo de software, sino consolidarse como una empresa muy estable y con beneficios (casi 100 millones de dólares en 2012).

Pero la gran pregunta es: si el software libre se puede copiar y distribuir libremente, ¿cómo gana dinero?

Red Hat en el día de su salida a bolsa en Nueva York (Foto: MrLunch, Flickr)

Red Hat en el día de su salida a bolsa en Nueva York (Foto: MrLunch, Flickr)

La clave está en el servicio de soporte. Sí, el producto puede ser gratuito, pero no todo el mundo sabe código. Hay muchas cosas que adaptar dependiendo del tipo de negocio al que esté enfocado el programa, y pueden surgir problemas. Además hay que ocuparse del mantenimiento y estar pendiente de las nuevas actualizaciones que llegan al mercado. ¿Quién puede hacer todo eso? Red Hat.

Su estrategia empresarial no se basa en vender productos, sino servicios.Eso no quiere decir que Red Hat no desarrolle software, porque de hecho lo hace, y es uno de los mayores contribuidores del mundo del software libre, más concretamente del sistema operativo GNU/Linux, con Fedoracomo distribución bandera. Red Hat mantiene a sus clientes porque les ofrece un soporte de calidad de una manera sencilla y muy satisfactoria. ¿Por qué voy a centrarme en vender un solo producto una vez si puedo cobrar pequeñas cantidades a lo largo de mucho tiempo?

EL CÓDIGO ABIERTO, LA CLAVE DE LA COMPETITIVIDAD

Que el código del software que maneja Red Hat sea abierto es la clave de su éxito, y no porque el modelo de software privativo no funcione (A Apple y a Microsoft no parece que les vaya del todo mal), sino porque gracias a ello puede ofrecer productos de mejor calidad más fácilmente que sus competidores.

Poder leer el código fuente y aplicar cambios permite a Red Hat implementar mejoras, pero también cogerlas de otras empresas y usuarios. De esta manera, sus casi 6000 empleados se convierten literalmente en millones, ya que el dinamismo de la comunidad permite estar por delante cuando se produce algún cambio en el mercado.

“Creamos valor compartiendo” (Foto: Joaquim Rocha, Flickr)

En lugar de que varias empresas desarrollen el mismo tipo de software a la vez e intenten venderlo por su cuenta (programas que probablemente sean incompatibles entre sí), firmas como Red Hat se nutren de unconocimiento común que comparten constantemente. Cada una lo implementa y lo vende a su manera, con su propia marca. De este modo, y pese a que algunas compañías ofrecen exactamente el mismo producto,el cliente elegirá cuál va a ser su proveedor en función de la confianza que le otorgue, la calidad de su servicio y la profesionalidad. La consecuencia es que un número mayor de empresas pueden competir en el mismo mercado, con productos compatibles entre sí y, por consiguiente, ofrecer mejores servicios al existir una mayor competencia entre ellas. Justo lo contrario que ocurre, por ejemplo, en el mercado de los sistemas operativos privativos como Windows o Mac.

UN MODELO DE NEGOCIO AL MARGEN DE LA PIRATERÍA

Los gobiernos están muy preocupados por lo que ellos llaman “piratería”. La industrial del cine, la música, el software privativo… Todos ellos acusan a los usuarios que descargan ese contenido de la Red de robar esos productos que tanto les ha costado desarrollar. Red Hat no tiene ese problema: ‘piratear’ un sistema operativo basado en software libre se conoce simplemente como ‘copiar’. Y copiar software libre es perfectamente legal.

Gracias al código abierto, Red Hat no necesita preocuparse por la piratería o las copias ‘ilegales’ de sus software, porque simplemente no existen. El modelo de negocio de esta empresa propone una distribución al margen de las licencias privativas y los derechos de autor tradicionales, demostrando además que se pueden hacer negocios de una manera diferente y sin perjudicar a nadie.

 fuente: rebelion.org

30 años de GNU: La historia e influencia del Software Libre

Tres décadas de software libre, código abierto y comunidad.

El proyecto GNU ha cumplido 30 años, tres décadas desde que Richard Stallman anunciara su proyecto para construir un sistema operativo “tipo Unix” desarrollado de forma abierta, distribuido libremente y con el compromiso de seguir evolucionando en las mismas condiciones. En retrospectiva parece el inicio de una gran revolución, pero para los más viejos era simplemente volver a los tiempos del inicio del software, cuando compartir no solamente era bueno, sino que también era absolutamente necesario para poder desarrollar la informática mas allá del laboratorio.

Hablar de GNU sin disgustar a los más puristas puede ser algo complicado, ya que el proyecto GNU por si solo no explica 30 años de historia, o al menos no lo hace para la mayoría de la gente. El proyecto GNU no sólo requirió aliados como Linus Torvalds y su Linux para resistir el paso del tiempo, sino que también del apoyo de grandes empresas dispuestas a apostar por un modelo de desarrollo diferente. Es por eso que es imposible entender la importancia de GNU sin mencionar las fuerzas que ayudaron a complementarlo.

Me tomaré la libertad de hablar indistintamente de Software Libre y Código Abierto (Open Source). Los puristas pueden dejar de leer en este párrafo, para el resto los invito a entender el Software Libre o de Código Abierto como aquel cuyo código es visible y modificable por quien quiera hacerlo, aquel software que se puede regalar o vender libremente, aquel software que permite construir en conjunto lo que nos interesa a todos, y construir sobre él lo que le interesa a cada uno en particular. Hacer una distinción entre ambos a estas alturas es hilar fino, o como bien dijo Miguel de Icaza SaveFrom.net, discutir si somos parte del Grupo de Liberación de Palestina o del Grupo Palestino de Liberación.

De la segregación a la integración

Hace unos 15 años, el mundo de la informática parecía estar dividido respecto al Software Libre al menos en dos bandos, unos que decían que todo el software debía ser libre, mientras que otros lo veían como una moda destinada a desaparecer. Hoy con las aguas algo más quietas podemos mirar hacia atrás y reír de esos tiempos en que nos volvimos locos cada uno con su bandera. A diferencia del fin de la guerra fría que fue marcado claramente por la caída del Muro de Berlín, la lucha entre el software libre y el software privativo fue aquietándose lentamente y fueron muchos los eventos que nos llevaron a donde estamos hoy en día.

Hoy vivimos en un mundo en que tecnologías libres y privativas colaboran, en donde prácticamente ningún usuario puede pasar un día sin usar software libre, ya sea con un flamante equipo Apple en su escritorio, o usando la distribución más exótica de Linux (o FreeBSD si prefieren). Tampoco pueden escapar los usuarios de teléfonos móviles, ni con la manzanita ni con elrobotito, y algo similar pasa en los tablets, televisores, routers o cualquier otro aparato que requiera software para funcionar.

El software libre dejó hace mucho tiempo de ser una preferencia personal, simplemente es muy difícil ser productivo sin recurrir al software que se ha creado colaborativamente, de eso no se escapa hoy ninguna empresa que quiera sobrevivir en el mercado, desde la más modesta startup hasta gigantes como Oracle o Apple.

Al grano, por favor

Sin más preámbulo y antes de que se queden dormidos, aquí va a modo de conmemoración un recuento de los eventos que han marcado la historia de GNU y sus proyectos relacionados.

  • 1983 : Richard Stallman anuncia en Usenet la creación del proyecto GNU.
  • 1984 : Se crea el X Window System, la piedra fundacional de las interfaces gráficas para Unix, utilizando una licencia de código abierto y dirigido por una organización independiente. Su naturaleza abierta ayuda a que sea aceptado como un sistema gráfico estándar por los fabricantes de la época, al pasar los años necesitará un remezón que lo sacará de su estancamiento para convertirse en un sistema gráfico revolucionario.
  • 1985 : Richard Stallman crea la Free Software Foundation. Es aquí donde se estudian y definen las licencias de software que sirvieron de base para garantizar la libertad del software creado como Software Libre de aquí en adelante. Su licencia más famosa, la General Public License o GPL.
  • 1987 : Stallman y otros colaboradores crean GCC o GNU Compiler Collection, la herramienta de compilación por excelencia de los proyectos de código abierto, usada hasta el día de hoy en alguna de sus encarnaciones.

linux

  • 1991 : Linus Torvalds publica la primera versión de Linux, el componente que le faltaba al proyecto GNU: Un kernel. A partir de este momento se desencadena la famosa “dominación mundial” del código abierto.
  • 1994 : Rasmus Lerdorf crea el lenguaje PHP, inicialmente llamado Personal Home Page Tools. Permitió que la creación de páginas web se democratizara, ayudando a que un programador promedio fuera capaz de trabajar a gusto con estas tecnologías. Parafraseando al mismísimo Rasmus: Si fuera un requisito ser experto en el lenguaje C o Perl para crear páginas dinámicas, hoy la web sería muy distinta.
  • 1995: La empresa sueca MySQL AB crea la base de datos MySQL. Eliminando características que son utlizadas sólo por algunas aplicaciones, crean una base de datos simple, liviana y fácil de usar que se convierte rápidamente en el motor de miles de sitios web.
  • 1995: Se crea el servidor web Apache. Junto a Linux, MySQL y PHP causaron una explosión de nuevos sitios web, creándose la mítica combinación LAMP (Linux/Apache/MySQL/PHP). Desde su lanzamiento, Apache ha sido el servidor web más utilizado en el mundo, tanto respecto al total de servidores activos como al grupo de los sitios web más importantes del mundo. Sin LAMP probablemente a Mark Zuckerberg se le hubiese hecho más difícil crear Facebook.
  • 1995: Sergey Brin y Larry Page comienzan a trabajar en lo que hoy conocemos como Google. En vez de utilizar grandes y caros computadores con un Unix propietario deciden distribuir todo el procesamiento en miles de equipos pequeños con Linux (el año 2000 eran 6.000 equipos con Red Hat Linux).
  • 1995Amazon.com vende su primer libro. La empresa se convierte rápidamente en la tienda online más grande del mundo, y al mismo tiempo, la base de datos más grande del mundo, migrando completamente a Linux el año 2005 con el apoyo de Oracle. Hoy en día no solamente venden libros, música y otros “tangibles” sino que también convirtieron en realidad lo que hoy conocemos como computación en la nube, permitiendo que cualquier persona pudiera comprar o arrendar poder computacional sin necesidad de preocuparse de un datacenter.
  • 1996: Matthias Ettrich funda el proyecto KDE. Se trata de un esfuerzo para estandarizar la forma en que se ven y se comportan las aplicaciones gráficas en sistemas operativos basados en Unix (Linux, FreeBSD y otros). El concepto luego fue conocido como “entorno de escritorio”. KDE es el puntapié inicial al refinamiento de las interfaces gráficas de los sistemas de código abierto, eliminando el caos y simplificando la forma en que se crean y usan las aplicaciones. Sin que sea su propósito el proyecto entrega la base para lo que se convertirá en el fin del reinado de Internet Explorer (ver Webkit).
  • 1997: Motivados por las restricciones de licencia de KDE, Miguel de Icaza y Federico Mena crean el proyecto GNOME. Se trata de un entorno de escritorio completamente libre que ayudará a la rápida adopción de Linux y otros sistemas en base al uso de una interfaz gráfica. GNOME ayuda a establecer los estándares que hasta el día de hoy son parte de los sistemas de escritorio basados en software libre.

doom

  • 1997: Id Software libera el código fuente de Doom. Si bien se libera el código cuando ya no es relevante (Quake II es de 1997), este evento marca el inicio de lo que se convertirá en una tradición para Id Software. Al liberar el código de sus juegos Id Software logró que los desarrolladores novatos pudieran aprender de estas verdaderas joyas, y al mismo tiempo convirtió a estos juegos en “eternos”. Durante los años, el legado de Id Software ha sido mejorado y mantenido por desarrolladores independientes que han resuelto los problemas dados por el paso del tiempo, resolviendo incompatibilidades, agregando nuevas características y adecuando el código para aprovechar el hardware moderno. Para los interesados en el tema les dejo este link a un blog de análisis de código de Quake y otros. De nada.
  • 1998: Gartner Group refiriéndose a sistemas de código abierto declara que “estos sistemas operativos no serán usados en aplicaciones comerciales de la industria en los próximos 3 años, ni tendrán soporte de aplicaciones de terceros”.
  • 1998: Netscape da por perdida la batalla de los navegadores y decide publicar el código fuente de Netscape Navigator, creando el proyecto Mozilla. Se trata de una de las liberaciones de código más importantes. Aunque Mozilla queda relegado a un nicho por varios años, volverá a la batalla con el navegador Firefox años después.  Esta historia contada por sus propios protagonistas se puede ver en el documental Code Rush SaveFrom.net.
  • 1999: VA Linux sale a la bolsa de valores, generando la apertura más espectacular a la fecha. Las acciones salieron a la venta en USD$30 llegando a un peak de USD$320 para terminar en USD$250 al final de la jornada. Si bien es un hecho que llama la atención, hay que recordar que se da en el contexto de la burbuja puntocom, cuando las apuestas eran muy altas pero no se sabía exactamente cual era el sustento tras ellas. La emoción del momento se puede revivir en el reporte de CNBC (segmento del documental Revolution OS).

  • 2001Apple crea Webkit a partir del código de KHTML (KDE). Webkithoy es el motor de render HTML más utilizado en el mundo, no solamente por medio de los productos de Apple, sino que también a través de Android y Google Chrome en los escritorios. La masificación de los equipos móviles con WebKit hizo que los desarrolladores de sitios y aplicaciones web dejaran de utilizar la excusa de “funciona en Internet Explorer, el que usan todos”. Webkit y su masificación ayudaron a empujar no solo la evolución y la estandarización de la web, sino que también forzaron a la competencia a retomar esfuerzos y mejorar considerablemente la tecnología detrás de los navegadores web.
  • 2001: Nace Wikipedia. Si bien no se trata de un software propiamente tal, Wikipedia logra su éxito usando como base fundacional los conceptos del Software Libre respecto a su apertura, libre distribución y evolución en base al refinamiento del conocimiento experto. Por lo mismo, no es de extrañar que el software que potencia Wikipedia – llamado Wikimedia – también sea abierto.
  • 2001IBM declara que invertirá USD$1 billón en Linux. Si bien para el usuario normal puede parecer un simple evento de negocio, las consecuencias de este hecho son dramáticas. Conocido es el hecho de que “a ningún gerente lo despedirían por escoger IBM”, y el espaldarazo de IBM al sistema de código abierto hizo que justamente los gerentes perdieran el miedo de contar con Linux en sus datacenters.
  • 2003: Oracle, el fabricante de base de datos más grande del mundo anuncia Unbreakable Linux, una iniciativa para ayudar a la adopción de Linux como sistema operativo de su base de datos en sistemas de misión crítica. A la larga el apoyo de Oracle (e IBM) fue lo que hizo desaparecer a Unix, transformándolo en un sistema irrelevante para la gran mayoría de las empresas. No es por nada que SCO, una de las empresas que basaban su negocio en vender Unix demandara a IBM tratando de declarar ilegal a Linux. Demanda que hoy se recuerda como uno de los grandes fiascos de la industria.

firefox

  • 2004: Se libera la primera versión del navegador Mozilla Firefox. Se puede decir que este navegador surgió de las cenizas de Netscape Navigator, demostrando que se podía construir como Software Libre un navegador liviano, potente, con características innovadoras, de rápida evolución y por sobre todas las anteriores: Seguro. Si bien no logró destronar por si sólo al estancado Internet Explorer, hizo que mucha gente perdiera el miedo de usar otro navegador y fue el primer empujón que hizo tambalear al navegador de Microsoft.
  • 2004: Se libera la primera versión de Ubuntu Linux. Aunque no es el primer esfuerzo serio de acercar el sistema operativo de código abierto al usuario medio (recordemos Mandrake), es el primero que tiene un éxito indiscutido. Basado en Debian, la distribución más completa de Linux, se convierte rápidamente en el favorito de los nuevos usuarios, eliminando las dificultades que muchos usuarios encontraban al instalar y usar este sistema operativo. Es tanto su dominio que muchos usuarios nuevos hablan simplemente de Ubuntu y no de Ubuntu Linux. Canonical, la empresa detrás de Linux fue fundada por Mark Shuttleworth – quien se hizo millonario gracias a Linux – partió como una especie de agradecimiento a la comunidad del código abierto y hoy en día se prepara para extender su dominio a los teléfonos y tablets a través de una versión unificada de Ubuntu SaveFrom.net.
  • 2006: Nicolás Negroponte crea el proyecto Un computador por niño(One Laptop Per Child/OLPC). Se trataba de un computador de bajo costo basado en Software Libre. La idea era entregar un computador a niños en países en vías de desarrollo como apoyo a la educación al mínimo costo posible. Independiente del éxito de la iniciativa, el proyecto hizo evidente que había interés por equipos más baratos y más portátiles que pudieran realizar tareas simples pero enriquecedoras, dando origen a la revolución de los netbooks y como segunda derivada, la revolución de los tablets y el establecimiento de la era post-pc.
  • 2006Dave Reveman publica XGL SaveFrom.net, la primera implementación que lleva al hardware actual los conceptos propuestos por Jim Gettys y Keith Packard en el 2004 para reformular el sistema gráfico de Linux, esfuerzo inspirado en la tecnología Quartz Extreme de AppleCon XGL se comenzó a usar la aceleración de hardware 3D para dibujar la interfaz gráfica, marcando el punto de inflexión entre el estancado sistema gráfico X Window System y los nuevos entornos de escritorio. XGL y su famoso cubo no sólo fascinó a los usuarios de Linux sino que también hizo que muchos se interesaran a tener “el cubo”. Como contexto, Microsoft publica Windows Vista el año siguiente, aplicando técnicas similares.

shrek

  • 2007: 95% de los escritorios y servidores usados para crear efectos especiales y animaciones en Hollywood están basados en Linux. Éxitos como Shrek, The Matrix y Titanic estuvieron entre las primeras películas creadas sobre sistemas basados en Linux, un esquema que terminó arrastrando a todo Hollywood.
  • 2008: Samsung lanza su primer televisor basado en Linux. Se trata de una serie de televisores utilizando Linux como sistema operativo. Hoy día los principales fabricantes de televisores conectados a Internet (SmartTV) utilizan Linux como sistema operativo, ya sea utilizando su propia plataforma o a través de Google TV, el derivado de Android orientado a televisión.
  • 2008Google lanza el primer teléfono con sistema operativo AndroidBasado en Linux y otros componentes de código abierto, Android se convierte rápidamente en el sistema operativo de preferencia de los fabricantes de equipos móviles, permitiéndoles enfocarse en el hardware para desarrollar teléfonos con un ecosistema de miles de aplicaciones compatibles.
  • 2013Valve, una de las plataformas de distribución de videojuegos más grande del mundo anuncia que concentrará sus esfuerzos en Linux, y anuncia un sistema operativo derivado llamado SteamOS. Como consecuencia natural se espera que este evento marque el compromiso definitivo de los principales fabricantes de tarjetas de video con el sistema operativo de código abierto por excelencia.

Como podrán ver, estos 30 años han sido marcados fuertemente por la influencia de GNU y la definición del Software Libre. Si eliminamos todos los eventos descritos en este artículo tendríamos una mundo completamente diferente. La importancia de GNU no es sólo una declaración, son hechos indiscutibles que en el día a día pueden pasar inadvertidos, porque nos hemos acostumbrado a que las cosas funcionen.

Espero que este artículo ayude a dar un reconocimiento a los miles de desarrolladores que han ayudado a construir la tecnología que tanto nos gusta usar.

Cierro con esta cita de Steve Ballmer, en el año 2006.

“No se trata de Software Libre, sino de comunidad. No es como Novell, no se van a quedar sin dinero, ya que en cierto sentido, partieron en la bancarrota.”

Visto en: fayerwayer

Tips: Más de 400 comandos para GNU/Linux que deberías conocer :D

Me he encontrado en la Wiki de GUTL este completo listado con más de 400 comandos para GNU/Linux con su respectiva explicación, y los quiero compartir con ustedes para complementar este excelente artículo que escribió mi colega para aprender a vivir con la consola.

Indice:

  1. Información del Sistema
  2. Apagar (Reiniciar o Cerrar Sesión)
  3. Archivos y Directorios
  4. Encontrar archivos
  5. Montando un sistema de ficheros
  6. Espacio de Disco
  7. Usuarios y Grupos
  8. Permisos en Ficheros (Usa ”+” para colocar permisos y ”-” para eliminar)
  9. Atributos especiales en ficheros (Usa ”+” para colocar permisos y ”-” para eliminar)
  10. Archivos y Ficheros comprimidos
  11. Paquetes RPM (Red Hat, Fedora y similares)
  12. Actualizador de paquetes YUM (Red Hat, Fedora y similares)
  13. Paquetes Deb (Debian, Ubuntu y derivados)
  14. Actualizador de paquetes APT (Debian, Ubuntu y derivados)
  15. Ver el contenido de un fichero
  16. Manipulación de texto
  17. Establecer caracter y conversión de ficheros
  18. Análisis del sistema de ficheros
  19. Formatear un sistema de ficheros
  20. Trabajo con la SWAP
  21. Salvas (Backup)
  22. CD-ROM
  23. Trabajo con la RED ( LAN y Wi-Fi)
  24. Redes de Microsoft Windows (SAMBA)
  25. Tablas IP (CORTAFUEGOS)
  26. Monitoreando y depurando
  27. Otros comandos útiles

Información del sistema

  1. arch: mostrar la arquitectura de la máquina (1).
  2. uname -m: mostrar la arquitectura de la máquina (2).
  3. uname -r: mostrar la versión del kernel usado.
  4. dmidecode -q: mostrar los componentes (hardware) del sistema.
  5. hdparm -i /dev/hda: mostrar las características de un disco duro.
  6. hdparm -tT /dev/sda: realizar prueba de lectura en un disco duro.
  7. cat /proc/cpuinfo: mostrar información de la CPU.
  8. cat /proc/interrupts: mostrar las interrupciones.
  9. cat /proc/meminfo: verificar el uso de memoria.
  10. cat /proc/swaps: mostrar ficheros swap.
  11. cat /proc/version: mostrar la versión del kernel.
  12. cat /proc/net/dev: mostrar adaptadores de red y estadísticas.
  13. cat /proc/mounts: mostrar el sistema de ficheros montado.
  14. lspci -tv: mostrar los dispositivos PCI.
  15. lsusb -tv: mostrar los dispositivos USB.
  16. date: mostrar la fecha del sistema.
  17. cal 2011: mostrar el almanaque de 2011.
  18. cal 07 2011: mostrar el almanaque para el mes julio de 2011.
  19. date 041217002011.00: colocar (declarar, ajustar) fecha y hora.
  20. clock -w: guardar los cambios de fecha en la BIOS.

Apagar (Reiniciar Sistema o Cerrar Sesión)

  1. shutdown -h now: apagar el sistema (1).
  2. init 0: apagar el sistema (2).
  3. telinit 0: apagar el sistema (3).
  4. halt: apagar el sistema (4).
  5. shutdown -h hours:minutes &: apagado planificado del sistema.
  6. shutdown -c: cancelar un apagado planificado del sistema.
  7. shutdown -r now: reiniciar (1).
  8. reboot: reiniciar (2).
  9. logout: cerrar sesión.

Archivos y Directorios

  1. cd /home: entrar en el directorio “home”.
  2. cd ..: retroceder un nivel.
  3. cd ../..: retroceder 2 niveles.
  4. cd: ir al directorio raíz.
  5. cd ~user1: ir al directorio user1.
  6. cd -: ir (regresar) al directorio anterior.
  7. pwd: mostrar el camino del directorio de trabajo.
  8. ls: ver los ficheros de un directorio.
  9. ls -F: ver los ficheros de un directorio.
  10. ls -l: mostrar los detalles de ficheros y carpetas de un directorio.
  11. ls -a: mostrar los ficheros ocultos.
  12. ls *[0-9]*: mostrar los ficheros y carpetas que contienen números.
  13. tree: mostrar los ficheros y carpetas en forma de árbol comenzando por la raíz.(1)
  14. lstree: mostrar los ficheros y carpetas en forma de árbol comenzando por la raíz.(2)
  15. mkdir dir1: crear una carpeta o directorio con nombre ‘dir1′.
  16. mkdir dir1 dir2: crear dos carpetas o directorios simultáneamente (Crear dos directorios a la vez).
  17. mkdir -p /tmp/dir1/dir2: crear un árbol de directorios.
  18. rm -f file1: borrar el fichero llamado ‘file1′.
  19. rmdir dir1: borrar la carpeta llamada ‘dir1′.
  20. rm -rf dir1: eliminar una carpeta llamada ‘dir1′ con su contenido de forma recursiva. (Si lo borro recursivo estoy diciendo que es con su contenido).
  21. rm -rf dir1 dir2: borrar dos carpetas (directorios) con su contenido de forma recursiva.
  22. mv dir1 new_dir: renombrar o mover un fichero o carpeta (directorio).
  23. cp file1: copiar un fichero.
  24. cp file1 file2: copiar dos ficheros al unísono.
  25. cp dir /* .: copiar todos los ficheros de un directorio dentro del directorio de trabajo actual.
  26. cp -a /tmp/dir1 .: copiar un directorio dentro del directorio actual de trabajo.
  27. cp -a dir1: copiar un directorio.
  28. cp -a dir1 dir2: copiar dos directorio al unísono.
  29. ln -s file1 lnk1: crear un enlace simbólico al fichero o directorio.
  30. ln file1 lnk1: crear un enlace físico al fichero o directorio.
  31. touch -t 0712250000 file1: modificar el tiempo real (tiempo de creación) de un fichero o directorio.
  32. file file1: salida (volcado en pantalla) del tipo mime de un fichero texto.
  33. iconv -l: listas de cifrados conocidos.
  34. iconv -f fromEncoding -t toEncoding inputFile > outputFile: crea una nueva forma del fichero de entrada asumiendo que está codificado en fromEncoding y convirtiéndolo a ToEncoding.
  35. find . -maxdepth 1 -name *.jpg -print -exec convert ”{}” -resize 80×60 “thumbs/{}” \;: agrupar ficheros redimensionados en el directorio actual y enviarlos a directorios en vistas de miniaturas (requiere convertir desde ImagemagicK).

Encontrar archivos

  1. find / -name file1: buscar fichero y directorio a partir de la raíz del sistema.
  2. find / -user user1: buscar ficheros y directorios pertenecientes al usuario ‘user1′.
  3. find /home/user1 -name \*.bin: buscar ficheros con extensión ‘. bin’ dentro del directorio ‘/ home/user1′.
  4. find /usr/bin -type f -atime +100: buscar ficheros binarios no usados en los últimos 100 días.
  5. find /usr/bin -type f -mtime -10: buscar ficheros creados o cambiados dentro de los últimos 10 días.
  6. find / -name \*.rpm -exec chmod 755 ‘{}’ \;: buscar ficheros con extensión ‘.rpm’ y modificar permisos.
  7. find / -xdev -name \*.rpm: Buscar ficheros con extensión ‘.rpm’ ignorando los dispositivos removibles como cdrom, pen-drive, etc.…
  8. locate \*.ps: encuentra ficheros con extensión ‘.ps’ ejecutados primeramente con el command ‘updatedb’.
  9. whereis halt: mostrar la ubicación de un fichero binario, de ayuda o fuente. En este caso pregunta dónde está el comando ‘halt’.
  10. which halt: mostrar la senda completa (el camino completo) a un binario / ejecutable.

Montando un sistema de ficheros

  1. mount /dev/hda2 /mnt/hda2: montar un disco llamado hda2. Verifique primero la existencia del directorio ‘/ mnt/hda2′; si no está, debe crearlo.
  2. umount /dev/hda2: desmontar un disco llamado hda2. Salir primero desde el punto ‘/ mnt/hda2.
  3. fuser -km /mnt/hda2: forzar el desmontaje cuando el dispositivo está ocupado.
  4. umount -n /mnt/hda2: correr el desmontaje sin leer el fichero /etc/mtab. Útil cuando el fichero es de solo lectura o el disco duro está lleno.
  5. mount /dev/fd0 /mnt/floppy: montar un disco flexible (floppy).
  6. mount /dev/cdrom /mnt/cdrom: montar un cdrom / dvdrom.
  7. mount /dev/hdc /mnt/cdrecorder: montar un cd regrabable o un dvdrom.
  8. mount /dev/hdb /mnt/cdrecorder: montar un cd regrabable / dvdrom (un dvd).
  9. mount -o loop file.iso /mnt/cdrom: montar un fichero o una imagen iso.
  10. mount -t vfat /dev/hda5 /mnt/hda5: montar un sistema de ficheros FAT32.
  11. mount /dev/sda1 /mnt/usbdisk: montar un usb pen-drive o una memoria (sin especificar el tipo de sistema de ficheros).

Espacio de Disco

  1. df -h: mostrar una lista de las particiones montadas.
  2. ls -lSr |more: mostrar el tamaño de los ficheros y directorios ordenados por tamaño.
  3. du -sh dir1: Estimar el espacio usado por el directorio ‘dir1′.
  4. du -sk * | sort -rn: mostrar el tamaño de los ficheros y directorios ordenados por tamaño.
  5. rpm -q -a –qf ‘%10{SIZE}t%{NAME}n’ | sort -k1,1n: mostrar el espacio usado por los paquetes rpm instalados organizados por tamaño (Fedora, Redhat y otros).
  6. dpkg-query -W -f=’${Installed-Size;10}t${Package}n’ | sort -k1,1n: mostrar el espacio usado por los paquetes instalados, organizados por tamaño (Ubuntu, Debian y otros).

Usuarios y Grupos

  1. groupadd nombre_del_grupo: crear un nuevo grupo.
  2. groupdel nombre_del_grupo: borrar un grupo.
  3. groupmod -n nuevo_nombre_del_grupo viejo_nombre_del_grupo: renombrar un grupo.
  4. useradd -c “Name Surname ” -g admin -d /home/user1 -s /bin/bash user1: Crear un nuevo usuario perteneciente al grupo “admin”.
  5. useradd user1: crear un nuevo usuario.
  6. userdel -r user1: borrar un usuario (‘-r’ elimina el directorio Home).
  7. usermod -c “User FTP” -g system -d /ftp/user1 -s /bin/nologin user1: cambiar los atributos del usuario.
  8. passwd: cambiar contraseña.
  9. passwd user1: cambiar la contraseña de un usuario (solamente por root).
  10. chage -E 2011-12-31 user1: colocar un plazo para la contraseña del usuario. En este caso dice que la clave expira el 31 de diciembre de 2011.
  11. pwck: chequear la sintaxis correcta el formato de fichero de ‘/etc/passwd’ y la existencia de usuarios.
  12. grpck: chequear la sintaxis correcta y el formato del fichero ‘/etc/group’ y la existencia de grupos.
  13. newgrp group_name: registra a un nuevo grupo para cambiar el grupo predeterminado de los ficheros creados recientemente.

Permisos en Ficheros (Usa ”+” para colocar permisos y ”-” para eliminar)

  1. ls -lh: Mostrar permisos.
  2. ls /tmp | pr -T5 -W$COLUMNS: dividir la terminal en 5 columnas.
  3. chmod ugo+rwx directory1: colocar permisos de lectura ®, escritura (w) y ejecución(x) al propietario (u), al grupo (g) y a otros (o) sobre el directorio ‘directory1′.
  4. chmod go-rwx directory1: quitar permiso de lectura ®, escritura (w) y (x) ejecución al grupo (g) y otros (o) sobre el directorio ‘directory1′.
  5. chown user1 file1: cambiar el dueño de un fichero.
  6. chown -R user1 directory1: cambiar el propietario de un directorio y de todos los ficheros y directorios contenidos dentro.
  7. chgrp group1 file1: cambiar grupo de ficheros.
  8. chown user1:group1 file1: cambiar usuario y el grupo propietario de un fichero.
  9. find / -perm -u+s: visualizar todos los ficheros del sistema con SUID configurado.
  10. chmod u+s /bin/file1: colocar el bit SUID en un fichero binario. El usuario que corriendo ese fichero adquiere los mismos privilegios como dueño.
  11. chmod u-s /bin/file1: deshabilitar el bit SUID en un fichero binario.
  12. chmod g+s /home/public: colocar un bit SGID en un directorio –similar al SUID pero por directorio.
  13. chmod g-s /home/public: desabilitar un bit SGID en un directorio.
  14. chmod o+t /home/public: colocar un bit STIKY en un directorio. Permite el borrado de ficheros solamente a los dueños legítimos.
  15. chmod o-t /home/public: desabilitar un bit STIKY en un directorio.

Atributos especiales en ficheros (Usa ”+” para colocar permisos y ”-” para eliminar)

  1. chattr +a file1: permite escribir abriendo un fichero solamente modo append.
  2. chattr +c file1: permite que un fichero sea comprimido / descomprimido automaticamente.
  3. chattr +d file1: asegura que el programa ignore borrar los ficheros durante la copia de seguridad.
  4. chattr +i file1: convierte el fichero en invariable, por lo que no puede ser eliminado, alterado, renombrado, ni enlazado.
  5. chattr +s file1: permite que un fichero sea borrado de forma segura.
  6. chattr +S file1: asegura que un fichero sea modificado, los cambios son escritos en modo synchronous como con sync.
  7. chattr +u file1: te permite recuperar el contenido de un fichero aún si este está cancelado.
  8. lsattr: mostrar atributos especiales.

Archivos y Ficheros comprimidos

  1. bunzip2 file1.bz2: descomprime in fichero llamado ‘file1.bz2′.
  2. bzip2 file1: comprime un fichero llamado ‘file1′.
  3. gunzip file1.gz: descomprime un fichero llamado ‘file1.gz’.
  4. gzip file1: comprime un fichero llamado ‘file1′.
  5. gzip -9 file1: comprime con compresión máxima.
  6. rar a file1.rar test_file: crear un fichero rar llamado ‘file1.rar’.
  7. rar a file1.rar file1 file2 dir1: comprimir ‘file1′, ‘file2′ y ‘dir1′ simultáneamente.
  8. rar x file1.rar: descomprimir archivo rar.
  9. unrar x file1.rar: descomprimir archivo rar.
  10. tar -cvf archive.tar file1: crear un tarball descomprimido.
  11. tar -cvf archive.tar file1 file2 dir1: crear un archivo conteniendo ‘file1′, ‘file2′ y’dir1′.
  12. tar -tf archive.tar: mostrar los contenidos de un archivo.
  13. tar -xvf archive.tar: extraer un tarball.
  14. tar -xvf archive.tar -C /tmp: extraer un tarball en / tmp.
  15. tar -cvfj archive.tar.bz2 dir1: crear un tarball comprimido dentro de bzip2.
  16. tar -xvfj archive.tar.bz2: descomprimir un archivo tar comprimido en bzip2
  17. tar -cvfz archive.tar.gz dir1: crear un tarball comprimido en gzip.
  18. tar -xvfz archive.tar.gz: descomprimir un archive tar comprimido en gzip.
  19. zip file1.zip file1: crear un archivo comprimido en zip.
  20. zip -r file1.zip file1 file2 dir1: comprimir, en zip, varios archivos y directorios de forma simultánea.
  21. unzip file1.zip: descomprimir un archivo zip.

Paquetes RPM (Red Hat, Fedora y similares)

  1. rpm -ivh package.rpm: instalar un paquete rpm.
  2. rpm -ivh –nodeeps package.rpm: instalar un paquete rpm ignorando las peticiones de dependencias.
  3. rpm -U package.rpm: actualizar un paquete rpm sin cambiar la configuración de los ficheros.
  4. rpm -F package.rpm: actualizar un paquete rpm solamente si este está instalado.
  5. rpm -e package_name.rpm: eliminar un paquete rpm.
  6. rpm -qa: mostrar todos los paquetes rpm instalados en el sistema.
  7. rpm -qa | grep httpd: mostrar todos los paquetes rpm con el nombre “httpd”.
  8. rpm -qi package_name: obtener información en un paquete específico instalado.
  9. rpm -qg “System Environment/Daemons”: mostar los paquetes rpm de un grupo software.
  10. rpm -ql package_name: mostrar lista de ficheros dados por un paquete rpm instalado.
  11. rpm -qc package_name: mostrar lista de configuración de ficheros dados por un paquete rpm instalado.
  12. rpm -q package_name –whatrequires: mostrar lista de dependencias solicitada para un paquete rpm.
  13. rpm -q package_name –whatprovides: mostar la capacidad dada por un paquete rpm.
  14. rpm -q package_name –scripts: mostrar los scripts comenzados durante la instalación /eliminación.
  15. rpm -q package_name –changelog: mostar el historial de revisions de un paquete rpm.
  16. rpm -qf /etc/httpd/conf/httpd.conf: verificar cuál paquete rpm pertenece a un fichero dado.
  17. rpm -qp package.rpm -l: mostrar lista de ficheros dados por un paquete rpm que aún no ha sido instalado.
  18. rpm –import /media/cdrom/RPM-GPG-KEY: importar la firma digital de la llave pública.
  19. rpm –checksig package.rpm: verificar la integridad de un paquete rpm.
  20. rpm -qa gpg-pubkey: verificar la integridad de todos los paquetes rpm instalados.
  21. rpm -V package_name: chequear el tamaño del fichero, licencias, tipos, dueño, grupo, chequeo de resumen de MD5 y última modificación.
  22. rpm -Va: chequear todos los paquetes rpm instalados en el sistema. Usar con cuidado.
  23. rpm -Vp package.rpm: verificar un paquete rpm no instalado todavía.
  24. rpm2cpio package.rpm | cpio –extract –make-directories *bin*: extraer fichero ejecutable desde un paquete rpm.
  25. rpm -ivh /usr/src/redhat/RPMS/`arch`/package.rpm: instalar un paquete construido desde una fuente rpm.
  26. rpmbuild –rebuild package_name.src.rpm: construir un paquete rpm desde una fuente rpm.

Actualizador de paquetes YUM (Red Hat, Fedora y similares)

  1. yum install package_name: descargar e instalar un paquete rpm.
  2. yum localinstall package_name.rpm: este instalará un RPM y tratará de resolver todas las dependencies para ti, usando tus repositorios.
  3. yum update package_name.rpm: actualizar todos los paquetes rpm instalados en el sistema.
  4. yum update package_name: modernizar / actualizar un paquete rpm.
  5. yum remove package_name: eliminar un paquete rpm.
  6. yum list: listar todos los paquetes instalados en el sistema.
  7. yum search package_name: Encontrar un paquete en repositorio rpm.
  8. yum clean packages: limpiar un caché rpm borrando los paquetes descargados.
  9. yum clean headers: eliminar todos los ficheros de encabezamiento que el sistema usa para resolver la dependencia.
  10. yum clean all: eliminar desde los paquetes caché y ficheros de encabezado.

Paquetes Deb (Debian, Ubuntu y derivados)

  1. dpkg -i package.deb: instalar / actualizar un paquete deb.
  2. dpkg -r package_name: eliminar un paquete deb del sistema.
  3. dpkg -l: mostrar todos los paquetes deb instalados en el sistema.
  4. dpkg -l | grep httpd: mostrar todos los paquetes deb con el nombre “httpd”
  5. dpkg -s package_name: obtener información en un paquete específico instalado en el sistema.
  6. dpkg -L package_name: mostar lista de ficheros dados por un paquete instalado en el sistema.
  7. dpkg –contents package.deb: mostrar lista de ficheros dados por un paquete no instalado todavía.
  8. dpkg -S /bin/ping: verificar cuál paquete pertenece a un fichero dado.

Actualizador de paquetes APT (Debian, Ubuntu y derivados)

  1. apt-get install package_name: instalar / actualizar un paquete deb.
  2. apt-cdrom install package_name: instalar / actualizar un paquete deb desde un cdrom.
  3. apt-get update: actualizar la lista de paquetes.
  4. apt-get upgrade: actualizar todos los paquetes instalados.
  5. apt-get remove package_name: eliminar un paquete deb del sistema.
  6. apt-get check: verificar la correcta resolución de las dependencias.
  7. apt-get clean: limpiar cache desde los paquetes descargados.
  8. apt-cache search searched-package: retorna lista de paquetes que corresponde a la serie «paquetes buscados».

Ver el contenido de un fichero

  1. cat file1: ver los contenidos de un fichero comenzando desde la primera hilera.
  2. tac file1: ver los contenidos de un fichero comenzando desde la última línea.
  3. more file1: ver el contenido a lo largo de un fichero.
  4. less file1: parecido al commando ‘more’ pero permite salvar el movimiento en el fichero así como el movimiento hacia atrás.
  5. head -2 file1: ver las dos primeras líneas de un fichero.
  6. tail -2 file1: ver las dos últimas líneas de un fichero.
  7. tail -f /var/log/messages: ver en tiempo real qué ha sido añadido al fichero.

Manipulación de texto

  1. cat file1 file2 .. | command <> file1_in.txt_or_file1_out.txt: sintaxis general para la manipulación de texto utilizando PIPE, STDIN y STDOUT.
  2. cat file1 | command( sed, grep, awk, grep, etc…) > result.txt: sintaxis general para manipular un texto de un fichero y escribir el resultado en un fichero nuevo.
  3. cat file1 | command( sed, grep, awk, grep, etc…) » result.txt: sintaxis general para manipular un texto de un fichero y añadir resultado en un fichero existente.
  4. grep Aug /var/log/messages: buscar palabras “Aug” en el fichero ‘/var/log/messages’.
  5. grep ^Aug /var/log/messages: buscar palabras que comienzan con “Aug” en fichero ‘/var/log/messages’
  6. grep [0-9] /var/log/messages: seleccionar todas las líneas del fichero ‘/var/log/messages’ que contienen números.
  7. grep Aug -R /var/log/*: buscar la cadena “Aug” en el directorio ‘/var/log’ y debajo.
  8. sed ‘s/stringa1/stringa2/g’ example.txt: reubicar “string1” con “string2” en ejemplo.txt
  9. sed ‘/^$/d’ example.txt: eliminar todas las líneas en blanco desde el ejemplo.txt
  10. sed ‘/ *#/d; /^$/d’ example.txt: eliminar comentarios y líneas en blanco de ejemplo.txt
  11. echo ‘esempio’ | tr ‘[:lower:]‘ ‘[:upper:]‘: convertir minúsculas en mayúsculas.
  12. sed -e ’1d’ result.txt: elimina la primera línea del fichero ejemplo.txt
  13. sed -n ‘/stringa1/p’: visualizar solamente las líneas que contienen la palabra “string1”.

Establecer caracter y conversión de ficheros

  1. dos2unix filedos.txt fileunix.txt: convertir un formato de fichero texto desde MSDOS a UNIX.
  2. unix2dos fileunix.txt filedos.txt: convertir un formato de fichero de texto desde UNIX a MSDOS.
  3. recode ..HTML < page.txt > page.html: convertir un fichero de texto en html.
  4. recode -l | more: mostrar todas las conversiones de formato disponibles.

Análisis del sistema de ficheros

  1. badblocks -v /dev/hda1: Chequear los bloques defectuosos en el disco hda1.
  2. fsck /dev/hda1: reparar / chequear la integridad del fichero del sistema Linux en el disco hda1.
  3. fsck.ext2 /dev/hda1: reparar / chequear la integridad del fichero del sistema ext 2 en el disco hda1.
  4. e2fsck /dev/hda1: reparar / chequear la integridad del fichero del sistema ext 2 en el disco hda1.
  5. e2fsck -j /dev/hda1: reparar / chequear la integridad del fichero del sistema ext 3 en el disco hda1.
  6. fsck.ext3 /dev/hda1: reparar / chequear la integridad del fichero del sistema ext 3 en el disco hda1.
  7. fsck.vfat /dev/hda1: reparar / chequear la integridad del fichero sistema fat en el disco hda1.
  8. fsck.msdos /dev/hda1: reparar / chequear la integridad de un fichero del sistema dos en el disco hda1.
  9. dosfsck /dev/hda1: reparar / chequear la integridad de un fichero del sistema dos en el disco hda1.

Formatear un sistema de ficheros

  1. mkfs /dev/hda1: crear un fichero de sistema tipo Linux en la partición hda1.
  2. mke2fs /dev/hda1: crear un fichero de sistema tipo Linux ext 2 en hda1.
  3. mke2fs -j /dev/hda1: crear un fichero de sistema tipo Linux ext3 (periódico) en la partición hda1.
  4. mkfs -t vfat 32 -F /dev/hda1: crear un fichero de sistema FAT32 en hda1.
  5. fdformat -n /dev/fd0: formatear un disco flooply.
  6. mkswap /dev/hda3: crear un fichero de sistema swap.

Trabajo con la SWAP

  1. mkswap /dev/hda3: crear fichero de sistema swap.
  2. swapon /dev/hda3: activando una nueva partición swap.
  3. swapon /dev/hda2 /dev/hdb3: activar dos particiones swap.

Salvas (Backup)

  1. dump -0aj -f /tmp/home0.bak /home: hacer una salva completa del directorio ‘/home’.
  2. dump -1aj -f /tmp/home0.bak /home: hacer una salva incremental del directorio ‘/home’.
  3. restore -if /tmp/home0.bak: restaurando una salva interactivamente.
  4. rsync -rogpav –delete /home /tmp: sincronización entre directorios.
  5. rsync -rogpav -e ssh –delete /home ip_address:/tmp: rsync a través del túnel SSH.
  6. rsync -az -e ssh –delete ip_addr:/home/public /home/local: sincronizar un directorio local con un directorio remoto a través de ssh y de compresión.
  7. rsync -az -e ssh –delete /home/local ip_addr:/home/public: sincronizar un directorio remoto con un directorio local a través de ssh y de compresión.
  8. dd bs=1M if=/dev/hda | gzip | ssh user@ip_addr ‘dd of=hda.gz’: hacer una salva de un disco duro en un host remoto a través de ssh.
  9. dd if=/dev/sda of=/tmp/file1: salvar el contenido de un disco duro a un fichero. (En este caso el disco duro es “sda” y el fichero “file1”).
  10. tar -Puf backup.tar /home/user: hacer una salva incremental del directorio ‘/home/user’.
  11. ( cd /tmp/local/ && tar c . ) | ssh -C user@ip_addr ‘cd /home/share/ && tar x -p’: copiar el contenido de un directorio en un directorio remoto a través de ssh.
  12. ( tar c /home ) | ssh -C user@ip_addr ‘cd /home/backup-home && tar x -p’: copiar un directorio local en un directorio remoto a través de ssh.
  13. tar cf – . | (cd /tmp/backup ; tar xf – ): copia local conservando las licencias y enlaces desde un directorio a otro.
  14. find /home/user1 -name ‘*.txt’ | xargs cp -av –target-directory=/home/backup/ –parents: encontrar y copiar todos los ficheros con extensión ‘.txt’ de un directorio a otro.
  15. find /var/log -name ‘*.log’ | tar cv –files-from=- | bzip2 > log.tar.bz2: encontrar todos los ficheros con extensión ‘.log’ y hacer un archivo bzip.
  16. dd if=/dev/hda of=/dev/fd0 bs=512 count=1: hacer una copia del MRB (Master Boot Record) a un disco floppy.
  17. dd if=/dev/fd0 of=/dev/hda bs=512 count=1: restaurar la copia del MBR (Master Boot Record) salvada en un floppy.

CD-ROM

  1. cdrecord -v gracetime=2 dev=/dev/cdrom -eject blank=fast -force: limpiar o borrar un cd regrabable.
  2. mkisofs /dev/cdrom > cd.iso: crear una imagen iso de cdrom en disco.
  3. mkisofs /dev/cdrom | gzip > cd_iso.gz: crear una imagen comprimida iso de cdrom en disco.
  4. mkisofs -J -allow-leading-dots -R -V “Label CD” -iso-level 4 -o ./cd.iso data_cd: crear una imagen iso de un directorio.
  5. cdrecord -v dev=/dev/cdrom cd.iso: quemar una imagen iso.
  6. gzip -dc cd_iso.gz | cdrecord dev=/dev/cdrom -: quemar una imagen iso comprimida.
  7. mount -o loop cd.iso /mnt/iso: montar una imagen iso.
  8. cd-paranoia -B: llevar canciones de un cd a ficheros wav.
  9. cd-paranoia – ”-3”: llevar las 3 primeras canciones de un cd a ficheros wav.
  10. cdrecord –scanbus: escanear bus para identificar el canal scsi.
  11. dd if=/dev/hdc | md5sum: hacer funcionar un md5sum en un dispositivo, como un CD.

Trabajo con la RED ( LAN y Wi-Fi)

  1. ifconfig eth0: mostrar la configuración de una tarjeta de red Ethernet.
  2. ifup eth0: activar una interface ‘eth0′.
  3. ifdown eth0: deshabilitar una interface ‘eth0′.
  4. ifconfig eth0 192.168.1.1 netmask 255.255.255.0: configurar una dirección IP.
  5. ifconfig eth0 promisc: configurar ‘eth0′en modo común para obtener los paquetes (sniffing).
  6. dhclient eth0: activar la interface ‘eth0′ en modo dhcp.
  7. route -n: mostrar mesa de recorrido.
  8. route add -net 0/0 gw IP_Gateway: configurar entrada predeterminada.
  9. route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1: configurar ruta estática para buscar la red ’192.168.0.0/16′.
  10. route del 0/0 gw IP_gateway: eliminar la ruta estática.
  11. echo “1” > /proc/sys/net/ipv4/ip_forward: activar el recorrido ip.
  12. hostname: mostrar el nombre del host del sistema.
  13. host www.example.com: buscar el nombre del host para resolver el nombre a una dirección ip(1).
  14. nslookup www.example.com: buscar el nombre del host para resolver el nombre a una direccióm ip y viceversa(2).
  15. ip link show: mostar el estado de enlace de todas las interfaces.
  16. mii-tool eth0: mostar el estado de enlace de ‘eth0′.
  17. ethtool eth0: mostrar las estadísticas de tarjeta de red ‘eth0′.
  18. netstat -tup: mostrar todas las conexiones de red activas y sus PID.
  19. netstat -tupl: mostrar todos los servicios de escucha de red en el sistema y sus PID.
  20. tcpdump tcp port 80: mostrar todo el tráfico HTTP.
  21. iwlist scan: mostrar las redes inalámbricas.
  22. iwconfig eth1: mostrar la configuración de una tarjeta de red inalámbrica.
  23. whois www.example.com: buscar en base de datos Whois.

Redes de Microsoft Windows (SAMBA)

  1. nbtscan ip_addr: resolución de nombre de red bios.
  2. nmblookup -A ip_addr: resolución de nombre de red bios.
  3. smbclient -L ip_addr/hostname: mostrar acciones remotas de un host en windows.

Tablas IP (CORTAFUEGOS)

  1. iptables -t filter -L: mostrar todas las cadenas de la tabla de filtro.
  2. iptables -t nat -L: mostrar todas las cadenas de la tabla nat.
  3. iptables -t filter -F: limpiar todas las reglas de la tabla de filtro.
  4. iptables -t nat -F: limpiar todas las reglas de la tabla nat.
  5. iptables -t filter -X: borrar cualquier cadena creada por el usuario.
  6. iptables -t filter -A INPUT -p tcp –dport telnet -j ACCEPT: permitir las conexiones telnet para entar.
  7. iptables -t filter -A OUTPUT -p tcp –dport http -j DROP: bloquear las conexiones HTTP para salir.
  8. iptables -t filter -A FORWARD -p tcp –dport pop3 -j ACCEPT: permitir las conexiones POP a una cadena delantera.
  9. iptables -t filter -A INPUT -j LOG –log-prefix “DROP INPUT”: registrando una cadena de entrada.
  10. iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE: configurar un PAT (Puerto de traducción de dirección) en eth0, ocultando los paquetes de salida forzada.
  11. iptables -t nat -A PREROUTING -d 192.168.0.1 -p tcp -m tcp –dport 22 -j DNAT –to-destination 10.0.0.2:22: redireccionar los paquetes diriguidos de un host a otro.

Monitoreando y depurando

  1. top: mostrar las tareas de linux usando la mayoría cpu.
  2. ps -eafw: muestra las tareas Linux.
  3. ps -e -o pid,args –forest: muestra las tareas Linux en un modo jerárquico.
  4. pstree: mostrar un árbol sistema de procesos.
  5. kill -9 ID_Processo: forzar el cierre de un proceso y terminarlo.
  6. kill -1 ID_Processo: forzar un proceso para recargar la configuración.
  7. lsof -p $$: mostrar una lista de ficheros abiertos por procesos.
  8. lsof /home/user1: muestra una lista de ficheros abiertos en un camino dado del sistema.
  9. strace -c ls >/dev/null: mostrar las llamadas del sistema hechas y recibidas por un proceso.
  10. strace -f -e open ls >/dev/null: mostrar las llamadas a la biblioteca.
  11. watch -n1 ‘cat /proc/interrupts’: mostrar interrupciones en tiempo real.
  12. last reboot: mostrar historial de reinicio.
  13. lsmod: mostrar el kernel cargado.
  14. free -m: muestra el estado de la RAM en megabytes.
  15. smartctl -A /dev/hda: monitorear la fiabilidad de un disco duro a través de SMART.
  16. smartctl -i /dev/hda: chequear si SMART está activado en un disco duro.
  17. tail /var/log/dmesg: mostrar eventos inherentes al proceso de carga del kernel.
  18. tail /var/log/messages: mostrar los eventos del sistema.

Otros comandos útiles

  1. apropos …keyword: mostrar una lista de comandos que pertenecen a las palabras claves de un programa; son útiles cuando tú sabes qué hace tu programa, pero de sconoces el nombre del comando.
  2. man ping: mostrar las páginas del manual on-line; por ejemplo, en un comando ping, usar la opción ‘-k’ para encontrar cualquier comando relacionado.
  3. whatis …keyword: muestra la descripción de lo que hace el programa.
  4. mkbootdisk –device /dev/fd0 `uname -r`: crear un floppy boteable.
  5. gpg -c file1: codificar un fichero con guardia de seguridad GNU.
  6. gpg file1.gpg: decodificar un fichero con Guardia de seguridad GNU.
  7. wget -r www.example.com: descargar un sitio web completo.
  8. wget -c www.example.com/file.iso: descargar un fichero con la posibilidad de parar la descargar y reanudar más tarde.
  9. echo ‘wget -c www.example.com/files.iso‘ | at 09:00: Comenzar una descarga a cualquier hora. En este caso empezaría a las 9 horas.
  10. ldd /usr/bin/ssh: mostrar las bibliotecas compartidas requeridas por el programa ssh.
  11. alias hh=’history’: colocar un alias para un commando –hh= Historial.
  12. chsh: cambiar el comando Shell.
  13. chsh –list-shells: es un comando adecuado para saber si tienes que hacer remoto en otra terminal.
  14. who -a: mostrar quien está registrado, e imprimir hora del último sistema de importación, procesos muertos, procesos de registro de sistema, procesos activos producidos por init, funcionamiento actual y últimos cambios del reloj del sistema.

Fuente: DesdeLinux

TubeMate: Descarga vídeos de YouTube al móvil (#Android)

No suden tanto buscando apps para usar con YouTube dentro de Google Play. Si son novatos (y no tanto) con Android, les adelanto que no las encontrarán. Algunas alternativas de fuentes externas pueden ayudar con ciertas pequeñas necesidades que nos surgen espontáneamente a veces mirando un vídeo (¡sin pensar en porquerías!). TubeMate, un viejo conocido para muchos, es el aliado inmediato para descargas directas de YouTube al móvil si todavía están preguntándose cómo lograr cosa tal.

Las políticas de YouTube ya eran lo bastante latosas como para que nos queden ganas de usar el servicio desde un ordenador cualquiera; por supuesto que iban a ser más desafiantes desde un dispositivo con Android, desde el cual naturalmente no pueden hacerse varias cosas; entre ellas, utilizar aplicaciones que descarguen vídeos directos de YouTube. Hay ciertas alternativas que obviamente no encontrarán en Google Play para estas descargas, una de las más populares para usar sin privilegios rootposiblemente sea TubeMate.

TubeMate descarga vídeos de YouTube directo a tu Android - Descargar vídeos de YouTube (Android)

TubeMate descarga vídeos de YouTube directo a tu Android

La instalación de TubeMate no difiere mucho de otras aplicaciones no oficiales que utilizan en su dispositivo Android. El aparato debe estar configurado desde los Ajustes para poder instalar aplicaciones de orígenes desconocidos, y con eso verificado pueden ir accediendo por el sitio oficial de TubeMate a través del navegador instalado en el móvil. Seleccionando una fuente de descarga, ya pueden comenzar a instalarlo propiamente pinchando sobre el apk bajado.

¡Toca! - Descargar vídeos de YouTube (Android)¡Toca!

TubeMate tiene su tiempo y no está tan a la altura de lo nuevo en Android, pero no es una aplicación improvisada que usarán sólo por arte de piratear. Conecta normalmente con YouTube y sus secciones, listas y vídeos como cualquier aplicación, con la salvedad de que mirando un vídeo cualquiera podrán descargarlo o compartirlos con amigos sin necesidad de salir de ella, interrupciones o letreros de que están haciendo algo “prohibido y pecaminoso”. TubeMate alguna vez estuvo en la tienda de aplicaciones de Google. Los tiempos han cambiado un poco, ya ven.

Descarga:  TubeMate

visto en neoteo