Windows 10 opschonen automatiseer je met Tron-script

Windows heeft best wel wat onderhoud nodig. Optimaliseren en troubleshooten vergen flink wat moeite en tools, maar niet met Tron: een uitgebalanceerd batchscript dat het hele proces automatiseert, van analyse tot herstel. Windows 10 opschonen is ermee een fluitje van een cent.

Toegegeven, het was met de nodige scepsis dat we kennismaakten met Tron. Het leek ons de zoveelste universele redmiddel dat zogenaamd met één muisklik een compleet systeem kan herstellen en optimaliseren. Intussen hebben we onze mening bijgesteld en zijn we enthousiast geraakt over Tron. Vanwaar deze switch?

Om te beginnen is Tron geen zwarte doos waarvan je niet weet wat die met je systeem uitvreet. Tron is een gratis en adwarevrije collectie van tools en functies, aangestuurd vanuit enkele goed gestructureerde scripts. Deze tools zitten vaak al in Windows ingebouwd (zoals de opdrachtregelscommando’s wmi, dism, sfc, ipconfig en bcdedit) of zijn externe tools die bekend bij een grote schare computergebruikers (zoals McAfee Stinger, Malwarebytes Anti-Malware en O&O ShutUp10).

Het gaat bovendien om opensource-batchscripts die zich zonder veel programmeerkennis laten doorgronden en ook bewerken – de maker speelt weliswaar met het idee van een PowerShell-editie. Verder hoef je niet noodzakelijk het complete script uit te voeren. Je kunt bijvoorbeeld alleen het script opstarten voor het verwijderen van cachebestanden (fase 1) of voor het opsporen en verwijderen van malware (fase 3). Verder geeft Tron je realtime feedback en houdt de tool uitvoerige logs bij.

Tron downloaden

Om helemaal het Tron-concept helemaal te begrijpen, doe je er goed aan zowel de Tron-wiki op Reddit als de beschrijvende handleiding door te nemen. Beide informatiebronnen geven je nuttige informatie over de mogelijkheden en de werking van het Tron-script.

Ben je overtuigd, haal de tool dan op via de Download-link (een beetje verborgen in de rechterkolom) op deze Reddit-pagina. Je belandt op een pagina met links naar diverse mirrorsites, waaronder de officiële repository op https://bmrf.org/repos/tron.

Voor we verdergaan, raden we aan een back-up te maken van je belangrijke bestanden voor het geval er onverhoeds toch iets misgaan. We raden hiervoor onze cursus Back-up en Herstel aan!

Plaats het gedownloade exe-bestand (circa 560 MB) bijvoorbeeld op je bureaublad en start de tool op. Het blijkt om een zelfuitpakkend archief te gaan dat twee mappen maakt: integrity_verification en tron. De eerste bevat SHA-256-checksums voor de meegeleverde bestanden, wat je toelaat de bestandsintegriteit te controleren.

De tweede bevat naast het master-script tron.bat de map resources met daarin een submap voor elke scriptfase (zoals stage_0_prep, stage_1_tempclean enzovoort), telkens inclusief het bijbehorende batch-bestand.

Eerste keer opstarten

De neiging is groot om meteen tron.bat op te starten door met rechts op dit bestand te klikken en Als administrator uitvoeren te kiezen. Dat kan, maar er kleven wel nadelen aan deze opstartmethode. Je kunt geen parameters meegeven en bij eventuele probleemsituaties krijg je wellicht geen foutmeldingen te zien. Verderop bespreken we daarom een beter alternatief.

We willen er tevens op wijzen dat je Tron best opstart vanuit een ‘normale’ Windows-omgeving, inclusief internetverbinding. Dit laatste zorgt er namelijk voor dat Tron de recentste bloatware- en malware-definities kan ophalen. Als het niet anders kan, start je Tron vanuit de veilige modus van Windows op, bij voorkeur met netwerkmogelijkheden. Door een bug verhindert Windows 10 jammer genoeg dat Tron een systeemherstelpunt mag maken. Dat doe je dus het best eerst zelf.

Wie hoopt Tron vanaf een live-cd of vanuit een WinPE-omgeving op te starten, moeten we teleurstellen: Tron werkt met diverse systeemvariabelen die niet beschikbaar zijn in zo’n omgeving. En let op, Tron laat je eerst een rood venster zien waarin je letterlijk de tekst I AGREE moet intikken voor Tron verder wil gaan.

