This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
remote_upgrade_poc [2023/06/27 00:03] – [Remote Upgrade types] -formatting hogwild | remote_upgrade_poc [2023/07/01 01:28] – [Preservation of Parameters and Restore Process]-formatting hogwild | ||
---|---|---|---|
Line 40: | Line 40: | ||
- A VPN server is configured, enabled and working. | - A VPN server is configured, enabled and working. | ||
- Dropbear/ | - Dropbear/ | ||
- | - The internal network has an Ethernet LAN client that accessible via Teamviewer, once Internet connectivity | + | - The internal network has an Ethernet LAN client that accessible via Teamviewer, |
Line 116: | Line 116: | ||
There are several types of remote upgrades. They can be summarized in order of risk, as follows: | There are several types of remote upgrades. They can be summarized in order of risk, as follows: | ||
+ | | ||
+ | | ||
+ | * Dirty upgrade - overwrites the firmware and retains current NVRAM settings. This is probably \\ the safest method. It will function similar to an upgrade using the router' | ||
+ | * Clean upgrade - overwrites firmware and erases NVRAM settings, (restoring the default ones). \\ This will restore default settings, IP address and logon credentials. This is generally not a good option \\ when doing a remote upgrade. However, it can speed up the upgrade process if you're beside the router. \\ \\ | ||
+ | * Advanced upgrade - overwrites firmware, saves selected NVRAM configuration, | ||
- | * Dirty upgrade - overwrites the firmware and retains current NVRAM settings. This is probably \\ the safest method. It will function similar to an upgrade using the router' | + | |
- | * Clean upgrade - overwrites firmware and erases NVRAM settings, (restoring the default ones). \\ This will restore the default settings, IP address and logon credentials. This is generally not a good option \\ when doing a remote upgrade. However, it can useful for speeding up the upgrade process if you are physically beside the router. | + | |
- | * Advanced upgrade - overwrites firmware, saves selected NVRAM configuration, | + | |
- | + | ||
- | A dirty upgrade is probably the least risky method. It will function similar to an upgrade using the router' | + | |
- | + | ||
- | A clean upgrade will restore the default settings, IP address and logon credentials. This is generally not a good option when doing a remote upgrade. However, it can useful for speeding up the upgrade process if you are physically beside the hardware device. | + | |
- | + | ||
- | Advanced upgrades should be used only in unusual cases. Such cases include sensitive remote installations, | + | |
- | + | ||
==== Dirty Upgrade ==== | ==== Dirty Upgrade ==== | ||
Line 163: | Line 158: | ||
- Evaluate the use of external files for certificates. | - Evaluate the use of external files for certificates. | ||
- | - Evaluate the use of an external file for the list of parameters | + | - Evaluate the use of an external file for the list of parameters to be preserved. |
- Replace the: `....` notation for subshell with FreshTomato' | - Replace the: `....` notation for subshell with FreshTomato' | ||
- | - Consider handling EOL of files you reference internally. There are many sed examples on how to achieve | + | - Consider handling EOL of files you reference internally. There are many sed examples |
- Consider defining the USB path as a variable at the beginning of your script. | - Consider defining the USB path as a variable at the beginning of your script. | ||
- | - Remember: some devices might have multiple USB drives plugged/ | + | - Remember: some devices might have multiple USB drives plugged/ |
\\ | \\ | ||
Line 178: | Line 173: | ||
The Main Preserve Script, with a list of parameters to save, creates the Restore script with actual parameter values. | The Main Preserve Script, with a list of parameters to save, creates the Restore script with actual parameter values. | ||
- | **Caution: Unexpected side effects can occur if any parameter value contains the single quote (') character. | + | **Caution: Unexpected side effects can occur if any parameter value contains the single quote (') character. Consider replacing single quotes with double |
- | + | ||
- | **Consider replacing single quotes with double | + | |
\\ | \\ | ||
- | After every upgrade, you should review the FreshTomato | + | After every upgrade, you should review the FreshTomato |
- Bug fixes | - Bug fixes | ||
Line 190: | Line 183: | ||
- New features | - New features | ||
- Explicit recommendations from the developers | - Explicit recommendations from the developers | ||
+ | |||
\\ | \\ | ||
Line 203: | Line 197: | ||
\\ | \\ | ||
+ | |||
<code bash> | <code bash> | ||
#!/bin/sh | #!/bin/sh | ||
Line 697: | Line 692: | ||
| | ||
===== Alternatives ===== | ===== Alternatives ===== | ||
+ | |||
- Compile your own firmware with your settings hard-coded within it. | - Compile your own firmware with your settings hard-coded within it. | ||
- Building the compilation environment requires a lot of effort. | - Building the compilation environment requires a lot of effort. | ||
- Consolidated experience with such process is necessary. | - Consolidated experience with such process is necessary. | ||
- | - Several previous attempts were made using directions from: freshtomato-arm [[https:// | + | - Several previous attempts were made using directions from: freshtomato-arm [[https:// |
===== References and Online Resources ===== | ===== References and Online Resources ===== |