% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 29.3M 100 29.3M 0 0 141k 0 0:03:32 0:03:32 --:--:-- 193k
Downloaded file OK.
WARNING THIS COULD BRICK YOUR ROUTER!!!
File to burn: ./fwcache/10-26-2023-r53775/netgear-r7800/dd-wrt-webupgrade.bin
Are you sure? Type YES to burn upgraded firmware: YES
Erase nvram y/n ? n
Save user settings restore point y/n ? y
Saving user settings restore point...
Burning ./fwcache/10-26-2023-r53775/netgear-r7800/dd-wrt-webupgrade.bin
WARNING: DO NOT INTERRUPT...
WAIT FOR BURN TO COMPLETE (at least 5 minutes)
Done burning
Rebooting...
./easyddup.sh: line 519: /sbin/reboot: I/O error
root@R7800:/opt/easyddup#
root@R7800:/opt/easyddup# ls -l /sbin/reboot
ls: /sbin/reboot: I/O error
root@R7800:/opt/easyddup# /sbin/reboot ; echo $?
-sh: /sbin/reboot: I/O error
126
root@R7800:/opt/easyddup#
root@135bcll:/opt# echo u > /proc/sysrq-trigger
root@135bcll:/opt# echo s > /proc/sysrq-trigger
root@135bcll:/opt# echo b > /proc/sysrq-trigger
apart of it...router is operations...so far, so good... Thanks BS and Team !
Let's wait for k6.1 to settle down first before making any modification on other scripts. In the meantime, you can check for workarounds in the new build threads.
dale_gribble39 wrote:
Would it be possible for easyddup to use the alternative automatic CLI flashing method that saves the file as /tmp/firmware.bin so it works without having to use the reboot command?
yoyoma2 wrote:
The /tmp/firmware.bin method might work but seems like a bigger change given the years of testing with the current method.
Since there's already a PREBURN_CB how about I add a POSTBURN_CB which could do the reboot in that special way if needed? If the new kernel stuff settles down and this problem disappears the new POSTBURN_CB could be commented out from the .ini file.
With recent dd-wrt releases filesystem access is lost after writing the new firmware causing easyddup to fail to call /sbin/reboot at the end. Added a PREREBOOT_CB to easyddup.ini.sample which provides an alternate means to reboot. You'll need to copy these lines from easyddup.ini.sample to your easyddup.ini to use the prereboot callback.
alternate_reboot() {
echo Before magic SysRq key reboot
sleep 1 # allows previous messages to appear before reboot
echo s > /proc/sysrq-trigger
echo u > /proc/sysrq-trigger
echo b > /proc/sysrq-trigger
}
PREREBOOT_CB="alternate_reboot"
Upgrade:
checknewversion.sh
# set these correctly in your checknewversion.ini for updates to work
EASYDDUPSELFUPDATE=Y
FORUMUSER="myforumusername"
FORUMCRED='myforumpassword'
Ideas:
If anyone prefers the /tmp/firmware.bin method the PREBURN_CB could be used to burn & reboot that way instead. Share it if you do and have something that works well.
Joined: 05 Oct 2008 Posts: 646 Location: Helsinki, Finland / nr. Alkmaar, Netherlands
Posted: Tue Oct 31, 2023 10:22 Post subject:
After updating the easyddup script, checking the settings in easyddup.ini and adding the extra lines to the other ini file, the upgrade to 53833 went fine.
These are the last lines concerning the upgrade in the SSH terminal:
File to burn: ./fwcache/10-31-2023-r53833/netgear-r7800/dd-wrt-webupgrade.bin
Are you sure? Type YES to burn upgraded firmware: YES
Erase nvram y/n ? n
Save user settings restore point y/n ? y
Saving user settings restore point...
Burning ./fwcache/10-31-2023-r53833/netgear-r7800/dd-wrt-webupgrade.bin
WARNING: DO NOT INTERRUPT...
WAIT FOR BURN TO COMPLETE (at least 5 minutes)
Done burning
Processing callback alternate_reboot()
Before magic SysRq key reboot
The router booted to the new build, but the terminal prompt never came back. Probably more or less normal since the router booted. Sometimes in SSH sessions when a target disappears there's a message and the prompt does come back.
However the new script version works fine!
Thank you yoyoma!
PS:
it required just sending a return in the terminal to get the prompt back:
Processing callback alternate_reboot()
Before magic SysRq key reboot
client_loop: send disconnect: Broken pipe
arjen@NUC10i5:~$
Super detailed feedback thanks! I should have mentioned the hitting enter thing since the first time I tested this the sleep 1 command wasn't there and several messages were missing and I thought the router froze earlier even before the alternate reboot stuff.
I've never used these magic sysrq things so thanks for teaching me something new guys.