Checking for updates
In WinBox you can check for updates in System -> Packages, or you can use terminal with command /system package update
RouterOS updates include both the main system and additional packages, with different release channels available for various stability requirements.
Update fundamentals
RouterOS versioning system
Version channels:
Stable - Production-ready releases (recommended)
Long-term - Extended support versions for critical systems
Testing - Beta releases with latest features
Development - Alpha releases for developers
Version numbering:
Major.minor.patch format (e.g., 7.16.1)
Major versions - Significant architectural changes
Minor versions - New features and improvements
Patch versions - Bug fixes and security updates
Package components
# View installed packages
/system package print
# Common RouterOS packages:
# routeros - Main system package
# wireless - WiFi functionality
# security - IPSec and advanced security
# advanced-tools - Additional tools and features
# gps - GPS functionality
# lcd - LCD display supportChecking for updates
Manual update check
Check for available updates using different methods:
# Check for updates via command line
/system package update check-for-updates
# Check update status
/system package update print
# View available updates
/system package update print detail
# Check current version information
/system resource print
/system routerboard printWinBox update process
Using the graphical interface:
Open System -> Packages
Click "Check For Updates"
Review available updates
Click "Download" to get updates
Click "Reboot" after download completes
Web interface updates
Through WebFig/QuickSet:
Navigate to System -> RouterOS
Click "Check for updates"
Download available updates
Reboot to apply updates
Download and installation
Automatic update process
# Download updates automatically
/system package update download
# Check download progress
/system package update print
# Install updates (requires reboot)
/system reboot
# Alternative: Download and install in one command
/system package update installManual package installation
Install specific packages or versions:
# Upload package file via FTP/SFTP first
/file print where type=".npk"
# Reboot to install uploaded packages
/system reboot
# Remove specific package before reboot
/system package remove wireless
# Check available package space
/system resource printSelective package management
Control which packages are installed:
# Disable automatic package installation
/system package update set channel=stable
# View package dependencies
/system package print detail
# Remove unnecessary packages to save space
/system package remove gps,lcd
# Keep only essential packages for embedded devices
# Typically keep: routeros, securityVersion management
Channel configuration
Configure update channels for different stability levels:
# Set to stable channel (recommended for production)
/system package update set channel=stable
# Set to long-term support
/system package update set channel=long-term
# Set to testing channel (for lab environments)
/system package update set channel=testing
# Check current channel
/system package update printVersion pinning and rollback
Manage version upgrades and downgrades:
# Check RouterBoard firmware version
/system routerboard print
# Upgrade RouterBoard firmware (if needed)
/system routerboard upgrade
# Note: RouterOS and RouterBoard firmware are separate
# Always upgrade RouterBoard firmware after RouterOS updates
# Backup configuration before major upgrades
/system backup save name=pre-upgrade-backup
/export file=config-backup-v7.15Upgrade procedures
Safe upgrade process
Follow these steps for safe upgrades:
# 1. Backup current configuration
/system backup save name=backup-before-upgrade-$(date +%Y%m%d)
/export file=config-export-$(date +%Y%m%d)
# 2. Check system health
/system health print
/system resource print
# 3. Verify sufficient space
/system resource print
# 4. Check for available updates
/system package update check-for-updates
# 5. Download updates
/system package update download
# 6. Schedule maintenance window
# Plan for potential downtime during reboot
# 7. Apply updates
/system reboot
# 8. Verify upgrade success
/system resource print
/system package printBatch upgrade process
For multiple devices:
# Create upgrade script for multiple routers
#!/bin/bash
ROUTERS="192.168.1.1 192.168.2.1 192.168.3.1"
for router in $ROUTERS; do
echo "Upgrading $router..."
# Backup configuration
ssh admin@$router "/system backup save name=pre-upgrade-backup"
# Check and download updates
ssh admin@$router "/system package update check-for-updates"
ssh admin@$router "/system package update download"
# Wait for download completion, then reboot
ssh admin@$router "/system package update print"
ssh admin@$router "/system reboot"
echo "Upgrade initiated for $router"
doneTroubleshooting updates
Common update issues
# Issue: Update download fails
# Check internet connectivity
/ping 8.8.8.8
# Check DNS resolution
/ping upgrade.mikrotik.com
# Verify firewall allows HTTPS traffic
/ip firewall filter print where protocol=tcp and dst-port=443
# Issue: Insufficient space for updates
/system resource print
/file print where type=file
# Remove old log files and backups
/file remove [find type=file and name~".*\\.backup"]
/log printRecovery procedures
# If upgrade fails and device won't boot:
# 1. Try holding reset button during power-on
# 2. Use Netinstall for complete reinstall
# 3. Restore from backup after reinstall
# Check upgrade logs
/log print where topics~"system"
# Verify package integrity
/system package print detail
# Force package reinstall if corrupted
# Upload packages manually via file transferRollback procedures
# Rollback to previous configuration
/system backup load name=backup-before-upgrade
# Downgrade RouterOS (requires manual package installation)
# 1. Download older RouterOS version
# 2. Upload packages via FTP/SCP
# 3. Reboot to install older packages
# Note: Downgrades may not always be supported
# Check configuration compatibility after downgrade
/system resource print
/export show-sensitiveAutomated update management
Scripted update checks
Create scripts for regular update monitoring:
# Create update notification script
/system script add name=check-updates source={
/system package update check-for-updates;
:local updateCount [/system package update get installed-version];
:if ($updateCount != [/system package update get latest-version]) do={
/log info "RouterOS updates available";
/tool e-mail send to="admin@company.com" subject="RouterOS Updates Available" \
body="Updates available for router $[/system identity get name]";
}
}
# Schedule weekly update checks
/system scheduler add name=weekly-update-check interval=7d \
start-time=02:00:00 on-event=check-updatesAutomatic update installation
# Automatic update script (use with caution)
/system script add name=auto-update source={
/system backup save name="auto-backup-$[/system clock get date]";
/system package update check-for-updates;
:if ([/system package update get installed-version] != [/system package update get latest-version]) do={
/log info "Starting automatic RouterOS update";
/system package update download;
:delay 60s;
/system package update install;
} else={
/log info "RouterOS is up to date";
}
}
# Schedule monthly automatic updates (maintenance window)
/system scheduler add name=monthly-auto-update interval=30d \
start-time=02:00:00 on-event=auto-update comment="Automatic monthly updates"Version-specific considerations
Major version upgrades
Special considerations for major version upgrades:
# RouterOS v6 to v7 upgrade considerations:
# 1. Backup configuration (v6 format)
# 2. Check package compatibility
# 3. Review configuration changes needed
# 4. Test in lab environment first
# 5. Plan for extended downtime
# Before v6 to v7 upgrade
/export file=routeros-v6-config
/system backup save name=routeros-v6-backup
# After v7 upgrade, check for configuration issues
/system resource print
/log print where topics~"system,error"
/interface print where disabled=yesHardware-specific updates
# Check hardware compatibility
/system routerboard print
# RouterBoard firmware updates
/system routerboard print
/system routerboard upgrade
# Special considerations for CCR devices
/system health print
/system cpu print
# Check for hardware-specific packages
/system package print where name~".*ccr.*|.*rb.*"Monitoring update status
Update logging and monitoring
# Enable system logging for updates
/system logging add topics=system,info action=memory
/system logging add topics=system,warning action=disk
# Monitor update process
/log print follow where topics~"system"
# Check update history
/log print where message~".*update.*|.*package.*"
# System resource monitoring during updates
/system resource monitor numbers=0 duration=60Health checks after updates
# Post-update verification checklist
/system resource print # Check system status
/system health print # Check hardware health
/interface print where disabled=yes # Check for disabled interfaces
/ip address print # Verify IP configuration
/ip route print where invalid=yes # Check for invalid routes
/system package print # Verify all packages loaded
# Network connectivity tests
/ping 8.8.8.8
/tool traceroute 8.8.8.8
# Service status verification
/ip service print where disabled=no
/system identity printUpdate best practices
Security recommendations
Regular updates - Apply security patches promptly
Test in lab - Verify updates in non-production environment first
Backup first - Always backup before major updates
Monitor advisories - Subscribe to MikroTik security notifications
Staged rollouts - Update non-critical devices first
Operational procedures
Maintenance windows - Schedule updates during low-traffic periods
Change management - Document all update procedures
Rollback plans - Prepare recovery procedures before updates
Version tracking - Maintain inventory of device versions
Automated monitoring - Use scripts to track update status
Performance considerations
Resource monitoring - Ensure sufficient memory and storage
Network impact - Consider bandwidth usage for downloads
Hardware compatibility - Verify updates work with your hardware
Feature testing - Test critical features after updates
Performance baseline - Compare before/after performance metrics
Last updated
Was this helpful?