Ga naar inhoud


FAQ: Enigma2 - Automatisch wissen van opnames


Michel

Aanbevolen berichten

  • Beheerder

Omdat ik zelf heel erg veel opneem en het vervelend vindt om dagelijkse opnames steeds handmatig te wissen heb ik daarvoor een script gebouwd. Omdat wellicht niet iedereen even goed weet hoe je bash script kunt gebruiken op je enigma2 receiver, hierbij een uitleg:

 

Ik ga er in de uitleg vanuit dat je weet hoe je via ssh of telnet met je box kunt verbinden. 

telnet 192.168.1.100

of....

ssh root@192.168.1.100

...uiteraard het IP-adres van jouw box gebruiken

 

Voorbereiding:

 

Installeer nano (een eenvoudigere teksteditor)

opkg install nano

Gebruik nano tijdelijk als editor om je crontab (taakplanner) te bewerken:

export VISUAL=nano; crontab -e

of...

 

Gebruik nano permanent als editor om je crontab mee te editten:

nano /etc/profile

en edit de regel:
 

Quote

EDITOR="/bin/vi"      # needed for packages like cron

 

en wijzig naar:
 

Quote

EDITOR="/usr/bin/nano      # needed for packages like cron


opslaan door op CONTROL-X te drukken en YES te kiezen, gevolgd door enter.

 

Script maken dat de opnames verwijderd:

 

Ik plaats scripts altijd op mijn hdd in een aparte map 'scripts'

mkdir /hdd/scripts

Maak en edit het script om de opnames automatisch te verwijderen.

nano /hdd/scripts/delete_recordings.sh

Plak deze tekst (voorbeeld) in die file (gewoon d.m.v. control+v)

#!/bin/bash
find /hdd/movie/ -type f -iname '*RTL\ Nieuws*' -mtime +1 -exec rm -f {} \;
find /hdd/movie/ -type f -iname '*NOS\ Jeugdjournaal*' -mtime +1 -exec rm -f {} \;
find /hdd/movie/ -type f -iname '*De\ 10\ grappigste*' -mtime +7 -exec rm -f {} \;
find /hdd/movie/ -type f -iname '*Freek\ in\ het\ wild*' -mtime +14 -exec rm -f {} \;
find /hdd/movie/ -type f -iname '*Freeks\ wilde\ wereld*' -mtime +14 -exec rm -f {} \;
find /hdd/movie/ -type f -iname '*Eigen\ Huis\ &*' -mtime +7 -exec rm -f {} \;
find /hdd/movie/ -type f -iname '*Frank\ Visser\ rijdt*' -mtime +7 -exec rm -f {} \;
find /hdd/movie/ -type f -iname '*De\ Grote\ Tuinverbouwing*' -mtime +7 -exec rm -f {} \;
find /hdd/movie/ -type f -iname '*Team\ spoedeisende\ hulp*' -mtime +7 -exec rm -f {} \;
find /hdd/movie/ -type f -iname '*Kopen\ Zonder\ Kijken*' -mtime +7 -exec rm -f {} \;

Korte uitleg:

Het find commando zoekt in /hdd/movie/ zonder rekening te houden met hoofd- en kleine letters naar alles tussen de ' '. Omdat Linux spaties anders behandeld dan windows, dien je iedere spatie vooraf te gaan met een \. Het * (wildcard) dient om aan te geven dat alles dat voor de door mij ingevoegde naam, of alles daarna mij niet interesseert. Match dus alles ervoor en erna.
 

-mtime kijkt naar de ouderdom van de file ( +7 is bijvoorbeeld 7 dagen na de aanmaakdatum) en -exec rm -f verwijderd het resultaat van de find actie (ofwel verwijderd alle files die matchen). 

 

Je kunt testen of je regel werkt door in telnet gewoon het eerste deel uit te voeren:

find /hdd/movie/ -type f -iname '*RTL\ Nieuws*' -mtime +1

En dit geeft je dan als het goed is alle RTL Nìeuws opnames op je HDD die ouder zijn dan 1 dag..

 

Ben je tevreden met je script, dan kan je het opslaan door op CONTROL-X te drukken en YES te kiezen, gevolgd door enter. Je verlaat nu nano en het bestand is opgeslagen in /hdd/scripts/

 

Maak het script uitvoerbaar:

chmod +x /hdd/scripts/delete_recordings.sh

 

Automatiseren (cron)

 

Nu het script klaar is wil je het natuurlijk automatisch uitvoeren. Ik wil dit graag 's nachts om 2 uur doen, dus:

crontab -e

Als je het goed is krijg je nu een lege pagina te zien, of eventueel een pagina met eerder aangemaakte taken.

 

Voeg deze regel toe:

0 */3 * * *     /hdd/scripts/delete_recordings.sh > /dev/null

