% 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: 667 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.
Joined: 05 Oct 2008 Posts: 667 Location: Helsinki, Finland / nr. Alkmaar, Netherlands
Posted: Thu Dec 07, 2023 8:56 Post subject:
Log output from my latest update, from build 54420 to 54475 just a few moments ago.
First I checked that I had already updated easyddup.
After updating the router, LAN/WAN seemd to have continued to work, but the router GUI gave a 404 error.
A few days ago I travelled from a location with an R7800 that I have updated every time a new build was posted, and I don't think those updates ended the same way as at the end of this log:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 29.6M 100 29.6M 0 0 3313k 0 0:00:09 0:00:09 --:--:-- 3394k
Downloaded file OK.
WARNING THIS COULD BRICK YOUR ROUTER!!!
File to burn: ./fwcache/12-07-2023-r54475/netgear-xr500/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/12-07-2023-r54475/netgear-xr500/dd-wrt-webupgrade.bin
WARNING: DO NOT INTERRUPT...
WAIT FOR BURN TO COMPLETE (at least 5 minutes)
Done burning
./easyddup.sh: line 517: /bin/sync: I/O error
Rebooting...
./easyddup.sh: line 520: /sbin/reboot: I/O error
root@XR500:/opt/easyddup#
Before rebooting the router manually or in whatever way I can, I try to post this for yoyoma to read.
Lately I have had to reboot the R7800 in the previous location after every update because the update would leave the thumbdrive optware fs dirty. My shutdown script repairs it.
It remains to be seen how this XR500 behaves.
Log output from my latest update, from build 54420 to 54475 just a few moments ago.
First I checked that I had already updated easyddup.
After updating the router, LAN/WAN seemd to have continued to work, but the router GUI gave a 404 error.
A few days ago I travelled from a location with an R7800 that I have updated every time a new build was posted, and I don't think those updates ended the same way as at the end of this log:
WAIT FOR BURN TO COMPLETE (at least 5 minutes)
Done burning
./easyddup.sh: line 517: /bin/sync: I/O error
Rebooting...
./easyddup.sh: line 520: /sbin/reboot: I/O error
root@XR500:/opt/easyddup#
Before rebooting the router manually or in whatever way I can, I try to post this for yoyoma to read.
Lately I have had to reboot the R7800 in the previous location after every update because the update would leave the thumbdrive optware fs dirty. My shutdown script repairs it.
It remains to be seen how this XR500 behaves.
K6.1 has issue, you need the "alternate_reboot" (uncomment the #PREREBOOT_CB line):
yoyoma2 wrote:
New version 0.9.4 (October 30th).
Changes:
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"
Joined: 05 Oct 2008 Posts: 667 Location: Helsinki, Finland / nr. Alkmaar, Netherlands
Posted: Thu Dec 07, 2023 10:19 Post subject:
It was my fault. I had updated easyddup, but not edited easyddup.ini. In fact on this router I didn't have easyddup.ini, yet. So I copied the sample file and edited the new easyddup.ini according to the instructions and comparing to the easyddup.ini file on my R7800.
Boldly changing some other settings as well.
Next upgrade should be more streamlined. We can wait for it ...
This latest upgrade restored the Internet LED functionality ...
Joined: 05 Oct 2008 Posts: 667 Location: Helsinki, Finland / nr. Alkmaar, Netherlands
Posted: Thu Dec 07, 2023 20:04 Post subject:
yoyoma2 wrote:
Glad you got it working (thanks @IONK). Just curious what does /nr mean in your location? "near"?
Yes, near Alkmaar, the city with the weekly cheese market. Also the first city in the Low Lands to keep the Spanish outside the city walls over 400 years ago in the 80-year war of independence Hence 'Alcmaria Victrix' ...
dd-wrt doesn't really make a script like this easy.
Tried using it for my router, and through no fault of this script, it doesn't work.
dd-wrt has no way of identifying the name of the board as used for the firmware.
My board name through nvram is Asus RT-AC68U C1 however the board name is asus-rt-ac68u,
this script guesses asus-rt-ac68u-c1 - a good guess as the firmware filename is not included anywhere in the firmware...
Try running easyddup.sh -n to see if you can get the version you want (with -n nothing is done so you can play with it harmlessly). If the automatic hardware detection doesn't guide you to the version you want (64bit), look at easyddup.ini.sample for the lines below where you can force a specific folder in your easyddup.ini from this list.