Рейтинг:2

Есть ли способ «сбросить» время простоя при отключении ноутбука?

флаг gy

Мой ноутбук настроен так, чтобы он никогда не приостанавливался при подключении к сети и приостанавливался через некоторое время при работе от батареи; это то, как я хотел бы сохранить его.

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

Автоматическое уведомление о приостановке

или, если прошло достаточно много времени, ноутбук сразу же перейдет в режим ожидания, прежде чем я смогу отреагировать.

Я буквально поднимаю свой ноутбук использовать его, и предпочел бы, чтобы он не переходил в режим ожидания сразу после отключения. Есть ли какие-либо настройки, которые я могу изменить, чтобы таймер бездействия перезапускался при отключении моего ноутбука? В противном случае, есть ли какой-либо обходной путь для этого, например, какой-то сценарий, который может запускаться управлением питанием при отключении, который эмулирует какое-то действие для сброса таймера?

РЕДАКТИРОВАТЬ 2021-09-17T18:21Z

Я приложил скриншот моих текущих настроек питания. Вот как я хотел бы, чтобы они остались:

настройки питания

Проблема в том, что если мой ноутбук простаивает при подключении на 29 минут, затем я отключаю его, беру в руки, иду в гостиную и сажусь, он засыпает на мне, потому что теперь думает, что бездействовал 30 минут.Мне бы как-то хотелось, чтобы он интерпретировал подключение/отключение питания постоянного тока как «активность», чтобы он приостанавливался только в том случае, если я не прикасался к ноутбуку в течение 30 минут. после его отключения.

N0rbert avatar
флаг zw
Отвечает ли это на ваш вопрос? [Автоматическая приостановка — «Компьютер очень скоро приостановится из-за бездействия» — как я могу отключить это?] (https://askubuntu.com/questions/1014965/automatic-suspend-computer-will-suspend-very-soon-because -из-бездействия-хо)
флаг gy
Нет, автоматическая приостановка уже отключена при подключении (я именно этого и хочу); он включен при питании от батареи (также, как я этого хочу). Проблема в том, что «время бездействия» при подключении засчитывается в автоматическую приостановку *когда* я отключаю его.
Jacob Vlijm avatar
флаг by
Близкие избиратели: пожалуйста, прочитайте внимательно. Связанный предполагаемый обман касается другой проблемы, этот вопрос касается отключенной приостановки для включения питания, но преднамеренно включенной для батареи, поэтому приостановка включается при отключении * после * времени простоя для последнего. OP *** не хочет отключать приостановку из-за батареи ***.
Jacob Vlijm avatar
флаг by
Doktor J, какой у вас оконный менеджер (если не знаете, ваша версия Ubuntu/DE)?
флаг gy
Ubuntu 18.04.5 LTS под управлением GNOME
WinEunuuchs2Unix avatar
флаг in
Просто проведите пальцем по трекпаду, прежде чем отключить его и закрыть крышку.
флаг gy
@ WinEunuuchs2Unix, для этого потребуется, чтобы у меня была безупречная память, и не забывайте делать это каждый раз, когда я отключаю свой ноутбук. Вся причина, по которой я разместил этот вопрос, заключается в том, что я обычно помню, когда выдергиваю вилку из розетки, и экран становится черным.
WinEunuuchs2Unix avatar
флаг in
@DoktorJ В этом случае проще всего запускать скрипт каждый раз, когда ноутбук отключен от сети. Это сбросит x в режиме ожидания: https://unix.stackexchange.com/questions/321917/executing-code-every-time-a-laptop-is-plugged-into-or-unplugged-from-power
Рейтинг:1
флаг by

Сброс времени простоя при отключении питания или сброс времени простоя пока ты на АС?

Даже если вам удастся создать действие при отключении (вы можете), вопрос в том, успеете ли вы предотвратить приостановку.

Более надежный прием — не допустить, чтобы время простоя превышало пороговое значение времени простоя. вообще, но только если вы находитесь на AC.

Если вы находитесь на X, как мы можем это сделать?

Запустите крошечный демоноподобный фоновый скрипт, который: только когда вы находитесь на AC и бездействует более (скажем) минуты - имитирует нажатие клавиши Контроль. Это ключ, который ничего не делает, если вы на самом деле не работаете на ноутбуке, только сбрасывает время простоя.
Затем, если вы отключите его, виртуальное нажатие клавиши будет пропущено, и ноутбук будет делать все, что вы настроили, через x раз.
Ниже пример такого скрипта. В комментарии вы упомянули, что используете Ubuntu 18.04, Gnome, что означает, что вы используете Mutter (X), поэтому вы можете использовать инструменты в сценарии ниже.

Как пользоваться?

  1. Убедиться xprintidle, xdotool и акпи установлены: sudo apt установить xdotool acpi xprintidle
  2. Скопируйте скрипт в пустой файл.
  3. Протестируйте его с терминала: python3 /путь/к/сценарию. Если все работает нормально, добавьте его в свои команды запуска.

Сценарий

#!/usr/bin/env python3
подпроцесс импорта
импорт ги
gi.require_version("Gtk", "3.0")
из gi.repository импортировать GLib, Gtk

тест защиты (аргумент):
    # посмотрим какое сейчас время простоя
    время простоя = int(subprocess.check_output("xprintidle").decode("utf-8"))
    # и если мы подключены
    onpower = "в сети" в subprocess.check_output(
        ["акпи", "-а"]
    ).декодировать("utf-8")
    # если бездействие более 60 секунд И при включенном питании, нажмите Ctrl, чтобы сбросить состояние бездействия
    если все([время простоя/1000 > 60, при включении питания]):
        подпроцесс.Popen(
            ["xdotool", "клавиша", "Ctrl"]
        )
    # продолжайте, пожалуйста
    вернуть Истина

GLib.timeout_add_seconds(15, тест, нет)

Gtk.main()
флаг gy
Это звучит как хороший ответ на мою проблему ... у меня еще не было возможности попробовать это, но если это сработает завтра, я вернусь, чтобы отметить как принятое, если кто-то не выкопает какой-нибудь фактический параметр, который решает проблему :)
флаг gy
также необходимо установить `xprintidle`;)
Jacob Vlijm avatar
флаг by
@DoktorJ Верно! Добавлен.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.