Zoals gezegd laat je de uitvoering van het script volledig ongemoeid. Tron vraagt normaal gesproken slechts één keer om gebruikersinvoer (het indrukken van de Scan-knop bij Malwarebytes Anti-Malware), maar werkt intussen de rest van het script af.

Tron bedienen via opdrachtprompts

De beste manier om Tron op te starten, is via de Opdrachtprompt die je als administrator uitvoert. Vervolgens gebruik je het commando cd om naar de tron-map te navigeren. Staat die op je eigen bureaublad, dan ziet dat commando er als volgt uit:

cd %userprofile%\Desktop\tron

Vanuit deze map voer je dan het commando tron.bat uit, ervan uitgaande dat je geen specifieke parameters wilt meegeven. Stel, je wilt niet het complete script uitvoeren, maar alleen de tools uit fase 1. Dan open je eerst de betreffende map met het eerste commando en start je het script met het tweede:

cd %userprofile%\Desktop\tron\resources\stage_1_tempclean stage_1_tempclean.bat

Deze manier doet je wellicht vermoeden dat het werken met parameters alleen mogelijk is vanaf de Opdrachtprompt, maar dat is niet helemaal correct. Je kunt namelijk ook de standaardinstellingen wijzigen waarmee tron.bat opstart. Dat doe je door het bestand \tron\resources\functions\tron_settings.bat aan te passen, bij voorkeur met een teksteditor die syntaxmarkering ondersteunt, zoals Notepad++.

In uitvoerige commentaarregels geeft de maker hier mooi de correlatie aan tussen de parameters op de opdrachtregel en de instructies in het batch-bestand. Wil je bijvoorbeeld extra informatie zien tijdens de uitvoering (wat het hele proces wel merkbaar vertraagt), dan start je tron.bat met de parameter -v:

tron.bat -v

Hetzelfde effect bereik je door de standaardinstellingen te wijzigen: verander set VERBOSE=no in set VERBOSE=yes.

Werken met parameters

Het Tron-script laat zich dus deels bijsturen, maar houd er rekening mee dat bij een conflicterende configuratie de opdrachtregelparameters prioriteit krijgen op het configuratiebestand.

Er zijn in totaal meer dan dertig parameters. Deze zijn prima gedocumenteerd (zie de eerdergenoemde handleiding) en daarom beperken we ons hier tot de interessantste, maar ook bij de bespreking van de diverse deelscripts komen nog heel wat parameters aan bod.

Met de parameter -c (Config dump) krijg je een overzicht van de huidige configuratie-instellingen en wordt het script verder niet uitgevoerd. Bij de parameter -d (Dry run) worden evenmin taken uitgevoerd, maar krijg je wel een chronologische lijst van wat er zonder deze parameter zou gebeuren. We raden je aan Tron eerst met deze parameters uit te proberen.

Wil je de pc na de scriptuitvoering automatisch herstarten, gebruik dan -r (Reboot) of -o om het toestel af te sluiten. De parameter -udl (Upload Debug Logs) gebruik je wellicht liever niet, tenzij je diverse logbestanden naar de ontwikkelaar wilt uploaden. Nuttiger is de parameter -er (Email Report), vooral wanneer je Tron op een fysiek verwijderd toestel hebt opgestart.

Wanneer je het bestand SwithMailSettings.xml in de map \tron\resources\stage_7_wrap-up\email-report via je teksteditor voorziet van de juiste smtp-server en -poort, gebruikersnaam en wachtwoord (let wel: dat gebeurt in platte tekst), zorgt deze parameter ervoor dat diverse logbestanden na afloop naar je worden doorgemaild.

Gebruik je meerdere parameters tegelijk, tik dan een spatie tussen elke parameter.

Analyse

Nu geven we wat nuttige informatie bij de diverse deelscripts, maar raadpleeg zeker ook de eerder vermelde handleiding (hoofdstuk ‘13. Full description of ALL actions’). We gaan er nu even van uit dat je het Tron-script inderdaad hebt uitgevoerd. Na afloop krijg je dan een scherm met een chronologisch overzicht van alle uitgevoerde operaties en eventuele meldingen.

