Страница 1 из 2
Нужно отключение компьютера при пропадании интернета
Добавлено: 15 авг 2018, 10:42
gringingfor
Привет! Может кто подсказать вариант решения с отключением при пропадании интернета. Есть GPRS модем, который периодически или отваливается, или обрывается соединение. Но его работа восстанавливается при передергивании питания 5V. Программный сброс тут не поможет, это точно. Нужно физическое отключение/включение. Это можно сделать и с помощью отключения компьютера, но не перезагрузки. При отключении компьютера питание на USB портах пропадает, а при перезагрузке нет. Вот мне и нужен способ по отключению без интернета, некий скрипт пинговалка-отключалка. В программировании не специалист, может кто сможет помочь?
Нужно отключение компьютера при пропадании интернета
Добавлено: 15 авг 2018, 10:44
WWolf
gringingfor писал(а): ↑15 авг 2018, 10:42
Программный сброс тут не поможет, это точно.
отчего такая уверенность?
Нужно отключение компьютера при пропадании интернета
Добавлено: 15 авг 2018, 10:59
gringingfor
Такой модем у меня. Все это с ним проходил на виндовс. Виснет наглухо без вариантов. Находил разные BAT файлики - пинговалки, которые делали программный сброс, но фокус не проходил. Допилил одну до отключения компьютера, когда разобрался. А в линукс не знаю как. В инете есть пинговалки для линукс, но не подходят. Они все решают на программном уровне. Я своими корявыми руками (в плане программирования) пытался внедрить shutdown но не получается. Да, забыл сказать, что я электромеханик по специальности и решить вопрос с реальной электрической цепью смогу. И вновь автоматически запустить комп после отключения я знаю как. Нужно выше озвученное решение.
Нужно отключение компьютера при пропадании интернета
Добавлено: 15 авг 2018, 11:01
di_mok
Нужно отключение компьютера при пропадании интернета
Добавлено: 15 авг 2018, 11:02
WWolf
в теории достаточно просто передёрнуть интерфейс как пинги пропали... ifdown ifup...
на крайний случай передёрнуть драйвер, уж тут точно должно отработать на ура...
хотя да... если фирмваря самого модема затупливает и он в неопределённом состоянии висит... только дёргать усб...
Нужно отключение компьютера при пропадании интернета
Добавлено: 15 авг 2018, 12:15
slant
gringingfor писал(а): ↑15 авг 2018, 10:59
Я своими корявыми руками (в плане программирования) пытался внедрить shutdown но не получается.
На чем писали, и что именно не получается? Т.к. на bash такое делается без особых проблем, единственный нюанс - скрипт должен от root работать, а то прав не хватит машину погасить. Проще всего этот периодический через вызов скрипта из cron/systemd сделать.
Нужно отключение компьютера при пропадании интернета
Добавлено: 15 авг 2018, 14:43
Bill Williamson
Что-то типа:
Код: Выделить всё
#!/bin/bash
ping www.ya.ru -c 1 -q -w 3 &>/dev/null
rez=$?
if [ $rez != 0 ]; then
systemctl poweroff
fi
Можно крутить кроном.
Но:
Эта программа предназначена для тестирования сетей, управления сетями и измерения производительности. Из-за нагрузок, которые она создаёт в сети, неразумно использовать ping в рабочее время или в автоматических сценариях.
https://www.opennet.ru/man.shtml?topic= ... &russian=0
Лучше замените неисправный модем.
Нужно отключение компьютера при пропадании интернета
Добавлено: 15 авг 2018, 15:37
hellonet
Хороший повод купить другой или вообще сменить тип выхода в интернет. А что за GPRS модем, какая модель? Может просто ему кулера не хватает. От перегрева и вырубается. Был у меня когда то такой - направлял на него обычный вентилятор и проблема исчезала
Нужно отключение компьютера при пропадании интернета
Добавлено: 15 авг 2018, 17:08
gringingfor
Bill Williamson писал(а): ↑15 авг 2018, 14:43
Что-то типа:
Код: Выделить всё
#!/bin/bash
ping
www.ya.ru -c 1 -q -w 3 &>/dev/null
rez=$?
if [ $rez != 0 ]; then
systemctl poweroff
fi
Попробовал запустить - нет реакции. Я ж говорю, что не спец в линуксе. Но думаю, что-то типа этого мне надо. Пинга нет и комп отключился.
Нужно отключение компьютера при пропадании интернета
Добавлено: 15 авг 2018, 17:19
rogoznik
gringingfor писал(а): ↑15 авг 2018, 17:08
Попробовал запустить - нет реакции
А как запускал? Права на выполнение дал?
Нужно отключение компьютера при пропадании интернета
Добавлено: 16 авг 2018, 07:43
gringingfor
darkfenix писал(а): ↑15 авг 2018, 17:19
А как запускал? Права на выполнение дал?
Запускал так:
создал пустой файл с расширением .sh в домашней директории , закинул туда твой код, сохранил, файлу дал разрешение на исполнение, ну клацал по нему мышкой. Были варианты запуска в терминале и как программы. При запуске в терминале терминал открывался и сразу пропадал. При запуске как программы ничего не происходило и попутно я пробовал выдергивать сетевой Джек из карты. Реакция-ноль. А как надо?
Нужно отключение компьютера при пропадании интернета
Добавлено: 16 авг 2018, 08:15
di_mok
gringingfor, запусти не кликом мыши, а из терминала. Ну или добавь в конце скрипта sleep 10
например.
Нужно отключение компьютера при пропадании интернета
Добавлено: 16 авг 2018, 10:34
Bill Williamson
gringingfor, попробуйте вставить вот это в cron:
Код: Выделить всё
*/1 * * * * ping www.ya.ru -c 1 -q -w 3 ; rez=$? ; if [ "$rez" != 0 ]; then systemctl poweroff; else exit 0; fi
т.е. в терминале вбиваем
sudo crontab -e
. Выбираем
nano
(1). Спускаемся в самый конец и вставляем
shift+ctrl+v
, потом
ctrl+o
- для сохранения и
ctrl+x
- для выхода. Пробуем вырубить Интернет и прождать пару минут.
Нужно отключение компьютера при пропадании интернета
Добавлено: 16 авг 2018, 10:55
gringingfor
Не был установлен пакет systemd. Установил: sudo apt-get install systemd Все чего добился пока, так это то, что стала исполнятся команда systemctl poweroff введенная через терминал. Компьютер бодренько моргнул экраном и отключился. Это хорошо, но что дальше. Как эту команду привязать к пингу и автозагрузке?
Нужно отключение компьютера при пропадании интернета
Добавлено: 16 авг 2018, 10:57
WWolf
gringingfor писал(а): ↑16 авг 2018, 10:55
Не был установлен пакет systemd.
у тебя что вообще стоит?
Нужно отключение компьютера при пропадании интернета
Добавлено: 16 авг 2018, 11:01
gringingfor
Линукс Минт
Нужно отключение компьютера при пропадании интернета
Добавлено: 16 авг 2018, 11:02
WWolf
gringingfor, минт без системд?
а ну покажи
inxi -Fxz
Нужно отключение компьютера при пропадании интернета
Добавлено: 16 авг 2018, 11:02
Bill Williamson
gringingfor,
так пробовал?
Нужно отключение компьютера при пропадании интернета
Добавлено: 16 авг 2018, 11:10
gringingfor
WWolf писал(а): ↑16 авг 2018, 11:02
gringingfor, минт без системд?
а ну покажи
inxi -Fxz
Вот
Нужно отключение компьютера при пропадании интернета
Добавлено: 16 авг 2018, 11:18
Bill Williamson
gringingfor, если нет systemd, то :
Код: Выделить всё
*/1 * * * * ping www.ya.ru -c 1 -q -w 3 ; rez=$? ; if [ "$rez" != 0 ]; /sbin/shutdown -h "now" ; else exit 0; fi