Archivo de la categoría ‘linux’

VirtualBox: La mejor forma de tener Windows en Linux

vbox_logo2_gradientUna de las mejores formas de escapar al bajo rendimiento que ofrece Windows Vista a la hora de elegir un portátil es instalar Linux. La ganancia en rendimiento puede llegar a ser impresionante, y lo digo por experiencia propia.

El problema de trabajar con Linux es que, aunque las posibilidades y estándares avanzan a pasos agigantados, siempre va a haber problemas de compatibilidad para ciertas aplicaciones y, por qué no decirlo, hay programas exclusivamente disponibles para plataformas Windows muy superiores. Ejemplos de esto puede ser MS Office (OpenOffice está por detrás aún en prestaciones y no es 100% compatible) o Photoshop (GIMP está lejos de ofrecer las mismas posibilidades y facilidad de uso). Además, en mi caso, es fundamental poder probar la visualización de los desarrollos web que hacemos en esa lacra aún existente llamada Internet Explorer 6.

Hay algunas alternativas, como pude ser instalar Wine. No he probado las últimas versiones, pero las anteriores que probé no ofrecían todas las posibilidades a la hora de instalar programas que sólo funcionan en Windows.

Pero la mejor sin duda es la virtualización, y para ello existe una aplicación perfecta para este propósito: VirtualBox, desarrollado por Sun. Está disponible para sistemas operativos Windows y Linux, y a partir de ahí se pueden instalar máquinas virtuales de multitud de sistemas operativos.

De esta forma podemos tener un sistema Linux, con lo que ganaremos en velocidad y prestaciones entre otros beneficios y utilizar el lento y viejo Windows sólo para las aplicaciones que necesitemos.

Puedes elegir hacer máquinas virtuales de sistemas operativos Linux en un Windows o al revés, hacer máquinas virtuales Windows si tu sistema operativo es Linux. De esta forma puedes disfrutar de las dos opciones.

Monday, August 24th, 2009

Chrome para Linux

Ya es posibgoogle-chromele instalar el nuevo navegador de Google, Chrome, en sistemas Linux. No hay aún versión estable, pero podremos evaluar qué tal es la integración con nuestro PC. Lo primero que vamos a notar es un incremento de velocidad muy notable. Habrá que buscarse un poco la vida para hacer funcionar algunas cosas como Flash y posiblemente echemos de menos muchas de las extensiones de Firefox. Todas las instrucciones para instalar Chrome en Linux.com.

Una excelente noticia para los que usamos Linux en el día a día.

Monday, August 17th, 2009

Nos pasamos a Git como repositorio de código

Después de pasar media vida con CVS y la otra media con Subversion, hemos dado el paso en Acilia y vamos a utilizar Git como repositorio de código. La verdad es que las referencias eran muy buenas y, aunque el tener que aprender un nuevo sistema siempre es un poco duro, creemos que merece la pena.

El significado de Git en inglés es algo así como persona estúpida y desagradable y fue diseñado inicialmente por Linus Torvalds, que dejó algunas perlas para la historia, como viene siendo habitual en el personaje:

“I’m an egotistical bastard, and I name all my projects after myself. First Linux, now git.” – Linus Torvalds

For the first 10 years of kernel maintenance, we literally used tarballs and patches, which is a much superior source code management system than CVS is” – Linus Torvalds

When I say I hate CVS with passion, I have to also say that if there any SVN users in the audience, you might want to leave. Because my hatredof CVS has meant that I see Subversion as being the most pointless project ever started, because the whole slogan for the Subversion for a while was ’CVS done right’ or something like that. And if you start with that kind of slogan, there is nowhere you can go. It’s like, there is no way to do CVS right. – Linus Torvalds

Lo mejor de Git es que es un repositorio distribuido. O más que distribuido, es deslocalizado. Esto quiere decir que localmente tienes un repositorio de Git totalmente funcional, de hecho los commits se hacen contra tu repositorio local. Luego juntas tu código con otros repositorios (o normalmente un repositorio que todo el mundo usa de referencia).

Además del vídeo donde el amigo Linus hace la presentación, dejo algunos enlaces de referencia. (Gracias Raúl por ellos y animarnos a dar el paso!)

