martes, 13 de enero de 2009

Pasar vídeos .3gp a Dvix, Mpeg ... etc y viceversa (Mobile Media Converter en ubuntu)

Hola amigos linuxeros, navegando por la red he dado con un programa infalible para pasar nuestros vídeos .3gp a cualquier formato soportado por este maravilloso programilla, que no son pocos. Pero principalmente yo lo buscaba por el 3gp.

Versión de Distribución utilizada: Ubuntu 8.10 Intrepid Ibex 32 bits

1º Descargar el Programa desde su pagina web: miksoft.net. (mmc_1.4.3_i386.deb, de los 4 paquetes disponibles bajamos el correspondiente a Ubuntu).

2º Instalar con nuestro gestor de paquetes (doble clic para los despistados).

3º Ejecutar el programa desde Aplicaciones--> Sonido y Vídeo-->Mobile Media converter.

Y se abrirá una ventanita como esta:






La cosa fácil viene ahora, le damos al botón + y añades el vídeo o los vídeos que quieras pasar de formato (aunque también puedes arrastrarlo directamente). Automáticamente el programa nos da de salida la ruta donde tengamos nuestro vídeo, pero siempre podemos escribirlo manualmente y darle la ruta que queramos, así como renombrar el archivo. Elegimos el tipo de formato que queremos para el vídeo y le damos al botón Convert

Y.. tachán!! aquí está el vídeo pasado de formato, y tan chulo.


(Recomiendo VLC, el mejor reproductor que he probado hasta el momento por la cantidad de formatos soportados).


También incluye un botón para descargar vídeos de Youtube.

Solo tenemos que pulsar el botoncito y darle la Url donde se encuentra el vídeo que queremos descargar, y decirle en qué directorio queremos guardarlo.


Los usuarios de 64 bits deberán forzar la instalación, dado que el paquete esta originalmente compilado para 32 bits, para ello escribimos en consola: (recordad que este comando se debe realizar dentro de la carpeta donde descargasteis el programa)

sudo dpkg -i --force-architecture mmc_1.4.3_i386.deb

También deberemos instalar las librerías de 32bits para que todo funcione correctamente:

sudo aptitude install ia32-libs

Con esto, tendremos la instalación completada y funcionando correctamente.

martes, 18 de noviembre de 2008

Compartir ficheros con samba

Samba es la mejor herramienta en derivados de UNIX para compartir recursos con otros equipos y también para acceder a los recursos que puedan tener compartidos. (También es la única que conozco, pero tampoco soy ningún gurú).

Comenzaremos por instalar el demonio samba con todas sus dependencias desde una terminal:
sudo aptitude install samba
Y después editar el archivo de configuración /etc/samba/smb.conf con cualquier editor de texto, yo usare nano:
sudo nano /etc/samba/smb.conf
Hay varias opciones que nos interesan. Yo indicare la forma de hacer funcionar el demonio sin demasiadas complicaciones. Las lineas precedidas de #(almohadillas) son comentarios. Las demás son opciones. Vamos a centrarnos en lo que son opciones, ignorando los comentarios.

Buscamos (Ctrl+W, desde nano) la línea que diga algo como :
workgroup = MSHOME
Debes cambiar MSHOME por el grupo de trabajo al que pertenecen las maquinas con quien quieras compartir recursos.

Busca ahora algo como guest account y ponlo de esta forma, (de no aparecer añade la opción):
; guest account = nobody (incluyendo el punto y coma inicial)
Después haz lo propio con la opción invalid users, y cambiala (o añadela), por:
invalid users = root
Ahora busca la linea que diga:
; security = user
Y la cambiamos por:
; security = share
También has de buscar (recordemos que es Ctrl+W desde el editor nano) usershare allow guests y ponerla de este modo:

usershare allow guests = yes
Ahora solo resta añadir, al final del fichero, los recursos que quieras compartir. Esta es la estructura que puedes seguir:
[Publico] -->Aquí puedes poner el nombre que quieras
path = /home/usuario/Publico/ --> ruta del directorio a compartir
avaliable = yes --> Disponibilidad/Visibilidad del recurso (si o no)
browsable = yes --> Permite navegar en los subdirectorios (si o no)
public = yes --> Acceso a cualquiera o solo a quien tenga cuenta en el equipo (si o no)
writable = yes --> Con derechos de escritura (si o no)
NOTA: Si pones la opción public = no deberás crear un usuario en la base de datos de samba para que ese usuario pueda acceder al recurso:
sudo smbpasswd -a usuario

