30 de des. 2008

USB en VirtualBox 2.1 (Intrepid y Hardy)

La mayoría de las veces cuando acabamos de instalar virtualbox, podemos encontrarnos con el problema de no poder usar los dispositivos usb en la máquina virtual, esto al parecer se debe por un error en un fichero de virtualbox, en el que tenemos que habilitar la detección de los dispositivos.

En Intrepid:

sudo gedit /etc/init.d/mountdevsubfs.sh

y poner debajo de do_start () { y antes del }:

## Mount the usbfs for use with Virtual Box
domount usbfs usbdevfs /proc/bus/usb -onoexec,nosuid,nodev,devgid=nnn,devmode=664


En hardy:

sudo gedit /etc/init.d/mountdevsubfs.sh

Y eliminar las # de las siguientes lineas:

mkdir -p /dev/bus/usb/.usbfs
domount usbfs "" /dev/bus/usb/.usbfs -obusmode=0700,devmode=0600,listmode=0644
ln -s .usbfs/devices /dev/bus/usb/devices
mount --rbind /dev/bus/usb /proc/bus/usb


Para ambos:

VBOX=$(grep vboxusers /etc/group | sed 's/vboxusers:x:\(.*\):.*/\1/')

sudo mount -t usbfs -o devgid=$VBOX,devmode=664,nodev,noexec,nosuid none /proc/bus/usb

sudo addgroup --system usbfs

Ojo, en el siguiente comando cambia usuario por tu nombre de usuario:

sudo adduser usuario usbfs

cat /etc/group | grep usbfs | sed -e 's/.*:.*:\([0-9]*\):.*/\1/' | xargs -iUSBFS_ID echo none /proc/bus/usb usbfs devgid=USBFS_ID,devmode=664 0 0 | sudo tee -a /etc/fstab


Ahora reinicia y listos! Recuerda que debes instalar las Guestadditions en la máquina virtual antes de todo esto.

Saludos.

cryptsetup: WARNING: found more than one resume device candidate

Si os da el error del título, estáis de enhorabuena, aquí os posteo la solución (al menos para mi):

sudo update-initramfs -u -k all

Este es el error en cuestión que me daba a mi:

update-initramfs: Generating /boot/initrd.img-2.6.24-22-generic
cryptsetup: WARNING: found more than one resume device candidate:
/dev/sda2
UUID=cf42bfa2-543a-4d69-898d-e17cd33c721c


Solución:

Así sabremos en que partición está el swap:

sudo fdisk -l /dev/sda

sudo vol_id -u /dev/sdaX

Donde X es el número que corresponda a la swap.

Ahora editaremos el archivo resume:

sudo gedit /etc/initramfs-tools/conf.d/resume

Marcamos con # lo que haya y añadimos la partición de swap con /dev/sdaX, quedando así:

#RESUME=UUID=b266a032-7f45-42eb-93ec-95628dc1e9ca
RESUME=/dev/sdaX


Listos, ahora al ejecutar el comando inicial (sudo update-initramfs -u -k all) ya no dará error y lo hará de forma correcta.

Saludos.

20 de nov. 2008

Hibernar en Ubuntu

¡¡¡¡¡EDITADO!!!!!
Saludos a todos! Lamento el parón de estos días, pero he estado un poco liado con trabajo y estudios.

Ahora os paso a comentar como solucioné el problema de hibernar en Ubuntu, algo que no conseguía hacer des de hace año y medio :)

Aquí va la solución.

Entrar en Synaptic e instalar uswsusp e hibernate, aquí te dirá que no puede configurar correctamente la partición swap,ningún problema.

Editamos /etc/uswsusp.conf, que debe quedar más o menos así:


resume device = /dev/sda2
splash = n
compress = y
early writeout = y
RSA key file = /etc/uswsusp.key
shutdown method = shutdown


Substituyendo /dev/sda2 por la que corresponda a tu swap.

Ahora probamos que tal:

sudo s2disk

Tarda un poquito y puede que te salga una pantalla llena de cuadritos, tranquilo, es normal. A mi me sale de vez en cuando, pero lo normal es que salga un texto en el que te dice que tal va el progreso de hibernación.

Una vez hibernando, le damos al botón de arrancada y listos, ya hibernamos.

Ahora editaremos el archivo /usr/lib/hal/scripts/linux/hal-system-power-hibernate-linux
para poder hibernar sin tener que acudir a la terminal y poner s2disk.

