Here i talk about using autoconf.clish files to configure SMB units; this articles second and third parts can be found here :
The autoconf.clish files will, if present, always run if the unit is rebooted in the Initial Configuration state, that is, before First Time Wizard was run. An already configured unit will have to be reset before a new configuration, here that is done using the CLI (from a serial connection, of course !), but you could also use the WebGUIs DEVICE > System > System Operations > Default Settings button:
GW-620> restore default-settings
Restoring the default settings will delete your current settings and reboot the appliance
Are you sure you want to continue? (yes/no): y
Restoring factory default settings...
Please wait while the appliance reboots. Please do not pull out the power cable.
Warning - USB device contains image files for the device.
Please remove the device to prevent reverting to that image after reboot, then press ENTER to continue
Broadcast message from root (Wed Oct 8 08:45:55 2014):
The system is going down for reboot NOW!
INIT: Restarting system.
Now the configuration will be read from autoconf.clish file only and nothing from the old config will survive. If an existing configuration has to be changed using autoconf.clish, we can have the unit just to run it on next reboot, when no reset is needed:
GW-620> set property USB_auto_configuration once
If the unit is rebooted now, values already configured will be overwritten with the values from autoconf.clish, and some commands may not work at all if only intended to run once or just for First Time configuration (like, for example, adding two Internet connections).
After the next reboot, autoconf.clish will not run again. But during corrections on an autoconf.clish file not intended for first time configuration but for configuration changes, it can be very helpfull to make the device run the autoconf.clish again after every reboot:
GW-620> set property USB_auto_configuration always
Now we could change the autoconf.clish file, save it, just issue a reboot on the CLI and look if it does work correctly now .