opslaan door op CONTROL-X te drukken en YES te kiezen, gevolgd door enter. Je verlaat nu de taakplanner en de taak is opgeslagen en wordt nu eenmaal per 3 uur uitgevoerd.

 

Wil je dit maar 1x per dag dan gebruik je bijvoorbeeld:

0 1 * * *     /hdd/scripts/delete_recordings.sh > /dev/null

voor 01:00uur 's nachts

 

Als het goed is worden nu al je opnames steeds verwijderd indien ouder dan -mtime +X

 

Suc6!

 


 

 

Aanvullende info:

 

find manual: http://man7.org/linux/man-pages/man1/find.1.html

nano manual: https://www.nano-editor.org/dist/v2.2/nano.html

crontab manual: https://www.computerhope.com/unix/ucrontab.htm

 

Om het script handmatig te testen:

sh /hdd/scripts/delete_recordings.sh 

 

aangepast door Michel
verbetering

Gebruik je een advertentie blocker? Sluit onze website dan uit. Zonder advertenties kan deze site niet voortbestaan.

Link naar reactie
Delen op andere sites


heel mooi maar in openvix zit dit gewoon ingebakken.

Groetjes,salutations,greetings.
1 x Gibertini 1,10 vast 3 sats + 1 x Triax 88 cm rotor
Vu + Duo2 twin sat tuner  4 X DVB-S2 en 1 x turbo DVB-C + OpenVix + idem dual tuner and vu duo2 fallback tuner

Octagon SF8008 4K  Openvix (via ethernetconnectie/WIFI fallbacktuner)

Link naar reactie
Delen op andere sites

  • Beheerder

Ik gebruik geen openvix en mijn box staat in de meterkast en ik gebruik die met Dream Player op een AndroidTV (shield).

Gebruik je een advertentie blocker? Sluit onze website dan uit. Zonder advertenties kan deze site niet voortbestaan.

Link naar reactie
Delen op andere sites

Dat vroeg ik mij ook af... en waarschijnlijk zie ik het probleem niet goed... maar als je klaar met kijken bent van je opname, waarom dan niet onmiddellijk wissen? Zo doe ik het altijd. Nu kan het toch gebeuren dat je de opname nog niet gezien hebt na 7 dagen, en dan is hij gewist... en al de opnames die al na 1 dag gezien hebt, blijven staan.

Ik zie het nut eerlijk gezegd niet van zo een toepassing. Maar als je er zelf wat aan hebt, is het uiteraard erg fijn dat je het zelf kon programmeren.

- VU+ Ultimo 4K met 1x DVB-S2 FBC Twin + 1x DVB-C/T2 Dual tuner met VTI icm 2x een CityCom 2000 CCA850 voor Thor 1W en Astra 19.2Ost
 

 

Missachtet wird, was es umsonst gibt  (Else Pannek)

Link naar reactie
Delen op andere sites

  • Beheerder

Dit zal vast niet voor iedereen handig zijn, maar ik neem o.a. iedere dag met de autotimer het journaal en het jeugdjournaal op. Voor mijn vrouw neem ik nog een paar dagelijks en wekelijks terugkerende programma's op, die we niet willen bewaren.

 

Om te voorkomen dat ik iedere dag van alles moet wissen (ook als ik het niet gekeken heb) als als ik het vakantie ga mijn schijf eventueel vol loopt, is dir voor ons handig. Dacht ik deel het, als je het niet handig vind kan je het natuurlijk gewoon overslaan. ;)

Gebruik je een advertentie blocker? Sluit onze website dan uit. Zonder advertenties kan deze site niet voortbestaan.

Link naar reactie
Delen op andere sites

Ik gebruik helemaal geen satelliet ontvanger meer, maar ik vind het wel netjes dat Michel dit deelt. Ik snap daarom ook niet de negativiteit / kritiek... Als je het niet nuttig vind, dan negeer je het toch gewoon? Als er opbouwende kritiek is, om het script te verbeteren dus!, dan zou ik zeggen deel dat... Maar als ik de berichten boven mij lees, dan vraag ik mij af of dit mensen niet gaat afschrikken om wat te delen....?

  • Like 2

“Success is not final, failure is not fatal: it is the courage to continue that counts.” ~ Winston Churchill

Link naar reactie
Delen op andere sites

24 minuten geleden, Big fellow zei:

Ik gebruik helemaal geen satelliet ontvanger meer, maar ik vind het wel netjes dat Michel dit deelt. Ik snap daarom ook niet de negativiteit / kritiek... Als je het niet nuttig vind, dan negeer je het toch gewoon? Als er opbouwende kritiek is, om het script te verbeteren dus!, dan zou ik zeggen deel dat... Maar als ik de berichten boven mij lees, dan vraag ik mij af of dit mensen niet gaat afschrikken om wat te delen....?

