Нет WiFi в Debian после приостановки или закрытия крышки

Вы можете приостановить выполнение процесса, отправив ему сигнал SIGSTOP, а затем возобновить его, отправив сигнал SIGCONT.

Предполагая, что ваша рабочая нагрузка представляет собой один процесс (не разветвляются помощники, работающие в фоновом режиме ), вы можете использовать что-то вроде этого:

# start copy in background, store pid
cp src dst &
echo "$!" >/var/run/bigcopy.pid

Затем, когда начнется время занятости, отправьте ему сигнал SIGSTOP:

# pause execution of bigcopy
kill -STOP "$(cat /var/run/bigcopy.pid)"

Позже, когда сервер снова будет бездействовать, возобновите его работу.

# resume execution of bigcopy
kill -CONT "$(cat /var/run/bigcopy.pid)"

Вам нужно будет запланировать это на определенное время, когда вы хотите, чтобы оно выполнялось, вы можете использовать такие инструменты, как таймеры cron или systemd (или множество других подобных инструментов ), чтобы запланировать это. Вместо планирования на основе временного интервала вы можете выбрать мониторинг сервера (, возможно, просматривая среднюю загрузку, использование ЦП или активность из журналов сервера ), чтобы принять решение о том, когда приостановить/возобновить копирование.

Вам также необходимо управлять PID-файлом (, если вы его используете ), убедитесь, что ваша копия все еще работает, прежде чем приостанавливать ее. готово и т. д.

Другими словами, вам нужно больше, чтобы сделать надежный, но базовая идея использования этих сигналов SIGSTOP и SIGCONT для приостановки/возобновления выполнения процесса, кажется, то, что вы ищете.

0
11.07.2020, 21:32
1 ответ

У меня были проблемы с тем же самым. Я думаю, что проблема заключается в установке нового драйвера, он добавляет строку suspend _modules в файл /etc/pm/config.d/unload_modules, но комментирует ту же строку, тогда как она должна комментировать старую. Я редактировал вручную, и это сработало. Надеюсь, это поможет и вам.

$ cat /etc/pm/config.d/unload_modules
SUSPEND_MODULES="$SUSPEND_MODULES cfg80211 mac80211"
#SUSPEND_MODULES="$SUSPEND_MODULES iwldvm iwlwifi mac80211"

Отредактируйте файл следующим образом, используя редактор по вашему выбору. Ваш вариант будет другим, но идея заключается в том, чтобы закомментировать первую строку и раскомментировать вторую

.
#SUSPEND_MODULES="$SUSPEND_MODULES cfg80211 mac80211"
SUSPEND_MODULES="$SUSPEND_MODULES iwldvm iwlwifi mac80211"
0
18.03.2021, 23:21

Теги

Похожие вопросы