El primer paso es crear un script en la carpeta /etc/pm/sleep.d/ puede tener cualquier nombre, pero para asegurar el orden en que se cargan usaremos el prefijo 20_.
sudo gedit /etc/pm/sleep.d/20_custom-ehci_hcd
Seguidamente le añadimos el siguiente código al archivo que acabamos de crear:
#!/bin/sh
#inspired by http://art.ubuntuforums.org/showpost.php?p=9744970&postcount=19
#...and http://thecodecentral.com/2011/01/18/fix-ubuntu-10-10-suspendhibernate-not-working-bug
# tidied by tqzzaa :)
VERSION=1.1
DEV_LIST=/tmp/usb-dev-list
DRIVERS_DIR=/sys/bus/pci/drivers
DRIVERS="ehci xhci" # ehci_hcd, xhci_hcd
HEX="[[:xdigit:]]"
MAX_BIND_ATTEMPTS=2
BIND_WAIT=0.1
unbindDev() {
echo -n > $DEV_LIST 2>/dev/null
for driver in $DRIVERS; do
DDIR=$DRIVERS_DIR/${driver}_hcd
for dev in `ls $DDIR 2>/dev/null | egrep "^$HEX+:$HEX+:$HEX"`; do
echo -n "$dev" > $DDIR/unbind
echo "$driver $dev" >> $DEV_LIST
done
done
}
bindDev() {
if [ -s $DEV_LIST ]; then
while read driver dev; do
DDIR=$DRIVERS_DIR/${driver}_hcd
while [ $((MAX_BIND_ATTEMPTS)) -gt 0 ]; do
echo -n "$dev" > $DDIR/bind
if [ ! -L "$DDIR/$dev" ]; then
sleep $BIND_WAIT
else
break
fi
MAX_BIND_ATTEMPTS=$((MAX_BIND_ATTEMPTS-1))
done
done < $DEV_LIST
fi
rm $DEV_LIST 2>/dev/null
}
case "$1" in
hibernate|suspend) unbindDev;;
resume|thaw) bindDev;;
esac
Y finalmente de damos los permisos de ejecución
sudo chmod 755 /etc/pm/sleep.d/20_custom-ehci_hcd
Nada más, ahora la función de suspender debe de funcionar correctamente.
Actualización: En mi equipo de sobremesa, a partir de alguna actualización dejó de funcionar también correctamente la función de suspender el equipo. El problema es que al salir de la suspensión se me queda la pantalla en negro viéndose sólo el ratón que se puede mover pero nada más. Ni siquiera me permite cambiar a un terminal en modo texto.
Pues bien, hay una solución sencilla para esto que es simplemente reiniciar el modo gráfico mediante la combinación del teclado siguiente: AltGr+ImpPant+K
12 comentarios:
Muchas gracias amigo, ha funcionado de Maravilla con mi ASUS K43E con Ubuntu 12.04.
Triada - Diseño y desarrollo web
De nada, esa es la intención, que funcione Linux de maravilla en cualquier ordenador.
te hago una consulta esta solucion sirve para una hp dv6 ?
Me ha funcionado con una que no es asus muchas gracias por la solucion
M.Moody me alegro que a ti también te funcionara, estaría bien que indicarás cual es tu equipo para ayudar a otra gente que esté en tu mismo caso.
solucion
http://www.maravento.com/2013/01/suspension-en-ubuntu.html
Gracias también por el último aporte anónimo. Es un artículo amplísimo donde poder conocer más detalles sobre los problemas de suspensión, y donde ofrecen el archivo que propongo crear en mi artículo, para varias versiones de Ubuntu.
Hola, a mi no me ha funcionado, en mi caso mi netbook es una CX 3060X con intel Atom. Quería saber si tengo otras opciones? probé un montón de cosas y nada me soluciona.
Martín, no creo que te pueda ayudar mucho más allá de probar a buscar en Internet.
Aunque sí que te puedo decir que en las nuevas versiones de Ubuntu, instaladas en limpio el tema de la suspensión funciona sin tener que tocar nada.
Me funcionó perfecto!!
Muchas gracias,
Guillermo
woooho eres un crack funciona en toshiba satelite nb 15
Pues este artículo ya tiene sus años, me sorprende que siga siendo útil. Pero como siempre, me alegro de que te haya servido.
Publicar un comentario