Het is een goed idee om je systeem zo snel mogelijk na de uitvoering van het script te herstarten, zodat eventuele wijzigingen volledig worden doorgevoerd. Vervolgens kun je de logbestanden rustig bestuderen. Die bevinden zich standaard in de map C:\logs\tron. De hoofdlog is het tekstbestand tron.log. In de submap summary_logs tref je tekstbestanden aan met een overzicht van verwijderde bestanden en programma’s. In de submap raw_logs staan ook lijsten van bestanden en programma’s die voor en na de uitvoering van het script op je systeem stonden. Die kun je bijvoorbeeld vergelijken via (de gratis versie van) een tool als ExamDiff.

Ook nuttig, zeker in het geval er iets fout is gegaan, zijn de submappen backups (met de Windows logboeken) en registry_backup. Deze laatste bevat diverse registerhives, maar ook het programma ERDNT.EXE, waarmee je desnoods de geback-upte registerhives kunt terugzetten.

Laten we de deelscripts naderbij bekijken.

Fase 0:Prep

Tijdens deze fase analyseert Tron je Windows-omgeving en neemt die enkele voorzorgsmaatregelen, zoals een registerback-up en een systeemherstelpunt. Dit laatste kun je desnoods terugzetten door op Windows-toets+R te drukken en rstrui.exe uit te voeren, waarna je de verdere instructies volgt.

De tool Rkill sluit alle verdachte processen af. Processen die je daarvan absoluut wilt uitzonderen, plaats je op een afzonderlijke regel in het tekstbestand \tron\resources\stage_0_prep\rkill\rkill_process_whitelist.txt.

Fase 1: Tempclean

In eerste instantie worden hier allerlei tijdelijke bestanden verwijderd met behulp van CCleaner. Daarbij worden standaard ook data uit de map %localappdata% verwijderd, die onder meer wordt gebruikt door browsers voor tijdelijke bestanden en door Microsoft Store apps. Om deze data daarvoor te beschermen, wijzig je in het bestand /tron/resources\stage_1_tempclean\ccleaner\ccleaner.ini in deze regel de waarde True in False:

(App)Local Storage *=True

Ook de meeste cookies worden verwijderd, behalve bekende inlog-cookies (zoals die voor Gmail). Gebruik de parameter -scc (Skip Cookie Cleanup) om alle cookies te behouden. Standaard worden ook de Windows logboeken geleegd, weliswaar na die eerst te hebben geback-upt.

Fase 2: De-bloat

Zoals de naam al suggereert, tracht deze fase alle overtollige of ongewenste (programma)bestanden te verwijderen. Je vindt een overzicht van de bestanden die beoordeeld worden in de volgende (bewerkbare) tekstbestanden, die zich allemaal bevinden in de map \tron\resources\stage_2_de-bloat\oem:

- programs_to_target_by_name.txt;

- programs_to_target_by_GUID.txt;

- toolbars_BHOs_to_target_by_GUID.txt.

Er worden standaard ook heel wat Microsoft Store-apps verwijderd. Nu kun je die desnoods nog wel terugzetten vanuit de Microsoft Store, maar je kunt ook vooraf zelf bepalen welke je wilt behouden, door die in de submap \metro uit de twee PowerShell-scripts weg te halen. Met de parameter -m (Metro apps) worden er geen Microsoft Store-apps verwijderd. Wil je fase 2 helemaal overslaan, dan gebruik je de parameter -sdb (Skip De-Bloat).

Verder wordt ook de OneDrive-integratie in Windows 10 ongedaan gemaakt, behalve als er zich al bestanden bevinden in de standaard OneDrive-map %userprofile%\OneDrive. Gebruik je hiervoor een andere map, voeg dan de parameter -sor (Skip Onedrive Removal) toe, zodat Tron OneDrive ongemoeid laat.

Fase 3: Disinfect

Om potentiële malware te verwijderen, zet Tron achtereenvolgend drie antivirustools in: Malwarebytes Anti-Malware, Kaspersky Virus Removal Tool en Sophos Virus Removal Tool. Wil je die liever niet uitvoeren, gebruik dan respectievelijk de volgende parameters: -sm (Skip Malwarebytes), -sk (Skip Kaspersky) en -ss (Skip Sophos), of je gebruikt -sa (Skip all Anti-virus) om ze alle drie over te slaan.

