Blog

  • VirtualBox no me funciona con mi nuevo Intel 11va generación

    Cambié laptop hace poco, y en el proceso pasé de Fedora 36 a Fedora 38.
    (Mala idea, no esperen tanto para actualizar).

    Al tratar de levantar máquinas virtuales en VirtualBox, esta se congelaba. A tal punto que para matar los procesos no limpiaban nada. Reiniciar los servicios tampoco, porque no se terminaban de limpiar los módulos de kernel cargados.

    Estoy usando al momento kernel 6.3.8-200.fc38.x86_64, y claro… probé varias alternativas… incluso con el de fc37 que instalé primero.

    En el journal del laptop se veía claramente un error lanzado desde el kernel, así que me puse a buscar de que era.

    Al rato llegué hasta la página de VirtualBox en la Wiki de ArchLinux, en donde encontré justo lo que me estaba ocurriendo.

    Congelación durante el inicio de la máquina virtual con CPU Intel de 11.ª generación y versiones posteriores

    Si el mensaje traps: Missing ENDBR y kernel BUG at arch/x86/kernel/traps.c aparece en el journal , puedes intentar agregar ibt=off como un parámetro del kernel . Parece estar vinculado a FS#74891 .

    Página de VirtualBox en la Wiki de ArchLinux, sección 5.25.

    Entonces existe una incompatibilidad con mi nuevo procesador y no con Fedora 38. Aplique la sugerencia, y ¡magia!. Ahora las máquinas virtuales ya no se congelaban y se todo funcionaba como se esperaba.

    Para aplicar el parámetro con ese valor, ejecuten el siguiente comando y luego reinicien:

    sudo grubby --args="ibt=off" --update-kernel=ALL

    Ojalá les sirva. 😉

  • Vagrant 2.2.6 no funciona en VirtualBox 6.1.0

    Basado en https://github.com/oracle/vagrant-boxes/issues/178, vagrant en su versión 2.2.6 aún no sabe que existe VirtualBox 6.1.

    Así que para quienes usamos Fedora 31, toca editar manualmente el archivo /usr/share/vagrant/gems/gems/vagrant-2.2.6/plugins/providers/virtualbox/driver/meta.rb y agregar a la variable driver_map el elemento que permitirá que se utilice en 6.1, el mismo driver que en 6.0

    "6.1" => Version_6_0,

    Imagen que muestra la línea a agregar
  • Speed up rsync

    Hace un tiempo en Speed up rm, les conté como ejecutar en paralelo muchos rm’s para borrar muchos archivos. ¡Pues ahora les traigo lo contrario!

    ¿Qué pasa cuando quienes copiar muchos archivos o directorios que son muy grandes?  ¡Pues acá el paralelismo también nos ayuda!

    Usualmente se usa rsync para este tipo de labores, pero cuando son muy grandes y muchos, esto se puede volver brutalmente lento.

    Por ejemplo, si quisiéramos copiar todos los datos del un servidor mysql hacia el /var/lib/mysql/data de otro servidor podemos ejecutar algo como esto:

    cd /var/lib/mysql/data
    ls | xargs --max-procs=4 -I% rsync -avz % root@servidorDestino:$PWD/

    Con esto, vamos a ejecutar 4 rsync’s en paralelo con 1 archivo o directorio cada uno (ya que -I implica –max-args=1), desde el servidor local al servidorDestino.

    Notas:

    • En el servidor local, se debe bajar el servicio mysql primero, do’h!
    • Se asume que el directorio /var/lib/mysql/data está creado y vacio en el servidor de destino.
    • Se utilizó ssh para realizar la conexión.
    • La autenticación se realizó utilizando llave ssh. Esto es altamente recomendable, si no, por cada rsync deberán introducir una contraseña.

    ¡Ojalá les sirva!

  • Speed up rm

    ¿Han tenido alguna vez que borrar muchos archivos en un mismo, pero son tanto que se aburren de esperar que eso suceda?

    Pues, a mi me pasa regularmente con directorios que contienen millones de archivos pequeños.

    Acá, rm es muy lento, ya que el borrado se hace en serie… uno por uno… Seremos abuelos antes de que termine. 🙁

    ¿Y no se puede paralelizar?
    Por supuesto que si se puede acelerar rm!!

    Que les parece si creamos 100 procesos de rm que borren 1000 archivos cada uno?

    ls | xargs --max-args=1000 --max-procs=100 rm -f

    Y bueno, pueden ser tan creativos como quieran….

    find $directory -mmin +$seconds -type f | xargs --max-args=1000 --max-procs=100 rm -f {} \;

    Que lo disfruten! 😉

  • Guía para hacer cafe

    Hace más de 1 año que no escribo nada por acá, no me siento nada orgulloso, ni tampoco merezco una medalla por ello. No tengo ni que pensar mucho para encontrar el porque, es solo por tiempo… pero porque no me hago el tiempo de escribir algo.

    La imagen es antigua, pero la encontré hace unos días, y pensé que era algo bueno para re-comenzar a escribir en mi blog.

    Yo reconozco que el espresso doble es el mio.
    ¿Y el tuyo?