Je zou het script aan kunnen passen om bijvoorbeeld alle opnames na x aantal dagen te wissen. Maar wat moet je dan veranderen en wat moet je dan invullen?

find /hdd/movie/ -type f -iname '*RTL\ Nieuws*' -exec rm -f {} \;

Laat je dan het nu vet gedrukte deel oningevuld?

You know when you've been shagged.

I like receivers who give me pleasure.

Link naar reactie
Delen op andere sites

On 4/24/2020 at 10:24 PM, Michel said:

find /hdd/movie/ -type f -iname '*De\ 10\ grappigste*' -mtime +7 -exec rm -f {} \;

 

Veranderen in:

find /hdd/movie/ -type f -iname '*' -mtime +7 -exec rm -f {} \;

 

Waar "+7" het aantal dagen is uiteraard..

“Success is not final, failure is not fatal: it is the courage to continue that counts.” ~ Winston Churchill

Link naar reactie
Delen op andere sites

  • Beheerder

Dat staat ook vrij duidelijk in de uitleg en in het voorbeeld 😏
en inderdaad, de lol van het veel moeite doen om zaken te delen gaat er zo snel vanaf.

Gebruik je een advertentie blocker? Sluit onze website dan uit. Zonder advertenties kan deze site niet voortbestaan.

Link naar reactie
Delen op andere sites

Als je mijn reactie als negatieve kritiek gelezen hebt, spijt me dat... zo was het niet bedoeld.

Ik vroeg me alleen af waarvoor je dit zou gebruiken, en daar kreeg ik een goed antwoord op...

Ik zou het dus erg jammer vinden als creatieve geesten zich geremd zouden voelen om dit soort zelfgeschreven programma's hier te publiceren.

  • Like 1

- VU+ Ultimo 4K met 1x DVB-S2 FBC Twin + 1x DVB-C/T2 Dual tuner met VTI icm 2x een CityCom 2000 CCA850 voor Thor 1W en Astra 19.2Ost
 

 

Missachtet wird, was es umsonst gibt  (Else Pannek)

Link naar reactie
Delen op andere sites

  • Beheerder
3 uren geleden, Sverige zei:

Als je mijn reactie als negatieve kritiek gelezen hebt, spijt me dat... zo was het niet bedoeld.

Ik vroeg me alleen af waarvoor je dit zou gebruiken, en daar kreeg ik een goed antwoord op...

Ik zou het dus erg jammer vinden als creatieve geesten zich geremd zouden voelen om dit soort zelfgeschreven programma's hier te publiceren.

 

Het is maar een simpel script hoor, ik ben zelf geen programmeur, dus heel veel verder dan eenvoudige bash scripts kom ik niet ;) 

 

Ik probeer altijd zoveel mogelijk te automatiseren. Alle handelingen die ik elke dag meermaals moet herhalen, probeer ik weg te automatiseren. Blijft er meer tijd over voor leuke dingen :)

 

Op basis van deze uitleg kan je natuurlijk nog veel meer automatiseren op je box, bijvoorbeeld je backups ergens anders archiveren, enigma2 's nachts herstarten, een update van een custom repo met picons van github halen etc.

Gebruik je een advertentie blocker? Sluit onze website dan uit. Zonder advertenties kan deze site niet voortbestaan.

Link naar reactie
Delen op andere sites

4 hours ago, Sverige said:

Als je mijn reactie als negatieve kritiek gelezen hebt, spijt me dat... zo was het niet bedoeld.

Dat komt door deze opmerking:

On 4/25/2020 at 2:18 PM, Sverige said:

waarschijnlijk zie ik het probleem niet goed...

 

Ik kreeg ook van Michel de indruk dat hij het zo opvatte:

9 hours ago, Michel said:

inderdaad, de lol van het veel moeite doen om zaken te delen gaat er zo snel vanaf.

 

Gelukkig dat wij het verkeerd hebben begrepen...

 

@Michel : Welke output krijg je te zien in de emails van cron? Ik denk namelijk dat als er geen bestanden worden gevonden dat er een foutmelding komt? Als je daar vanaf wilt, kan je op de regel in de crontab entry "2>/dev/null" toevoegen. Dus op deze manier:

0 2 * * * root sh /hdd/scripts/delete_recordings.sh 2>/dev/null

 

“Success is not final, failure is not fatal: it is the courage to continue that counts.” ~ Winston Churchill

Link naar reactie
Delen op andere sites

Maak een account aan of log in om te reageren

Je moet een lid zijn om een reactie te kunnen achterlaten

Account aanmaken

Registreer voor een nieuwe account in onze community. Het is erg gemakkelijk!

Registreer een nieuwe account

Inloggen

Heb je reeds een account? Log hier in.

Nu inloggen
×
×
  • Nieuwe aanmaken...