Добрый день.
Второй раз сталкивают с одной и той же очень раздражающей проблемой. На ноутбуке Asus U31F (Core i3 370, 3 GB DDR3, Intel HD3000) Ubuntu не просыпается после захода в ждущий/спящий режим. Ощущение трудно передать, но после засыпания экран вроде как гаснет полностью, а через мгновение начинает подсвечиваться черным. При этом на нажатия клавиатуры и кнопки питания не реагирует. Приходится перезагружаться...
Проблема тянется еще с 11.04 - решить мне ее тогда так и не удалось. Разумеется гуглил - решения проблемы так и не нашел. Местами виновниками делают драйвера на видеокарту NVIDIA, но в этом ноуте видеокарта встроенная от Intel.
И, судя по некоторым комментариям, я понял, что проблема эта распространенная. И что мол "просыпание после режима сна в Ubuntu это роскошь". Вот только универсального ответа нигде нет. Неужели все так плохо?
Буду рад любым адекватным советам или ссылкам, в том числе и на англоязычные инструкции - не важно. Лишь бы помогло.
Спасибо.
Пользователь решил продолжить мысль 20 Ноября 2011, 23:30:54:
В общем помог следующий способ, описанный тут:
http://thecodecentral.com/2011/01/18/fix-ubuntu-10-10-suspendhibernate-not-working-bugВсего три шага:
1) Создать файл скрипта:
sudo gedit /etc/pm/sleep.d/20_custom-ehci_hcd
2) Скопировать туда сам скрипт:
#!/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
3) Дать скрипту права за исполнение:
sudo chmod 755 /etc/pm/sleep.d/20_custom-ehci_hcd
Проверил, работает как гибернация, так и ждущий режим. Asus U31F. В комментариях по ссылке выше так же множество людей отписывается о решений этой проблемы с разными ноутбуками.
Спасибо.