Tag Archive | Slackware

KVM y libvirt en Slackware

KVM (Kernel-based Virtual Machine) es una de las mejores soluciones para virtualización dentro del kernel de Linux, junto a libvirt, que no es mas que un conjunto de herramientas para administrar KVM, juntos son una poderosa combinación para poder trabajar en entornos de desarrollo o en producción.

KVM ya se encuentra habilitado en los kernels entregados por Slackware, por lo que solamente hay que corroborar que nuestra máquina tenga soporte para virtualización, como Intel-VT o AMD-V, aunque actualmente la mayoría de procesadores para PC de escritorio o laptops tienen éste soporte, pero podemos verificar las CPU flags de la siguiente manera:

Para procesadores AMD:

$ grep --color svm /proc/cpuinfo

Para procesadores Intel:

$ grep --color vmx /proc/cpuinfo

La salida de éstos comandos debe darnos información con las flags del CPU que tenemos disponibles, de lo contrario sabremos que no contamos con un procesador adecuado para virtualizar.

Instalación de un entorno libvirt

Para instalar libvirt en Slackware es necesario instalar previamente varias dependencias, lo que puede resultar tedioso si no tuviésemos a la mano el repositorio de SlackBuilds.org (SBo).

La instalación es simple, podemos descargar los slackbuilds o bien utilizar sbopkg, seguir las listas de dependencias e instalarlo, siempre recordando leer los README para evaluar la instalación de paquetes opcionales, en especial con el paquete netcat-openbsd que suele tener problemas con otros paquetes.

Es importante tomar en cuenta que el slackbuild de libvirt viene por defecto para usar el grupo users del sistema, pero yo recomiendo tener otro grupo específico para poder aislar a otros usuarios del uso y administración de libvirt y las máquinas virtuales. La mejor forma es crear un grupo y luego añadir a los usuarios que necesiten virtualizar a éste grupo:

# groupadd libvirt
# gpasswd -a nombre-usuario libvirt

El comando gpasswd agregará a el usuario que necesitemos al grupo libvirt, o bien podemos modificar el archivo /etc/group y agregarlo manualmente. Los usuarios deberán reiniciar su sesión para poder cargar los permisos.

Es recomendable instalar otras herramientas como virt-manager, que no es mas que un administrador gráfico para libvirt, pero necesita muchas otras dependencias de gnome.

Qemu se debe instalar para poder crear las máquinas virtuales o bien utilizar la alternativa de Xen, pero ésta ultima tiene la desventaja de que solamente se podrá instalar en sistemas de 64 bits. Es importante agregar qemu al mismo grupo de virtualización al momento de compilarlo (KVMGROUP=libvirt).

Algunas herramientas extras son openvswitch y usbredir, que pueden agregar muchas mas funcionalidades a la creación y uso de nuestras maquinas virtuales.

Cambiando la carpeta de almacenamiento de libvirt

Libvirt por defecto utilizará la carpeta /var/lib/libvirt/images como la carpeta para crear las imágenes de los discos de nuestras máquinas virtuales, pero algunas veces necesitamos que las imágenes las tengamos en una unidad aparte, o una partición con mucho mas espacio.

Lo primero es asegurarnos de crear la carpeta donde queremos almacenar las imágenes de los discos de las máquinas virtuales:

# mkdir /nueva/carpeta/para/imagenes

Los permisos de acceso son importantes a ésta carpeta, solamente root debe poder accederlas:

# chown root:root /nueva/carpeta/para/imagenes
# chmod 755 /nueva/carpeta/para/imagenes

Para cambiar el pool de almacenamiento principal de libvirt a otra localidad podemos hacer uso de la herramienta virsh:

# virsh pool-destroy default
# virsh pool-undefine default
# virsh pool-define-as --name default --type dir --target /nueva/carpeta/para/imagenes
# virsh pool-autostart default
# virsh pool-build default
# virsh pool-start default

