Как автоматически отключить & amp; блокировать всю сетевую активность на экране блокировки?

Как я могу автоматически остановить всю сетевую активность входящего и исходящего, когда я заблокирую экран? В том числе http, ftp, ssh и т. Д.

Я могу проверить это, например, добавив видео Youtube и затем заблокировав свой экран. Видео все равно будет воспроизводиться, даже если компьютер заблокирован. Указывает на продолжение активности в сети.

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

1
задан 7 May 2017 в 00:41

2 ответа

Этот ответ был вдохновлен этим ответом на «Как запустить команду или скрипт при блокировке / разблокировке экрана?»

Для Ubuntu 14.04:

Предполагая, что вы используете сетевой менеджер по умолчанию, создайте скрипт (я поместил мой в ~ / bin и назвал его netlock.sh)

Вот содержимое:

#!/bin/bash dbus-monitor --session "type='signal',interface='com.ubuntu.Upstart0_6'" | \ ( while true; do read X if echo $X | grep "desktop-lock" &> /dev/null; then nmcli nm enable false; elif echo $X | grep "desktop-unlock" &> /dev/null; then nmcli nm enable true; fi done )

Этот скрипт отключит работу сети при блокировке и повторном включении на разблокировке.

Если вы хотите, чтобы он запускался каждый раз при запуске, см. этот ответ

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

Для Ubuntu 14.04: просто отредактируйте скрипт и измените значения nmcli nm enable false на nmcli networking off и nmcli nm enable true на nmcli networking on по мере необходимости из-за изменений в nmcli

Конечно, все, что уже загружено и буферизировано, по-прежнему будет воспроизводиться до тех пор, пока буферы не будут сухими, поэтому, если вы хотите более точный контроль, вам придется использовать кнопку паузы на проигрывателе YouTube.

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

0
ответ дан 18 July 2018 в 13:42

Этот ответ был вдохновлен этим ответом на «Как запустить команду или скрипт при блокировке / разблокировке экрана?»

Для Ubuntu 14.04:

Предполагая, что вы используете сетевой менеджер по умолчанию, создайте скрипт (я поместил мой в ~ / bin и назвал его netlock.sh)

Вот содержимое:

#!/bin/bash dbus-monitor --session "type='signal',interface='com.ubuntu.Upstart0_6'" | \ ( while true; do read X if echo $X | grep "desktop-lock" &> /dev/null; then nmcli nm enable false; elif echo $X | grep "desktop-unlock" &> /dev/null; then nmcli nm enable true; fi done )

Этот скрипт отключит работу сети при блокировке и повторном включении на разблокировке.

Если вы хотите, чтобы он запускался каждый раз при запуске, см. этот ответ

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

Для Ubuntu 14.04: просто отредактируйте скрипт и измените значения nmcli nm enable false на nmcli networking off и nmcli nm enable true на nmcli networking on по мере необходимости из-за изменений в nmcli

Конечно, все, что уже загружено и буферизировано, по-прежнему будет воспроизводиться до тех пор, пока буферы не будут сухими, поэтому, если вы хотите более точный контроль, вам придется использовать кнопку паузы на проигрывателе YouTube.

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

0
ответ дан 24 July 2018 в 20:14

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

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