Is er al iemand geweest die het heeft geautomatiseerd om het script van Fabianishere te draaien na een firmware update?
Ik kreeg van het weekend de notificatie op mijn telefoon dat mijn CGU een update had gekregen. Ok fijn, goed bezig. Tot ik beneden de TV aanzette en ik weer die oude error te zien kreeg... noooooooo!!! Toen bedacht ik me dat het scriptje dat ik via dit forum had gevonden hiermee was overschreven, dus even het scriptje gedraaid, door de wizard heen gegaan en daarna deed hij het weer.
Toen dacht ik, dat kan vast beter
Dus nu ben ik samen met CGPT een script aan het vibe coden die op de router blijft staan, die elke keer als er een reboot is geweest checkt of die instellingen er nog staan, zo ja, doe niets, zo nee, draai het script zelf. Als ik dan wakker word zie ik die notificatie, dan heeft het script al gedraaid en zijn mijn instellingen weer teruggezet, hoef ik alleen maar de set top box te rebooten!
Maar met mijn ervaringen met CGPT en het feit dat hij nog wel eens iets vergeet durf ik het er niet zo goed op te zetten, ik heb namelijk nul verstand van de code die hij wil uitvoeren.
Dit is wat hij voorstelt;
SSH into CGU and create:
code:
1
| vi /usr/local/bin/iptv-autofix.sh |
Paste this:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| #!/bin/sh
LOG="/var/log/iptv-autofix.log"
echo "=== $(date) ===" >> $LOG
if ! command -v udm-iptv >/dev/null 2>&1; then
echo "udm-iptv missing. Reinstalling..." >> $LOG
sh -c "$(curl -sSf https://raw.githubusercontent.com/fabianishere/udm-iptv/master/install.sh)"
fi
if ! systemctl is-active --quiet udm-iptv; then
echo "udm-iptv not running. Reconfiguring..." >> $LOG
udm-iptv reconfigure <<EOF
eth4
kpn
br4
2
no
EOF
systemctl restart udm-iptv
fi
echo "Done." >> $LOG |
Save and exit.
Make it executable:
code:
1
| chmod +x /usr/local/bin/iptv-autofix.sh |
Step 2, create systemd service.
Create:
code:
1
| vi /etc/systemd/system/iptv-autofix.service |
Paste:
code:
1
2
3
4
5
6
7
8
9
10
| [Unit]
Description=Auto repair udm-iptv after firmware updates
After=network-online.target
[Service]
Type=oneshot
ExecStart=/usr/local/bin/iptv-autofix.sh
[Install]
WantedBy=multi-user.target |
Save.
Enable it:
code:
1
2
| systemctl daemon-reload
systemctl enable iptv-autofix |