Los comandos anteriores primero realizan una destrucción de la información del pool default, luego lo eliminan de las definiciones para las máquinas virtuales, para luego crear una nueva definición, con el mismo nombre “default”; luego coloca de nuevo el pool “default” para que se habilite automáticamente al iniciar el servicio de libvirt; el comando pool-build se encarga de crear la información de la nueva carpeta, colocando información de tamaño y permisos, importante para que el sistema pueda saber cuanto espacio tiene disponible para las máquinas virtuales; y por último se inicia el pool “default” para que pueda ser utilizado.

Ahora solo resta divertirse con la virtualización.

Cambio de etiquetas para pendrives desde línea de comandos

Al momento de comprar una pendrive (nueva memoria USB) siempre tenía el incoveniente de cambiarle la etiqueta, ésto no es tan fácil ya que Linux por defecto no usa sistemas de archivos FAT, por lo que no funciona un simple click derecho.

En cambio es mas fácil desde línea de comandos en un solo paso pero hay que configurar una aplicación:

Lo primero es tener instalado el paquete floppy, que en el caso de slackware viene por defecto en una instalación completa, y si por alguna razón no lo han instalado lo mejor será ir a la carpeta a/ del disco de instalación e instalar el paquete floppy.

Una vez instalado solo resta configurarlo adecuadamente, el archivo /etc/mtools.conf trae ya unos datos de ejemplo, lo que debemos agregar al final del archivo es una línea como la siguiente (editando como superusuario “root”):

drive p: file="/dev/sdb1"

donde “p” es el nombre de una unidad como en DOS, por ello va acompañado de “:” y puedes escoger el nombre de letra que desees; luego el argumento de file debe ser la dirección hacia el dispositivo que deseamos administrar con ésta herramienta, que para ejemplo he colocado /dev/sdb1, ya que actualmente los discos son numerados con la nomenclatura /dev/sdX#, siendo X una letra, comenzando por “a” según el disco físico y # el número de partición, por lo que hay que tener cuidado en conocer realmente que nomenclatura ha sido asignada a nuestra pendrive.

Una vez configurado el archivo, puede ser usado para cualquier otro dispositivo que sea reconocido con ésta nomenclatura.

Para finalizar debemos crear un archivo en nuestra carpeta de usuario (no root):

$ cd ~
$ echo "mtools_skip_check=1" >> .mtoolsrc

y ahora es tiempo de cambiar etiquetas a nuestras pendrives:

$ mlabel p:NombreUSB

donde “p:” es la unidad que configuramos previamiente y lo que sigue a continuación es el nombre de la pendrive, que no debe pasar de 11 caracteres.

Si deseamos ver los cambios solo debemos verificar con:

$ mlabel -s p:

Configuración de modem tigo

Después de un tiempo sin colocar un post, me decidí a escribir un post sobre como configurar un modem tigo HUAWEI  para Guatemala utilizando wvdial, probado con varios modems en especial para el modelo E160.

Para ello se necesita instalar dos paquetes, disponibles desde slackbuilds.org wvstreams y wvdial y ejecutar luego como root

# wvdialconf

y luego de que nos genere la configuración para nuestro modem podemos configurarlo como el siguiente ejemplo, ya sea añadiendo o modificando las líneas del archivo de configuración.

[Dialer Defaults]
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CGDCONT=1,””,”broadband.tigo.gt”
Modem Type = Analog Modem
Phone = *99#
Modem = /dev/ttyUSB0
Username = tigo
Password = tigo
Baud = 460800

dependiendo de la velocidad del modem habrá que ajustarlo.

Para terminar solo deben ejecutar

# wvdial

Si les funciona la configuración para otros tipos de modem pueden dejar su comentario para ir incrementando la lista de modems que funcionan con estos datos.

ccache en Slackware

Cuando un usuario de Slackware añade software a su sistema normalmente debe compilarlo, o bajar paquetes de algún lugar; siempre es mejor administrar lo que se instala por medio de la paquetería de slackware para que podamos desinstalar y actualizar fácilmente y sin problemas.

El problema viene cuando no disponemos de un Slackbuild, ya sea para la versión que necesitamos o por que simplemente no existe un paquete para el software; una solucion es hacer el paquete mediante makepkg; la mas recomendable es hacer nuestro propio Slackbuild y solo modificarlo para cada versión del software que instalemos.