NOTA2: Los permisos del sistema a la carpeta compartida deben permitir las opciones dadas en samba.
Para cambiar los permisos de sistema a una carpeta:
chmod 777 /home/usuario/Publico
Si no quieres que tengan permisos de escritura usa:
chmod 775 /home/usuario/Publico
Y cambia la opción writable del recurso compartido en el archivo de samba a no.

Cierra el editor nano (Ctrl+X), salvando los cambios y reinicia el demonio de samba:
sudo /etc/init.d/samba restart
Y tras esperar un rato (tarda un poco en refrescar todo) podrás ver tus carpetas compartidas desde los demás equipos.

Tan solo queda la posibilidad de que el recurso a compartir sea una carpeta dentro de otra partición o disco duro. En este caso no podrás cambiar los permisos, ya que son dados por el sistema al realizar el montaje de la partición.

Yo recomiendo usar /etc/fstab para programar las particiones que han de ser montadas en el inicio y con que permisos se han de montar.
sudo nano /etc/fstab
Pondré un ejemplo de partición montada en /etc/fstab y con los permisos necesarios para compartir con samba:
# /dev/sdb1
UUID=26BC0818BC07E0E3 /media/discoE ntfs defaults,umask=002,gid=46 0 1
La primera linea es un comentario para identificar a que partición hace referencia la linea siguiente, puede poner lo que quieras. La segunda linea es la importante;
El UUID (el identificador universal de la partición, Universal Unique IDentifier) de una partición lo puedes obtener con:
sudo vol_id -u /dev/sda3 (reemplaza a por el disco en cuestión -a,b,c,etc- y 3 por la partición que sea)
Después del UUID hay que poner la dirección a la carpeta vacia donde se debe montar la partición, y el sistema de archivos de la esta (ext4,ext3, vfat, ntfs...). La opción umask es la que nos interesa, en mi caso la puse en 002, es como chmod, pero a la inversa, osea va restando desde los números mas altos, que seria 777 (acceso total). 777 - 002 = 775. Así fstab monta la partición en la ruta dada con máximos derechos al dueño y grupo y al resto solo derechos de lectura y ejecución. Y ya puedes compartir la partición, o una carpeta dentro de esta, con el resto de la red. Si quieres que se pueda escribir desde la red el umask deberá ser 000.

Por ultimo tras modificar fstab habría que desmontar y volver a montar todo:

sudo umount -a
sudo mount -a
Y volver a reiniciar el demonio Samba:

sudo /etc/init.d/samba restart
Con todo esto ya podemos compartir archivos sabiendo que permisos son los que damos a cada recurso compartido.


jueves, 13 de noviembre de 2008

Virtualizacion con KVM

Hace poco, instalábamos Virtual Box OSE (Open Source Edition) para la virtualización de otros sistemas operativos. Hoy vamos a hacer lo propio pero usando el modulo KVM (Kernel Virtual Machine), el cual esta incluido en el kernel Linux desde su versión 2.6.20.

Tan solo necesita de un requisito y es que el procesador del equipo tenga soporte para la virtualización por hardware (los últimos procesadores de Intel y AMD ya incorporan esta característica, aunque no todos).

Si quieres confirmar que tu procesador cuenta con el soporte necesario para correr KVM, tipea en la consola esto:

Para procesadores Intel
grep vmx /proc/cpuinfo
Y para los AMD
grep svm /proc/cpuinfo

La salida debe ser similar a esta (en el caso de Intel):
usuario@host:~$ grep vmx /proc/cpuinfo
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc up arch_perfmon pebs bts rep_good pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr lahf_lm

NOTA: De no aparecer el soporte de KVM (vmx o svm según la CPU) puede que este deshabilitado en la BIOS de tu equipo. Si en la BIOS no aparece la opción para activarlo puede que la placa/bios no lo soporte o sencillamente que tengas uno de los pocos procesadores sin las extensiones de virtualización por hardware. Si es tu caso, y aun así quieres virtualizar consulta el artículo anterior a este sobre la instalación y configuración de Virtual Box OSE.

Una vez realizadas la precauciones pertinentes, podemos proceder a instalar todos los paquetes necesarios.
sudo aptitude install kvm virt-manager qemulator
Para poder usar kvm necesitamos pertenecer a su grupo de usuarios o iniciarlo como root, así que añadimos nuestro usuario al grupo "kvm"
sudo adduser dukkon kvm --> Cambia dukkon por tu usuario del sistema