Primero copia de seguridad:

sudo cp /usr/lib/hal/scripts/linux/hal-system-power-hibernate-linux /usr/lib/hal/scripts/linux/hal-system-power-hibernate-linux.bak

Ahora editamos, borra todo lo que hay en /usr/lib/hal/scripts/linux/hal-system-power-hibernate-linux:

sudo gedit /usr/lib/hal/scripts/linux/hal-system-power-hibernate-linux

Y pon esto:

#!/bin/sh
/sbin/s2disk

-----------------------------------------------------------------------------------------------
EDITO: en versiones más actuales de uswsusp y ubuntu, lo que hay que poner en el archivo hal-system-power-hibernate-linux es lo siguiente:

#!/bin/sh
s2disk


El resto sigue siendo igual.
------------------------------------------------------------------------------------------------
Ahora actualizamos el kernel para que funcione des de ya:

sudo update-initramfs -u

Ahora ya está, cuando presionemos Hibernar del menú de apagado, todo funcionará correctamente para hibernar.

No pongo la fuente, ya que ningún tutorial que encontré funcionó, y me tuve que dedicar a probar hasta que di con el problema... donde ponía Shutdown method=platform debería poner Shutdown method= shutdown.

8 de nov. 2008

Ver DVD originales en Ubuntu

Para ver DVD originales en Ubuntu habréis observado que no es suficiente el utilizar los repositorios e instalar como un poseso todos los reproductores y/o códecs. La solución pasa por agregar los repositorios de Edubuntu a nuestras listas. Ahora os explico como.

Lo primero es añadir los repositorios necesarios con el comando:
sudo wget http://www.medibuntu.org/sources.list.d/intrepid.list -O /etc/apt/sources.list.d/medibuntu.list
Añadimos la clave de seguridad:
sudo apt-get update && sudo apt-get install medibuntu-keyring && sudo apt-get update
Ahora instalamos los codecs necesarios y un reproductor que, a mi, personalmente, me resulta más útil que el Totem y da menos problemas, se trata del VLC:
sudo aptitude install w32codecs libdvdcss2 vlc
Listos, ya podemos reproducir DVD originales sin problemas.

7 de nov. 2008

Compartir archivos con NFS

Para compartir archivos de forma sencilla entre dos ordenadores con Ubuntu podemos usar NFS.
Si queremos usarlo debemos instalarlos paquetes que necesitamos:
sudo aptitude install nfs-kernel-server nfs-kernel-common nfs-kernel-client portmap

NOTA: algunos de estos paquetes no se instalaran, ya que los nuevos kernels (nucelos) ya los traen implementados.
Después debemos editar /etc/exports:
sudo gedit /etc/exports
Ahora ponemos el directorio a compartir, per ejemplo /home/usuario, y poner al usuario que podrá acceder con permisos con su IP (permisos).
Debe quedar una cosa así:
/home/usuario 192.168.1.45(rwx)
De esta forma damos permiso al usuario con IP 192.168.1.45 a acceder a /home/usuario y a leer (r), escribir (w) y ejecutar (x) dentro del directorio. (Recordad que siempre se usaran los permisos más restrictivos posibles, eso quiere decir que si compartimos una carpeta en la que solo el usuario propietario puede escribir, así seguirá siendo en la carpeta compartida, aunque le pongamos rwx en el exports, a menos que cambiemos los permisos en las propiedades de la misma carpeta).
Guardamos los cambios y actualizamos el gestor nfs:
sudo exportfs -ra
sudo /etc/init.d/nfs-common restart
sudo /etc/init.d/nfs-kernel-server restart
sudo /etc/init.d/portmap restart

NOTA: algunos de estos comandos no haran nada y daran error, ya que se encuentran en el kernel y no es necesario su reinicio, así que no os preocupeis si sale un command not found.
Ahora vamos a la máquina cliente y ponemos:
sudo mount -t nfs 'ipservidor':/home/usuario 'punto de montaje que debe existir en el cliente' -o nolock
Este punta de montaje que debe existir puede ser una carpeta en el escritorio del cliente, si llamamos a la carpeta Compartido, la cosa quedaría así:
sudo mount -t nfs 192.168.1.45:/home/usuario /home/usuario_cliente/Compartido -o nolock
Como es obvió, donde pone usuario hay que poner el usuario del directorio que se comparte y en el de usuario_cliente lo que corresponda al cliente.
Si queremos que monte el directorio automáticamente al encender el ordenador (con el servido ya encendido) podemos editar el fstab:
sudo gedit /etc/fstab
Y ahora ponemos los datos que correspondan, siguiendo el ejemplo puesto:
192.168.1.45:/home/usuario /home/usuario_cliente/Compartido nfs
Y listos, ahora, siempre que tengamos el servidor encendido y arranquemos la máquina cliente, montará automáticamente el recurso compartido en la carpeta que le hemos indicado.


