Перейти к содержанию

Рекомендуемые сообщения

Опубликовано

Это баг какой то что дублируются события ppp0?

 

Что в системном журнале (interface is up)

qzpD4S.png

Что хуки срабатывают два раза:
ndm/wan.d (дубль start)

=== Hook script executed at Sat May 24 12:23:48 +05 2025 ===
First parameter: stop
Environment variables:
  interface=
  address=
  mask=
  gateway=
-----
=== Hook script executed at Sat May 24 12:23:50 +05 2025 ===
First parameter: start
Environment variables:
  interface=ppp0
  address=100.120.221.94
  mask=255.255.255.255
  gateway=0.0.0.0
-----
=== Hook script executed at Sat May 24 12:23:50 +05 2025 ===
First parameter: start
Environment variables:
  interface=ppp0
  address=100.120.221.94
  mask=255.255.255.255
  gateway=0.0.0.0
-----


ndm/ifstatechanged.d (дубль change=link)

=== Hook script executed at Sat May 24 12:23:43 +05 2025 ===
First parameter: hook
Environment variables:
  id=PPPoE0
  system_name=ppp0
  link=up
  connected=yes
  up=down
  change=up
-----
=== Hook script executed at Sat May 24 12:23:43 +05 2025 ===
First parameter: hook
Environment variables:
  id=PPPoE0
  system_name=ppp0
  link=up
  connected=yes
  up=down
  change=config
-----
=== Hook script executed at Sat May 24 12:23:43 +05 2025 ===
First parameter: hook
Environment variables:
  id=PPPoE0
  system_name=ppp0
  link=up
  connected=yes
  up=up
  change=up
-----
=== Hook script executed at Sat May 24 12:23:43 +05 2025 ===
First parameter: hook
Environment variables:
  id=PPPoE0
  system_name=ppp0
  link=up
  connected=yes
  up=up
  change=config
-----
=== Hook script executed at Sat May 24 12:23:43 +05 2025 ===
First parameter: hook
Environment variables:
  id=PPPoE0
  system_name=ppp0
  link=down
  connected=no
  up=up
  change=link
-----
=== Hook script executed at Sat May 24 12:23:43 +05 2025 ===
First parameter: hook
Environment variables:
  id=PPPoE0
  system_name=ppp0
  link=down
  connected=no
  up=up
  change=link
-----
=== Hook script executed at Sat May 24 12:23:48 +05 2025 ===
First parameter: hook
Environment variables:
  id=PPPoE0
  system_name=ppp0
  link=up
  connected=yes
  up=up
  change=link
-----


Keenetic Giga II 2.16.D.12.0-11
Настройки сбрасывал, настраивал через мастер быстрой настройки.
Можно поправить?

Опубликовано (изменено)
8 часов назад, Le ecureuil сказал:

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

Не совсем понял что-то. Если у меня скрипт в wan.d то при подключении ppp0 (с аргументом start) он сработает два раза
аналогично в ifstatechanged.d, при отключении ppp0 change=link & connected=no он сработает два раза

Вот что я имею ввиду

 

#!/bin/sh

case "$1" in
    start)
        echo $(date) Internet connection established >> /opt/var/log/wan.d_logger.log
        ;;
    stop)
        echo $(date) Internet connection terminated >> /opt/var/log/wan.d_logger.log
        ;;
esac

>wan.d_logger.log
Sun May 25 20:54:17 +05 2025 Internet connection established
Sun May 25 20:54:18 +05 2025 Internet connection established

Sun May 25 21:01:42 +05 2025 Internet connection terminated
Sun May 25 21:01:43 +05 2025 Internet connection established
Sun May 25 21:01:44 +05 2025 Internet connection established

Sun May 25 21:03:21 +05 2025 Internet connection terminated
Sun May 25 21:03:22 +05 2025 Internet connection established
Sun May 25 21:03:23 +05 2025 Internet connection established


 

#!/bin/sh

if [ "$system_name" = "eth2.2" ] && [ "$change" = "link" ]; then
    echo $(date) eth2.2 interface is $link >> /opt/var/log/ifstatechanged.d_logger.log
fi

if [ "$system_name" = "ppp0" ] && [ "$change" = "link" ]; then
    echo $(date) ppp0 current connection status $connected >> /opt/var/log/ifstatechanged.d_logger.log
fi

>ifstatechanged.d_logger.log
Sun May 25 20:54:10 +05 2025 eth2.2 interface is up
Sun May 25 20:54:12 +05 2025 ppp0 current connection status yes
Sun May 25 21:01:37 +05 2025 ppp0 current connection status no
Sun May 25 21:01:37 +05 2025 ppp0 current connection status no

Sun May 25 21:01:42 +05 2025 ppp0 current connection status yes
Sun May 25 21:03:14 +05 2025 ppp0 current connection status no
Sun May 25 21:03:14 +05 2025 ppp0 current connection status no

Sun May 25 21:03:21 +05 2025 ppp0 current connection status yes



Если это не проблема, тогда как быть, есть какой нибудь вариант чтобы скрипт отработал только один раз?

Изменено пользователем Next
Опубликовано
В 25.05.2025 в 14:06, Next сказал:


Если это не проблема, тогда как быть, есть какой нибудь вариант чтобы скрипт отработал только один раз?

Вы должны решить ее сами, так как в изначальном дизайне opkg и скриптов задумано, что они с одними и теми же аргументами могут вызываться ЛЮБОЕ отличное от нуля число раз на одно и то же событие. Это данность, так есть и будет. Тем более в версии 2.16, никто не будет даже разбираться почему там такое происходит.

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...

Важная информация

На этом сайте используются файлы cookie. Нажимая "Я принимаю" или продолжая просмотр сайта, вы разрешаете их использование: Политика конфиденциальности.