Challenge 3

Slim back-upsysteem voor Roos-Marie

Een automatisch back-upsysteem op een Raspberry Pi: van onderzoek tot advies.

Waar gaat het over?

Roos-Marie is belangrijke bestanden kwijtgeraakt op haar laptop. Ze is geen computerexpert en wil er niet over na hoeven denken. In drie weken hebben we onderzocht wat er mis kan gaan, een automatisch back-upsysteem op een Raspberry Pi gebouwd en getest, en haar een advies gegeven voor de toekomst.

Week 1–2 · Week 2–3

Week 1–2

Onderzoek

Breng mogelijke oorzaken in kaart

De opdracht: Onderzoeken waarom de bestanden van Roos-Marie zijn verdwenen: minstens drie oorzaken, met per oorzaak wat er gebeurt, waarom het kon gebeuren en hoe het voorkomen had kunnen worden.

Uitwerking: Ik beschrijf drie oorzaken: Dropbox die het verwijderen van een map heeft gesynchroniseerd, bestanden die in de terminal met rm zijn gewist en een beschadigd bestandssysteem doordat de laptop niet netjes is afgesloten.

Engels

Explain It Simply

De opdracht: Voor Roos-Marie, die geen computerexpert is, in eenvoudig Engels (150 tot 200 woorden) drie onderwerpen uitleggen zonder moeilijke woorden.

Uitwerking: Ik leg uit wat een back-up, cloudopslag en versleuteling (encryption) zijn, elk met een voorbeeld uit het dagelijks leven.

IT

Linux 101

De opdracht: De basis van Linux leren: systeeminformatie opvragen (kernel, uptime, geheugen, schijfruimte en processen) en werken met mappen, gebruikers en rechten.

Uitwerking: Ik installeerde Linux Mint in VirtualBox, werkte het systeem bij met apt en zocht met hardinfo en top de kernelversie, uptime, het vrije geheugen en de processen op. Daarna maakte ik met één mkdir-commando drie mappen aan en een nieuwe gebruiker met toegang tot één map.

Ontwerp

MoSCoW

De opdracht: Alle wensen voor het back-upsysteem indelen in Must have, Should have, Could have en Won't have.

Uitwerking: We zetten de wensen op volgorde van belangrijkheid. Must have zijn onder andere een lokaal prototype op een Raspberry Pi, een automatische back-up met Python, beperkte toegangsrechten en een duidelijke melding als er iets misgaat.

Ontwerp

Ontwerpen

De opdracht: Een eerste concept van het back-upsysteem bedenken: wat het doet, hoe het werkt en hoe je het uitlegt aan iemand zonder technische kennis.

Uitwerking: Na een brainstorm tekenden we het systeem. Elk halfuur en na het opstarten kijkt de Raspberry Pi of de USB-stick erin zit, kopieert hij nieuwe en veranderde bestanden en schrijft hij het resultaat in een logboek. Daarna legden we het uit in gewone taal, alsof we het aan onze oma vertellen.

Ontwerpschema van het back-upsysteem

IT

Raspberry Pi / Linux

De opdracht: Het back-upscript installeren op een Raspberry Pi, zodat het zelfstandig bestanden uit een gekozen map naar een veilige plek kopieert.

Uitwerking: We zetten Raspberry Pi OS op de Pi, werkten hem bij, maakten een testmap met voorbeeldbestanden en kozen een USB-stick als plek voor de back-up. Daarna zetten we het script met scp op de Pi en stelden we de rechten in.

Software development

Script

De opdracht: Een Python-script schrijven dat regelmatig een kopie maakt van belangrijke bestanden in een aparte back-upmap en vanzelf start als de Raspberry Pi aangaat.

Uitwerking: Eerst vergeleken we manieren om bestanden te kopiëren in Python. Ons script backup.py kopieert alleen nieuwe en veranderde bestanden naar de USB-stick en bewaart oude versies in een aparte map. Met cron draait het elke 30 minuten en één keer na het opstarten.

Testen

Test je oplossing

De opdracht: Testen of het script doet wat het moet doen, goed omgaat met fouten, begrijpelijk is voor de gebruiker en veilig is.

Uitwerking: We schreven negen testgevallen uit, bijvoorbeeld wat er gebeurt als de USB-stick eruit is en of tijdelijke bestanden worden overgeslagen. Een deel daarvan draait automatisch met test_backup.py.

Expo

Expo website

De opdracht: Een website maken waarmee je de resultaten van de challenge presenteert, met HTML en CSS in je eigen stijl.

Uitwerking: Dat is deze site: alle opdrachten van periode 1 per challenge en per week, met uitleg en downloads.

Week 2–3

IT · Software development

Adviesrapport

De opdracht: Een onderbouwd advies geven: blijft Roos-Marie werken met ons script of stapt ze over op een andere back-upoplossing?

Uitwerking: We brachten de risico's van het huidige script in kaart en vergeleken vijf oplossingen met de 3-2-1-regel. Ons advies is een combinatie: het eigen script maakt elke 30 minuten een back-up op de USB-stick en Duplicati maakt elke nacht een versleutelde back-up in de cloud bij Backblaze B2.

Digitale vaardigheden

Documentnaam

De opdracht: Uitleggen waarom goede bestandsnamen belangrijk zijn en op basis van bronnenonderzoek een eigen logische naamgeving bedenken.

Uitwerking: Met vier bronnen, onder andere van de Erasmus Universiteit en Microsoft, bedachten we regels voor bestandsnamen en pasten we die toe op acht voorbeeldbestanden. Daarom heet ons adviesrapport nu IlyasM_Adviesrapport_C3_20261102_v1.docx.

Nederlands

Eisen voor tekstdocumenten (3F)

De opdracht: Documenten laten voldoen aan de eisen van school: Arial of Calibri 12 pt, regelafstand 1,5, een voorblad, een inhoudsopgave en paginanummers.

Uitwerking: We controleerden ons adviesrapport met een controlelijst en noteerden per eis of het klopt en wat we hebben aangepast.

Burgerschap · Engels

Informational Flyer

De opdracht: Een Engelstalige flyer over digitale veiligheid: waarom automatische back-ups belangrijk zijn en wie daar extra hulp bij nodig heeft.

Uitwerking: Onze flyer van twee pagina's legt uit wat een back-up is, wanneer die je redt, wat de 3-2-1-regel is en hoe je stap voor stap een automatische back-up aanzet op een iPhone, Android-telefoon, Windows-pc en Mac.

Projectmanagement

Mapstructuur

De opdracht: Een duidelijke mappenstructuur ontwerpen voor challenge-opdrachten, workshops, presentaties en screenshots, met als hoofdmap documentbeheer.

Uitwerking: We maakten de structuur aan in OneDrive: challenges per week, workshops per vak, presentaties en screenshots. In het document staat de hele mappenboom.