Standaard wordt Malwarebytes Anti-Malware na afloop ook weer gede-installeerd, tenzij je de parameter -pmb (Preserve MalwareBytes) meegeeft.

Fase 4: Repair

Om mogelijke corrupte data aan te pakken, maakt Tron uitvoerig gebruik van enkele ingebouwde Windows-functies en -tools, waaronder msizap, sfc, dism, chkdsk, ipconfig en netsh. Deze laatste twee zorgen ervoor dat niet alleen de dns- en arp-cache worden geleegd, maar ook dat de Windows-sockets worden gereset. Meer informatie hierover vind je hier.

Standaard koppelt Tron ook heel wat bestandsextensies weer aan de originele programma’s. Om dat te vermijden, moet je het reg-bestand dat naar zo’n extensie verwijst (bijvoorbeeld Default_JPG.reg en Default_JPEG.reg) verwijderen uit de map \tron\resources\stage_4_repair\repair_file_extensions.

Tron pakt ook grondig de telemetrische functies van Windows aan (lees: het traceren van gebruikers), met behulp van de tools Spybot Anti-Beacon en O&O ShutUp10. Om dit te voorkomen, zet je de parameter -str (Skip Telemetry Removal) in.

Fase 5: Patch

Tron updatet slechts een paar externe applicaties, indien die op je systeem zijn geïnstalleerd: 7-Zip en Adobe Flash Player. Wil je zoveel mogelijk geïnstalleerde toepassingen updaten, dan moet je dus naar een andere tool uitkijken, zoals Ninite of Chocolatey.

Wel gebruikt Tron de ingebouwde Windows-updatefunctie. Als je dat wilt, kun je tevens gebruikmaken van de tool WSUS Offline. In principe volstaat het hiervoor de complete inhoud van de map \wsusoffline\client te kopiëren naar \tron\resources\stage_5_patch\wsus_offline\client.

Om de reguliere Windows-updates juist niet uit voeren, geef je de parameter -swu (Skip Windows Updates) mee en met -swo blokkeer je ook updates via WSUS Offline.

Standaard verwijdert Tron gedownloade bestanden van eerder geïnstalleerde Windows-updates, zodat je die hierna niet (zomaar) meer kunt de-installeren. Gebruik de parameter -sdc (Skip DISM Cleanup) als je dit wilt voorkomen.

Fase 6: Optimize

De optimaliseerfase bevat eigenlijk maar twee componenten. Enerzijds zorgt Tron ervoor dat de grootte van de wisselbestanden door Windows wordt geregeld (in het geval dat je daar wijzigingen in had gemaakt). Met de parameter -spr (Skip Pagefile Reset) inzet. Anderzijds wordt je schijf gedefragmenteerd met behulp van de tool Defraggler.

Tron is wel zo slim om ssd’s niet mee te fragmenteren. Wil je defragmentatie hoe dan ook vermijden (want het is eigenlijk niet meer van deze tijd), gebruik dan -sd (Skip Defrag).

Fase 7 en 8

De afrondingsfase (‘Wrap-up’) zorgt ervoor dat de nodige logbestanden worden aangemaakt en eventueel worden doorgemaild, en dat Antimalware Malwarebytes wordt gede-installeerd. In principe maakt Tron ook weer een systeemherstelpunt, maar dat gebeurde blijkbaar niet op onze testsystemen.

Fase 8 (‘Custom Scripts’) is tenslotte een geheel optionele fase die alleen maar wordt uitgevoerd wanneer je zelf een of meer batch-bestanden hebt geplaatst in de map \tron\resources\stage_8_custom_scripts. Die zal Tron dan sequentieel uitvoeren.

Je mag ook andere (hulp)bestanden in deze map plaatsen, maar Tron zelf negeert die en dat geldt ook voor cmd-bestanden. Om de uitvoer van je batch-bestanden (tijdelijk) te verhinderen maak je gebruik van de parameter -scs (Skip Custom Scripts).

Geschreven door: Toon van Daele op

Category: Workshop, Windows 10, Windows 10

Tags: windows 10, Systeembeheer