Ubuntu 12.10 зависает после перехода в режим ожидания

После того, как я очень долго страдал от этой проблемы, я решил "спросить убунту". Я знаю, что есть достаточно информации об этой проблеме, но ни одна из них не сработала для меня до сих пор.

  • Симптомы:

    При нажатии кнопки приостановки в Ubuntu (время от времени) экран становится черным, и через несколько секунд вентиляторы начинают работать быстро (очевидно, из-за использования процессора). У меня была эта проблема как в Ubuntu 12.04, так и в 12.10 (после обновления).

    Много решений было предложено для этой проблемы, но ни одно, кажется, не работает для меня. Например, есть этот пост:

    Вся система зависает после нажатия "Приостановить" [закрыто]

  • Подсказки для причины этой проблемы, и что я выяснил:

    Прежде всего я должен отметить, что у меня есть графический процессор AMD Radeon HD 6470M и установлены драйверы AMD (я не использую проприетарные драйверы, потому что они не обрабатывают GPU так же, как драйверы AMD). Вероятно, это ключ к этой проблеме.

    Я где-то нашел предложение (но сейчас не могу найти ссылку на форум), что Ubuntu нужно отправлять в спящий режим с помощью команд оболочки: dbus-send --system --print-reply --dest="org.freedesktop.UPower" /org/freedesktop/UPower org.freedesktop.UPower.Suspend

    Я не могу вспомнить, требует ли это для установки какого-либо пакета или нет. Как бы то ни было, вначале мне это казалось работающим, но вскоре после того, как я начал использовать эту команду, проблема вернулась.

  • Тогда у меня возникла идея:

    Мне показалось, что проблема возникает из-за использования драйверов AMD и что при приостановке ЦП застревает в каком-то бесконечном цикле, поэтому я решил отслеживать свои процессы и отправлять компьютер в спящий режим (используя скрипт) только после того, как процесс "compiz" не использует процессор (мониторинг с помощью "системного монитора"). Это может показаться странной идеей, но, похоже, она работает почти полностью.

    В настоящее время я отправляю Ubuntu для приостановки с помощью приведенного выше сценария, когда вижу, что все процессы бездействуют (загрузка ЦП отсутствует), и он работает без проблем почти каждый раз. К сожалению, каждый второй раз Ubuntu зависает, как и раньше. Но эти случаи встречаются реже, чем раньше.

Обновление (от 26 октября 2013 г.) - А (хлипкое) решение:

Кажется, что после еще нескольких тестов работает следующий метод:

  1. Откройте "Системный монитор" и выберите вкладку "Процессы". Обязательно выберите опцию Просмотр->Все процессы.
  2. Прежде чем отправлять запрос на приостановку, подождите, пока процессы "compiz" и "Xorg" дойдут до простоя при использовании процессора.
  3. Запрос приостановки с помощью команд (в терминале):

    dbus-send --system --print-reply     --dest="org.freedesktop.UPower"     /org/freedesktop/UPower     org.freedesktop.UPower.Suspend
    

(Использование ярлыка Ubuntu "suspend" также может работать. Я еще не проверял его).

Очевидно, это не идеальное решение, но оно выполняет свою работу. Это самое большее, что я могу сделать со своими знаниями о Linux.

Итак, призыв о помощи все еще включен. Если у кого-то есть идеи, как окончательно решить эту проблему или продолжить ее отладку, любая помощь будет принята с благодарностью.

0 ответов

Другие вопросы по тегам