5 de nov. 2008

Instalar los drivers propietarios de Nvidia manualmente

Como hay gente a la que le gusta probar y trastear el ordenador, los drivers que instala Ubuntu para la tarjeta gráfica les sabe a poco... Y si además sabes que los drivers que proporciona Nvidia (pese a ser cerrados) son de muy buena calidad e implementan muchas funciones interesantes para nuestras tarjetas. O simplemente la orden en terminal glxinfo te da el fatídico Direct Rendering: No.

Una opción es utilizar Envy (de momento sólo hasta la versión 8.04 de ubuntu/kubuntu), que se instala con este comando en escritorio Gnome:

sudo aptitude install envyng-gtk envyng-core

En escritorio KDE:

sudo aptitude install envyng-qt envyng-core

Y para ejecutarlo en modo terminal, basta con poner:

sudo envyng -t

También aparece un icono de Envyng en Aplicaciones, o lo puedes ejecutar en modo gráfico mediante terminal:

sudo envyng -g

Esta aplicación instala y configura los drivers, tanto para ATI como para Nvidia, pero no descarga la última versión.

En modo manual, debes ir a la página de descarga de los drivers de Nvidia.

Eliges las características que correspondan a tu tarjeta y los descargas.

Ahora entramos en la temida terminal a secas presionando Ctrl+Alt+F1, te logueas como usuario normal, ahora seguimos a oscuras (jejejejeje):

sudo /etc/init.d/gdm stop

cd 'directorio donde están los drivers descargados'

sudo sh 'nombre archivo drivers .run'

Pon que Sí a todas las opciones que te da y sigue adelante:

sudo aptitude install nvidia-glx linux-restricted-modules-$(uname -r)

sudo nvidia-xconfig

sudo /etc/init.d/gdm start

Ahora, si todo va bien, debe aparecerte el logo de Nvidia y ... prueba superada!

Prueba una vez dentro de tu escritorio el comando de terminal:

glxinfo

Si arriba del todo te pone Direct Rendering: yes, has triunfado.

27 d’oct. 2008

¿Por que este nombre?

Y preguntareis... ¿por que este nombre para el blog? Pues tranquilos, que yo os lo explico.

Todo viene a raíz de un chiste, que es muy malo pero a mi me hace mucha gracia, aquí os lo pongo para que lo leáis y comprobéis vosotros mismos lo malo que es (si no os gusta el humor tonto, no sigais leyendo):

Entra un tío a un restaurante de lujo, después de mediar con el metre para conseguir una mesa, se sienta. Se le acerca un camarero y le pregunta:

-¿Qué desea comer?

A lo que el sujeto responde:

-¡Póngame un plato de gambas con chocolate!

El camarero se queda muy extrañado y le pregunta:

-¿Gambas con que?

El sujeto se reafirma en su petición: ¡Gambas con chocolate!

El camarero se dirige hacia la cocina, aún sin salir de su asombro y le transmite el pedido al cocinero.

El cocinero, alarmado, dice: ¿Gambas con que? A lo que el camarero responde: ¡con chocolate!

El cocinero, muy extrañado elabora el plato sin dejar de hacer una mueca de asco, llama al camarero para que se lo lleve a la mesa del cliente.

Le sirve el plato y se queda a su lado mirando como se lo come, entonces el camarero dice:

-¡En 20 años que llevo trabajando de camarero, es la primera vez que sirvo un plato de gambas con chocolate!

A lo que el cliente responde:

-¡¡¡La primera y la última, por que esto está asqueroso!!!

¡Ya os advertí que sería un chiste muy malo!

A lo que íbamos, este pretende ser un blog de temática variada pero enfocada al software libre y al SO que uso actualmente: Ubuntu.

Intentaré postear los problemas que me surgen en el SO y como los soluciono, y si no tengo problemas, pues ya se me ocurrirá algo…