Solo resta reiniciar nuestra sesión (logout y login) y ya podemos probar a tipear en un terminal:

kvm
Si no devuelve ningún error y en su lugar aparece una lista de las opciones y parámetros de uso del KVM todo ha ido perfecto.

Ahora os diré como logré crear una maquina con winXP, por que la verdad no fue tan intuitivo como con VirtualBox, pero la fluidez y robustez con que trabaja KVM en comparación con VBox merece la pena.
Primero tuve que crear un archivo de imagen que utilizaría como hda (primer disco duro) con la orden:
qemu-img create nombre_del_disco_duro_virtual.img [tamaño en KB]
Por ejemplo:
qemu-img create WinXPKvm.img 5000000
Después tuve que crear la maquina virtual con qemulator (Aplicaciones-> Accesorios-> Qemulator), que no soporta KVM, pero es compatible.

NOTA
:Si en algun momento veis algo de Kqemu, tan solo es una capa de aceleración para qemu que además es inestable, no tiene nada que ver con kvm. Así pues lo ignoraré por completo y recomiendo hacer lo mismo...


Pulsad el botón con el símbolo "+ " para crear una nueva maquina virtual.



En la ventana que se abrirá, dá un nombre a la maquina y si quieres un icono para identificarla. En "system type" es aconsejable poner el tipo de arquitectura que tengamos funcionando actualmente, osea si tenemos una CPU de 64b y Ubuntu (u otro) de 64bits, es recomendable virtualizar también en 64bits. Reserva una cantidad de RAM para el equipo virtual, teniendo en cuenta el total de RAM disponible y la usada por tu sistema normalmente.
Después añade una imagen de CD para instalar el sistema virtual o un dispositivo real, si dispones del CD/DVD.
Ahora vamos a la pestaña de "Advanced":

Aquí solo hay poner como primer disco duro (hda) la imagen de disco que creamos antes con el comando qemu-img. Aceptamos y de nuevo en la ventana de Qemulator y con el nuevo equipo seleccionado, hacemos clic en "show settings".

Lo mas destacable aquí es en la pestaña "Hardware", donde puedes elegir una tarjeta de sonido a emular (a mi me funciono emulando la -ENSONIQ AudioPCI ES1370-); y en la pestaña "Network" donde puedes activar la opción -SMB Share-, para usar los recursos compartidos con Samba en el sistema invitado (Carpetas, impresoras, etc...).

Una vez todo configurado, clic en "Save" y, después, en el boton de arriba a la derecha con el icono de "reproducir".

Ejecutara la maquina virtual sobre la que podrás instalar el sistema operativo elegido anteriormente. Cuando termines de instalar el sistema, y si no necesitas requerir mas de ningún CD/DVD o imagen de estos, ya puedes usar kvm para "arrancar" la imagen del disco duro virtual con el nuevo sistema recién instalado dentro.
Prueba a crear un lanzador en tu escritorio o panel de Gnome con esta orden:
kvm "/ruta/del/disco/imagen/entrecomillada.img"
Una vez confirmado que funcione todo correctamente, podéis ir añadiendo opciones a la orden anterior. Tipeando en un terminal kvm salen todas las opciones disponibles pero yo os diré las mas comunes, al menos en mi caso:

-soundhw es1370 <-para cargar la emulación de la tarjeta de sonido.
-m 256 <- para asignar la cantidad de RAM reservada (por defecto se carga con 128Mb) -localtime <- Tuve que añadir esto, por que iniciaba la maquina virtual con la hora retrasada)
-cdrom "/ruta/de/la/imagen/entrecomillada.iso"
<- Puedes añadir esto para que use una imagen como CD/DVD virtual. Como decía antes, en mi caso el lanzador quedaría así:

kvm -m 256 -localtime -soundhw es1370 "/home/dukkon/WinXPKvm.img"

Notad que arriba en el nombre del visualizador aparece ahora QEMU/KVM, además de que se notara en la velocidad y fluidez de ambos sistemas (el anfitrión y el invitado).

Una cosa más, para quienes gustan de trabajar en pantalla completa; usad la combinación Ctrl+Alt+F para entrar y salir del modo "fullscreen".

lunes, 10 de noviembre de 2008

Crea maquinas virtuales con Virtual Box

Virtual Box OSE (Open Source Edition) nos permite crear maquinas virtuales donde poder instalar otros sistemas operativos. Dicho de otro modo podemos hacer funcionar un sistema basado en WindowsXP o OpenSolaris dentro de una ventana sin tener que salir de nuestro escritorio Gnome.

