Handleiding

Geen ruimte voor een upgrade of een pakket

Een klein bordje heeft 16 MB flash. Een pakket, wat logbestanden en twee backups later is dat op.

Je start een update en hij mislukt. In het logboek staat iets over onvoldoende ruimte, of de router downloadt wel maar installeert niet, of hij herstart en komt terug op de oude versie alsof er niets gebeurd is. Hetzelfde beeld krijg je bij het installeren van een extra pakket of het uploaden van een bestand.

Wat het niet is: dit is geen kapotte flash en meestal ook geen kapotte download. Het is rekenwerk. Een MikroTik moet het nieuwe pakket eerst neerzetten, dan uitpakken en installeren, en daar heeft hij tijdens de operatie meer ruimte voor nodig dan het bestand groot is. Op een apparaat met 16 MB opslag is dat snel krap.

Er zit ook een tweede vorm van "geen ruimte" in: te weinig geheugen. Een bordje met 32 of 64 MB RAM kan een upgrade beginnen en er halverwege mee ophouden omdat het werkgeheugen op is, terwijl de flash nog ruimte zat had. Kijk dus altijd naar beide getallen.

De snelle controles, op volgorde

  1. Hoeveel is er echt vrij? /system resource print. Goed antwoord: free-hdd-space ruim boven de grootte van het pakket dat je wilt installeren, en free-memory van een paar megabyte of meer. Minder dan een megabyte vrij is je antwoord.
  2. Wat ligt er? /file print. Goed antwoord: een korte lijst. Zie je oude .npk-bestanden, backups, exports, logbestanden of containerlagen, dan weet je waar de ruimte heen is.
  3. Welke pakketten zitten erop? /system package print. Goed antwoord: alleen wat je gebruikt. Een ongebruikte wireless, container, ups of zerotier kost ruimte zonder dat je er iets voor terugkrijgt.
  4. Hoe groot is de update? /system package update check-for-updates. Goed antwoord: een versienummer en een kanaal. Nu weet je hoeveel je moet vrijmaken.
  5. Is er externe opslag? /disk print. Goed antwoord: een USB-stick of NVMe die je voor containers en logbestanden kunt gebruiken, zodat de interne flash leeg blijft.
  6. Schrijft er iets naar de flash? /system logging action print en /system scheduler print. Goed antwoord: geen logactie met target=disk die je niet kent, en geen taak die elke dag een bestand achterlaat.

De gewone oorzaken, meest voorkomend eerst

Oude installatiebestanden zijn blijven liggen

Heb je ooit een .npk met de hand geüpload, dan staat die er vaak nog. Verwijder ze met /file remove [find name~"\\.npk"]. Dit is de snelste winst en meteen de veiligste.

Pakketten die je niet gebruikt

Een apparaat met zowel wireless als wifi erop draagt twee wifi-stacks terwijl er maar één actief kan zijn. Verwijder met /system package uninstall en herstart. Kijk voor de zekerheid eerst welke stack je configuratie gebruikt, zie Pakketten.

Logbestanden op de flash

Logging naar schijf is prettig als je iets moet terugzoeken, en het kost ruimte die niet vanzelf terugkomt. Zet het uit of verklein het aantal bestanden als de flash krap is.

Containers op de interne opslag

Een containerimage is al snel tientallen megabytes en de lagen blijven staan. Op interne NAND is dat niet alleen te groot, het slijt het geheugen ook. Containers horen op een USB-stick of NVMe.

Het bordje is gewoon klein

Een hAP lite of hEX lite heeft weinig geheugen en weinig flash. RouterOS v7 past erop, maar daarmee is de ruimte ook op. Hier helpt opruimen tot op zekere hoogte en daarna niet meer.

Upgraden in twee stappen

Heb je te weinig ruimte om te downloaden en te installeren, gebruik dan netinstall. Die schrijft het apparaat vanaf nul en heeft daarvoor geen vrije ruimte nodig. Maak wel eerst een export, want alles gaat weg. Zie Netinstall.

Wat de configurator hiervan doet

  • Op een apparaat waarvan de catalogus 64 MB geheugen of minder kent, zegt de tool het meteen: RouterOS v7 draait erop, maar ruim is het niet, houd de configuratie klein, installeer geen pakketten die je niet gebruikt, en kijk na het toepassen met /system resource print hoeveel er vrij is.
  • In Systeem kies je de RouterOS-versie waarvoor het script geschreven wordt en het update-kanaal. De schakelaar Automatisch updaten maakt een script en een planner die elke zondag om 04:00 controleert en installeert. Die herstart de router. Op een krap apparaat is dat precies het moment waarop je wilt weten of er ruimte was, dus laat hem op zo'n bordje liever uit.
  • Het onderdeel Containers zegt in zijn eigen inleiding dat je externe opslag als root-dir moet gebruiken, omdat NAND slijt. Het veld Opslag staat standaard op disk1, dus op een schijf en niet op de interne flash.
  • Zet je in Diensten & tools de wekelijkse backup aan, dan schrijft de planner elke week een .backup en een .rsc met de naam van de router. Ze overschrijven zichzelf, dus ze groeien niet, maar ze staan er wel altijd twee.
  • Kies je logging naar de flash, dan maakt het script vijf bestanden van duizend regels. Dat is bewust begrensd, maar het is niet niets op 16 MB.
  • Wat de tool niet doet: hij weet niet hoeveel ruimte er op jouw apparaat vrij is. De tool draait in je browser en praat nooit met de router. Hij kan je dus waarschuwen op grond van het model, niet op grond van de werkelijkheid. Kijk zelf met /system resource print voordat je iets installeert.

Als het niet aan je router ligt

  • De download. Kan de router de downloadserver van MikroTik niet bereiken, dan mislukt de update met een andere fout dan ruimtegebrek. Controleer DNS en de uitgaande firewall.
  • Het kanaal. Staat het kanaal op testing, dan krijg je pakketten die groter of onstabieler kunnen zijn. long-term is op een klein apparaat vaak de rustigste keuze.
  • De USB-poort. Een stick die de router niet ziet, geeft een lege /disk print. Probeer een andere stick; niet elke stick werkt op elk model.

Verder lezen: Pakketten, Systeem en tijd en Containers.

Meteen proberen? Open de configurator