Разработчики программного обеспечения уделяют особое внимание обратной совместимости новых версий со старыми. Однако в отдельных случаях такую совместимость не удается сохранить, поскольку дальнейшее развитие ПО требует изменения синтаксиса некоторых команд или их переноса в другое меню. В этом случае конфигурация существующего устройства может оказаться неработоспособной в новой версии ПО, и ее необходимо откорректировать вручную. Несовместимые изменения команд при обновлении с отдельных версий NSG Linux приведены ниже.
ВНИМАНИЕ! Перед обновлением ПО необходимо обратить внимание, не встречаются ли упомянутые ниже элементы в вашей конфигурации, в особенности на тех каналах связи, через которые осуществляется доступ к устройству.
- Версии 2.0.x (разные)
- В отдельных версиях изменялся синтаксис отдельных параметров или их положение в командном дереве, при этом новые версии автоматически модифицировали конфигурацию необходимым образом "на лету" в процессе загрузки. Чтобы эту модификацию не приходилось выполнять каждый раз, после обновления до NSG Linux 2.1 следует сохранить действующую конфигурацию в энергонезависимой памяти.
- Версии 2.0.4.x и ранее
- спецсимволы
\r
, \n
, \t
, \\
и т.п.
Было: При вводе строки в кавычках преобразовывались в соответствующие спецсимволы. Без кавычек интерпретировались буквально.
Стало: Преобразуются в спецсимволы во всех случаях. Для ввода буквально — необходимо указывать символ \
как \\
.
пакетный вызов nsgsh
Было: Если в значении параметра требовалась точка, то она указывалась последовательностью из двух точек, например:
nsgsh .port.eth0.ifAddress.prefix.10..0..0..1/24
Стало: Точка и другие спецсимволы в имени узла, параметра или значении параметра вводятся единообразно в виде escape-последовательности или в одинарных/двойных кавычках:
nsgsh .port.eth0.ifAddress.prefix.10\.0\.0\.1/24
nsgsh .port.eth0.ifAddress.prefix."10.0.0.1/24"
При указании значения параметра через знак =
точка в теле значения может вводиться как есть:
nsgsh .port.eth0.ifAddress.prefix=10.0.0.1/24
Рекомендуется использовать последний синтаксис во всех случаях.
- Версии 2.0.2.x и ранее
- Туннели PPPoE, PPTP
Было: Допускались произвольные имена туннелей.
Стало: Имена туннелей должны соответствовать шаблону pppoeN
, pptpN
, соответственно.
См. также особенности обновления ПО на конкретных моделях устройств, связанные с их специфической аппаратной платформой и системным загрузчиком.