Referencias:

- Git fetch and pull video tutorial

- Tutorial de Git del Gsyc

- Git Cheat Sheet

Monday, July 20th, 2009

Backups por FTP con Bash Shell

Para evitar disgustos como le sucedió a ma.gnolia.com (que perdió todos los datos de sus servidores y no pudo recuperarlos), es buena idea tener un sistema de backups al día que te permita recuperarte de cualquier catástrofe. Como decía aquel doctor en la tele, es mejor prevenir que lamentar. Dejo por aquí un pequeño script que puede ayudar a la tarea. Realmente simple pero efectivo.

Los archivos: back_daily.ftp , back_monthly.ftp

Algunos comentarios de las partes que tienen (comentaré el daily):

  1. Tomamos la variable DAY con la fecha del sistema
  2. DAY=`date +%d`
    echo Backup for Day: $DAY

  3. Volcado de todas las bases de datos del sistema
  4. mysqldump -uUSER -pPASSWORD –all-databases > mysql_backups/mysql-latest.sql

  5. Zip con archivos y base de datos
  6. zip -r file_backups/files_back_$DAY.zip public_html/*
    zip -r file_backups/files_back_$DAY.zip hostx/*
    zip -r file_backups/files_back_$DAY.zip hosty/*
    zip -r file_backups/files_back_$DAY.zip hostz/*
    zip -r file_backups/mysql_back_$DAY.zip mysql_backups/mysql-latest.sql

  7. Subimos todo por FTP
  8. ftp -n HOST-DEL-SERVIDOR.com <
    user USERNAME PASSWORD
    binary
    cd target_directory
    lcd file_backups
    put files_back_$DAY.zip
    put mysql_back_$DAY.zip
    quit
    EOF

  9. Creamos un cronjob que ejecute el script (en este caso dos, uno diario y otro menusal) redirigiendo la salida a un log.
  10. 05 03 * * * /home/acilia/file_backups/back_daily.ftp >> /home/acilia/file_backups/log/back_daily.ftp.log
    05 03 01 * * /home/acilia/file_backups/back_monthly.ftp >> /home/acilia/file_backups/log/back_monthly.ftp.log

Y con esto sería suficiente para tener un respaldo contra catástrofes. Mediante este sistema, guardaríamos las copias diarias durante 1 mes y las copias mensuales durante 12 meses, aunque siempre sería modificable para que no se sobre-escriban los ficheros. En caso de utilizar estos mismos scripts, habría que tener cuidado con los directorios. En este caso se asume que existen (y tienen permiso de escritura) los directorios mysql_backups y file_backups en la raíz del usuario que ejecutará los scripts.

El script es básico y muy mejorable, no estaría de más echarle un ojo al bash y darle algún retoque… cuando tenga un rato ;-)

Wednesday, July 15th, 2009

Unir Documentos PDF en Linux

pdf1Últimamente ando atareado escaneando y enviando documentos para algunas cuestiones adminstrativas. Al no tener la posibilidad de tener Adobe Acrobat (el editor, no el reader) en Linux, hay que buscarse un poco la vida para poder unir varios documentos PDF en uno solo. Especialmente útil si has estado escaneando documentos con el Xsane y llegas a tener varias decenas que unir.

Hay una utilidad fantástica para eso, con un nombre muy descriptivo: JoinPDF. Se utiliza por command line, y la sintaxis, igualmente, no puede ser más sencilla:

joinPDF fichero_destino.pdf fichero1.pdf [fichero2.pdf ...]

Probado y funcionando a las 1000 maravillas, muy recomendable.

Monday, April 13th, 2009

1234567890 segundos desde el Linux Epoch

Circula por Facebook la invitación al evento más original que he visto en los últimos tiempos. El lugar de reunión es el PC Linux de quien quiera participar y la hora será el 13 de Febrero de 2009 a las 23:31:30. En ese momento, se cumplirán 1234567890 segundos desde el Linux Epoch. Para acudir a la cita, sólo hay que inscribirse tecleando esta instrucción en tu terminal, que mostrará la citada cifra, o acudir a la web que lo conmemorará.

date +%s

EL Epoch es un punto de referencia inicial donde se basan sistemas lógicos.
En Linux está establecido el 01/01/1970. Fechas de otros sistemas populares:

  • Mac Os: 01/01/1904
  • Windows: 01/01/1601
  • DOS: 01/01/1980
  • Cobol: 01/01/1601
  • C#: 01/01/0001

Hay un gran grupo de sistemas o lenguajes que comparten el 01/01/1971 como PHP, Python, Java y  Ruby.

Monday, February 9th, 2009

Borrar todas las tablas de una base de datos

Cuando llega el momento de borrar todas las tablas de una base de datos de MySQL desde el command line no queda más remedio que ir borrando tabla por tabla.

Pero me he encontrado por ahí una ingeniosa instrucción para hacerlo, una sóla línea de código en el command line:
mysqldump -u[USERNAME] -p[PASSWORD] –add-drop-table –no-data [DATABASE] | grep ^DROP | mysql -u[USERNAME] -p[PASSWORD] [DATABASE]
Los créditos del útil descubrimiento para Thingymajing.

Sunday, February 8th, 2009

“Comos” de Linux

Los Comos de Linux en castellano fueron un proyecto impulsado desde Insflug.org hace ya varios años. Me he encontrado el proyecto bastante abandonado, con errores de código y sin nuevos avances. Posiblemente el estallido del movimiento Web 2.0, donde las posibilidades de publicación web son mucho mayores para cualquiera, hayan hecho que el proyecto ya no tenga tanto sentido.

Sin embargo, el trabajo y el contenido son realmente interesantes. Estos comos ya formaban parte, aunque era simplemente enlazando el contenido, de aulaDigital. Hemos dado un impulso mayor y los hemos integrado completamente, haciéndolos totalmente navegables.

Son bastante antiguos y algunos ya no sirven de mucho (como el de la configuración de Infovía). Pero otros, como programación en Bash o conceptos de redes en Linux están de total actualidad.

Monday, January 26th, 2009

Tsunamis en La Península

Aunque pueda parecer algo típico de costas lejanas con alta actividad sísmica, no estamos exentos del riesgo. La actividad sísmica en La Península es moderada, pero existe.

La mayor catástrofe vino provocada por el llamado Terremoto de Lisboa, ocurrido en 1755. El terremoto fue devastador en Lisboa, donde el terremoto y posterior maremoto se cobró la vida de 50.000 personas y afectó a casi toda La Península. Como consequencia, un tsunami arrasó también el Golfo de Cádiz con olas de más de 10 metros, afectando especialmente a Conil y Ayamonte. En algunos puntos el agua entró más de 1 kilómetro en tierra.

Hay cierta actividad en el punto de choque de las placas africana y euroasiática, aunque no es de las más activas. Se calcula que una catástrofe de este tipo podría suceder cada 1000 años en la zona. No nos toca, pero si hay un temblor importante cerca de la costa o el mar se retira sospechosamente, mejor tirar tierra adentro!

El Instituto Geográfico Nacional tiene publicado un catálogo de tsunamis desde 218 a.c. La Unión Europea ha puesto en marcha un programa de investigación de este tipo de fenómenos en el Mediterráneo. No en vano, si miramos el histórico de tsunamis más importantes, nos encontramos varios episodios. De hecho, hay investigadores que sostienen que la desaparición de la Atlántida se produjo por una ola gigante.

Tuesday, January 20th, 2009

Configurar sonido en Ubuntu 8.04, Asus P5k, Chipset AD1981B

Dejo esto por aquí para no olvidarme de cómo hacerlo la próxima vez que actualice la versión de mi distro. Si has llegado aquí, posiblemente estés dándote cabezazos con el mismo problema. Hay solución.

El problema se produjo al actualizar a Ubuntu 8.04. El sonido dejó de funcionar y no había forma de hacerlo arrancar. Después de mucho buscar, encontré la solución en Alsa Project. Hay información para diferentes chipsets, con el que tenía el problema concretamente era con el AD1981B que viene con la placa base  Asus P5k. La página con los detalles de instalación está bien explicada y funcionó a la primera. Importante lanzar el alsamixer para configurar el sonido de la placa.

Saturday, January 17th, 2009