Esto trae siempre otros problemas, ya que si por algún motivo no pusimos algún parámetro al configure o no configuramos adecuadamente el paquete, la recompilación del mismo nos lleva mucho tiempo, con lo cual hacer Slackbuilds de programas muy grandes suele ser tedioso.

La mejor solución es utilizar ccache, que es un programa que nos guardará una cache de lo que compilemos; con esto aceleraremos la compilación de programas, ya que si el codigo a compilar es identico a lo que ccache ya tiene, simplemente será reemplazado y solamente compilara lo nuevo.

Ccache no solo nos ayudará en la compilación de paquetes de software que descarguemos de internet; si trabajamos en el área de desarrollo de software basado en lenguaje C o C++ tendremos a la mano un buen programa que nos ahorrará mucho tiempo en la compilación, mas a la hora de eliminar bugs en programas grandes.

Configurando ccache

Lo primero es darle una lectura a la página de manuales de ccache, luego podemos proceder a gener lo que necesitamos.

Normalmente podemos tener ccache Leer Más…

Slackware 12.2 listo para descargas

Después de algún tiempo sin postear algo, por cuestiones de tiempo, regreso para anuciar la salida de Slackware 12.2, luego de haberlo leído en el blog de Willy Sudiarto y que por medio del IRC y otros medios de comunicación, ChamanGT y otros me lo comentaron.

El nuevo Slackware 12.2 tra:

  • Kernel Linux 2.6.27.7
  • Xorg 1.4.2 server ( con mas drivers, librerías y actualizaciones)
  • Xfce 4.4.3,
  • KDE 3.5.10,
  • Wicd en los /extra,
  • slackpkg trasladado desde los extras hacia la rama principal
  • libgphoto2 para camaras con protocolo PPT,
  • pm-utils para soporte de hibernación por medio de HAL
  • Y mucho más

Hay que tomar en cuenta que como siempre, se mantiene un compromiso de estabilidad para la serie 12.x de Slackware, por lo que los que tienen versiones anteriores simplemente puede actualizar los paquetes con slackpkg 🙂

Pueden descargar las iso desde la página de Slacware
http://www.slackware.com/getslack/

Pueden descargar los 6 discos en CD o la iso en DVD
ftp://slackware.mirrors.tds.net/pub/slackware/slackware-12.2-iso/

O bien utilizar Torrents 😉
http://www.slackware.com/getslack/torrents.php

Revisión de GSB 2.22.1 para slackware 12.1

Con la necesidad de utilizar algunas de las librerías de Gnome en mi Slackware 12.1 me decidí de nuevo por GSB (GnomeSlackBuild – gnomeslackbuild.org), para mi una de las mejores paqueterías de Gnome para Slackware, la instalación sigue siendo sencilla, simplemente con el slapt-get, como lo mencioné anteriormente, solamente cambiando la dirección del repositorio para gsb-2.22.

Ahora me decidí a instalarlo en forma personalizada, solamente gsb-desktop, gsb-administration, gsb-multimedia, gsb-themes y gsb-ooo, ademas de hacer actualizaciones de firefox y otras librerías necesarias para que Gnome funcione correctamente, con lo cuál ya pude iniciar Gnome sin mayores problemas.

El inicio

Lo primero que notamos es la clásica Leer Más…

Openoffice 2.4 en Slackware 12.1

Antiguamente había ya hecho mención de como instalar OpenOffice 2.3 en Slackware, y sigue funcionando la forma de instalación, con el script, la diferencia es que para la integración una vez mas he preparado un paquete, que lo pueden descargar acá el cual es específicamente para la versión 2.4.0.

Los pasos de instalación siguen siendo exactamente los mismos con el script, salvo por la parte donde se descomprime el archivo que se descarga de la página oficial de OpenOffice.

Aunque por el momento no tengo en utilización la versión directa de OpenOffice, en otro post les comentaré que estoy utilizando actualmente 🙂

Enlaces:

Paquete de integración de OO para Slackware 12.1 ->http://www.box.net/shared/6mdr58zs40
Instrucciones de instalación ->http://slackdhabyx…openoffice-230-en-espanol-en-slackware-12/