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

Вопрос

Опубликовано (изменено)

STR

1. Иметь расписание и скрипт в /opt/etc/ndm/schedule.d/  включающий в себя выполнение команды ndmc. Например ndmc -c show version

2. Дождаться выполнения

AR

Команда не будет выполнена, в журнале ошибка Feb 24 14:12:45 ndm: ndmc: system failed [0xcffd0060]

И, возможно, несвязанная ndm: Cli::Main: system failed [0xcffd00c8], unable to update a window line size.

 

При откате на 4.2.6.1 проблемы нет, то-есть сломано именно в 4.3

@Le ecureuil @sergeyk

Изменено пользователем spatiumstas

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

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

Причина в том, что ndmc внезапно желает TTY, хотя казалось бы 😆

Ошибку можно обойти, если подсунуть ему pty. Я использовал socat в, думаю, можно и проще, но мне так надо

    out=$(mktemp -p /opt/tmp/ socat_ndmc_XXXXXX)
    socat $out EXEC:'ndmc -c "'"$ndmc_cmd"'"',pty,stderr
    .....
    rm -f $out

@spatiumstas Спасибо, что зарепортили, иначе б наверное не стал разбираться даже

  • 0
Опубликовано
2 часа назад, Le ecureuil сказал:

Вообще он всегда хотел, не понимаю почему тогда автор репортит что в 4.2.6 работает?

Потому что работает

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

Проблема не только с расписанием. Получение sms через хук sms.d так же поломано. При ручном запуске всё работает, как и с расписанием. Проблема общая.

@Anna_ @sergeyk Обратите, пожалуйста, внимание. Не хочется в релиз уходить с такой проблемой. На 4.2.6.3 всё корректно работает

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

Замечен еще один прикол - выяснил, что ndmc пытается использовать openssl из состава Entware, потому фейлится с ошибкой 060. Чтобы этого избежать, перед вызовом ndmc ставьте LD_LIBRARY_PATH так:

export LD_LIBRARY_PATH=/lib:/usr/lib:$LD_LIBRARY_PATH

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

Та же самая проблема существует, если вызывать ndmc из скрипта, который вызывается из /opt/etc/ndm/wan.d (например).
 

[C] Jan 13 11:50:59 ndm: ndmc: system failed [0xcffd0060]. 

Так как LD_LIBRARY_PATH='/opt/lib:/opt/usr/lib:/lib:/usr/lib'

Помогает вот такое:

LD_LIBRARY_PATH= ndmc -c "interface PPPoE0 up"

Версия прошивки: release: 4.03.C.6.3-9
 

  • 0
Опубликовано
2 часа назад, Hal сказал:

Та же самая проблема существует, если вызывать ndmc из скрипта, который вызывается из /opt/etc/ndm/wan.d (например).
 

[C] Jan 13 11:50:59 ndm: ndmc: system failed [0xcffd0060]. 

Так как LD_LIBRARY_PATH='/opt/lib:/opt/usr/lib:/lib:/usr/lib'

Помогает вот такое:

LD_LIBRARY_PATH= ndmc -c "interface PPPoE0 up"

Версия прошивки: release: 4.03.C.6.3-9
 

Я делаю так:

	JSRet=$(curl -kfsS "http://localhost:79/rci/interface/$id" --header "Content-Type: application/json" -X POST --data-raw "[{\"down\":\"down\"}]" 2>/dev/null)
	if [ "$?" != "0" ]; then
		logger -t ${0} -p user.err "Request execution error"
		exit 1
	fi
	status=$(echo $JSRet | jq -r ".[0].down.status.[0]")
	if [ "x$status" == "xnull" -o -z "${status##*\"error\"*}" ]; then
		status=$(echo $JSRet | jq -r ".[0]")
		logger -t ${0} -p user.err "Failed to down interface ${id}: ${status}"
		exit 1
	fi
	logger -t ${0} -p user.err "VPN is down"

 

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

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

Гость
Ответить на вопрос...

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

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

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

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

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

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

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

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

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