Con Ubuntu hace tiempo que esta incluido en los repositorios, (existe no obstante una opción mas poderosa,el modulo kvm, pero centremonos en el caso que nos ocupa) para instalarlo teclea:
sudo aptitude install virtualbox-ose
Adicionalmente necesitaras instalar un modulo para el kernel dependiendo de la versión del kernel que tengas instalada, para conocer tu versión del kernel tipea:
uname -r
Que en mi caso me devolvió esto:
2.6.27-11-generic
El modulo a instalar en mi caso seria: "virtualbox-ose-modules-2.6.24-19-generic", así pues en consola escribe:
sudo aptitude install virtualbox-ose-modules-2.6.27-11-generic (donde 2.6.24-19-generic correspondería a la versión del kernel que uses)

NOTA: En lugar de los pasos anteriores puedes tipear directamente esto:

sudo aptitude install virtualbox-ose-modules-uname -r

Ahora solo nos resta añadir nuestro usuario al grupo de virtual box (vboxusers) para poder usarlo como usuario:
sudo adduser dukkon vboxusers --> Cambia dukkon por tu usuario del sistema

Ahora ya puedes iniciar Virtual Box OSE desde el menú Aplicaciones->Herramientas del sistema.


En Archivos->Preferencias podéis cambiar la ruta donde se guardaran los "discos duros virtuales" de las "maquinas virtuales" que creéis. (Un poco lioso, ya se...).
También puedes cambiar la tecla "Host", tecla que habrás de pulsar para que la ventana del sistema invitado (el virtual) deje de retener el ratón en "su ventana". (Si, esto también es un lío jeje).

A la hora de crear una nueva maquina virtual, pulsad el botón de "Nueva", y continuar los pasos sugeridos, completando el nombre de la maquina virtual, el sistema que vamos a instalar en ella, la memoria RAM y la cantidad de disco duro que reservaremos para esta.

domingo, 9 de noviembre de 2008

Trabajando con imágenes de CD o DVD

En Linux disponemos de una gran aplicación para montar distintos tipos de imagen de cd (.nrg, .ccd, .iso, etc). Se trata de AcetoneISO:


Además de montar varias imágenes y de distintos tipos también hace otras cosas:
  • Dividir/unir imágenes de disco en partes
  • Comprimir/descomprimir imágenes (7zip)
  • Encriptar/desencriptar imágenes
  • Convierte desde otros tipos de imagen a ISO(MacOS, bin, mdf, img, cdi, nrg, etc...)
  • Extraer contenidos de imágenes de CD/DVD
  • Genera archivos de imagen desde un CD/DVD o un directorio
  • Ripea CD de PSX1 para emulador epsxe
  • Extrae Audio-CD
  • Descarga vídeos de youtube
  • Convierte DVD-Vídeo, Flv y otros formatos a AVI(xvid)
  • Reproduce DVD-Vídeo
Para conseguir este fabuloso programa tan solo tienes que descargarlo en formato .deb desde la web de getdeb.net:
http://www.getdeb.net/app/AcetoneISO
Descarga al versión correspondiente a tu arquitectura (en mi caso la Intrepid 64 Bits). Tras completar la descarga instala el paquete deb haciendo doble clic en él. Ya lo tienes instalado, pero ahora hay que hacer unas modificaciones para que te deje montar archivos de imagen como usuario.

AcetoneISO usa el modulo fuseiso para montar. Tu usuario debe añadirse al grupo fuse. Dependiendo del paquete que instales, esto puede hacerse de forma automática durante la instalación, pero yo tuve que hacerlo manualmente..

Abre un terminal y escribe:

sudo modprobe fuse
sudo chmod 4755 /bin/fusermount
-->podria ser /usr/bin/fusermount dependiendo de la distribución usada
sudo chmod o+rw /dev/fuse
sudo addgroup [tu-usuario] fuse
--> Por ej: addgroup dukkon fuse
Después de eso, y creo que por usar Gnome, tuve que hacer algún cambio mas para que todo funcionase al 100%. Inicia el AcetoneISO desde el menú de Aplicaciones->Sonido y vídeo->AcetoneISO y ve a File->Options

En Iso from folder elegí User Settings.
En Media player elegí VLC.
Y en File manager, Nautilus.

Tras todo esto ya podía montar imágenes haciendo clic directamente al botón de montar, además me genera un directorio (~/virtual-drives/) con capacidad para montar varias imágenes al mismo tiempo.