--- title: "Upgrade icom Router Management to 2025.09.0b" slug: "upgrade-guide-to-2025090-from-2025030-icom-router-management-on-premises-en" updated: 2025-11-04T15:19:12Z published: 2025-11-04T15:19:12Z canonical: "docs.insys-icom.com/upgrade-guide-to-2025090-from-2025030-icom-router-management-on-premises-en" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.insys-icom.com/llms.txt > Use this file to discover all available pages before exploring further. # Upgrade icom Router Management to 2025.09.0b ## Preface This guide describes the upgrade process of icom Router Management Server (On-Premises). It assumes that you have a working icom Router Management Server installation 2025.03.0 that has been installed using the icom Router Management Server (On-Premises) [Install Guide](/kb/docs/installing-icom-router-management-on-ubuntu) after June 2024. If you have installed icom Router Management Server (On-Premises) before September 2023, please contact our support hotline to schedule a migration because there have been breaking changes in the folder structure and naming in general. ## Supported version icom Router Management Server (On-Premises) Version 2025.03.0 ## Preparations ### Backup PostgreSQL databasea Backup your PostgreSQL database before you start the upgrade process. You can use the `pg_dump` command to create a backup of your database. ```bash sudo -i -u postgres pg_dump -d insysicomroutermgmt -f /tmp/insysicomroutermgmt_backup.bin -Fc ``` Only if necessary, restore the database with the `pg_restore` command: ```bash sudo -i -u postgres pg_restore -d insysicomroutermgmt /tmp/insysicomroutermgmt_backup.bin -Fc ``` ### Upgrade preparations Stop the insysicom-routermgmt systemd service. ```bash sudo systemctl stop insysicom-routermgmt ``` Stop the insysicom-autoupdate systemd service. ```bash sudo systemctl stop insysicom-autoupdate ``` Backup the old binaries. ```bash sudo cp /opt/insysicom-routermgmt/bin/insysicom-routermgmt /opt/insysicom-routermgmt/bin/insysicom-routermgmt.old ``` ```bash sudo cp /opt/insysicom-routermgmt/bin/insysicom-autoupdate /opt/insysicom-routermgmt/bin/insysicom-autoupdate.old ``` Download the new version from the [INSYS icom Router Management Cloud](https://cloud.insys-icom.com/ui/on-premises-binaries) or from the link provided by our support team. Copy the zip file to your server. Create a directory in your home and copy the installation zip file irm_linux_2025_09_0a.zip into this directory. ```bash mkdir dist unzip irm_linux_2025_09_0b.zip -d dist ls -aFl dist ``` You should see the `insysicom-routermgmt` and `insysicom-autoupdate` binaries aswell as the static frontend files `www` in the dist directory. Mark the new binaries as executable if the `ls` command did not show the executable flag indicated by `*` behind the file name. Static files should be owned by the insysicom-routermgmt user. For the insysicom-routermgmt binary: ```bash sudo chown insysicom-routermgmt:insysicom-routermgmt dist/insysicom-routermgmt sudo chmod +x dist/insysicom-routermgmt ``` For the static frontend files: ```bash sudo chown -R insysicom-routermgmt:insysicom-routermgmt dist/www ``` For the insysicom-autoupdate binary: ```bash sudo chown insysicom-routermgmt:insysicom-routermgmt dist/insysicom-autoupdate sudo chmod +x dist/insysicom-autoupdate ``` ## Upgrade process ### Upgrade application server Copy the new binaries to the correct location. ```bash sudo cp ./dist/insysicom-routermgmt /opt/insysicom-routermgmt/bin/ sudo cp ./dist/insysicom-autoupdate /opt/insysicom-routermgmt/bin/ ``` Set required environment variables and run the database migrations. Migrate the database for the insysicom-routermgmt service. ```bash sudo -i -u insysicom-routermgmt /opt/insysicom-routermgmt/bin/insysicom-routermgmt system upgrade -c /opt/insysicom-routermgmt/etc/insysicom-routermgmt.conf exit ``` Migrate the database for the insysicom-autoupdate service. ```bash set -a source /opt/insysicom-routermgmt/etc/insysicom-autoupdate.env set +a /opt/insysicom-routermgmt/bin/insysicom-autoupdate -migrate ``` The result should be `Migration completed successfully` or `No pending migrations`, depending on the current state of the database. ### Delivering the Frontend With version 2025.09.0 static frontend files are being delivered separately from the application. In our case nginx will act as a static file server for them. Start by copying the frontend files to the correct location: ```bash sudo cp -r ./dist/www /opt/insysicom-routermgmt/www ``` Adapt the nginx config for the servers on port 80 and/or 443: ```bash sudo vi /etc/nginx/sites-available/insysicom-routermgmt ``` **/etc/nginx/sites-available/insysicom-routermgmt** ```json server {    ...    client_max_body_size 300M;    client_header_timeout 600;    client_body_timeout 600;    send_timeout 600;    proxy_read_timeout 600;    # - delete this block    location = / {        return 301 /ui;    }    location /ui/ {        proxy_set_header Host $host;        proxy_set_header X-Real-IP $remote_addr;        proxy_pass http://127.0.0.1:9203;    }    # -    # + add this block    gzip                on;    gzip_proxied        any;    gzip_http_version   1.1;    gzip_comp_level     5;    gzip_min_length     256;    gzip_vary           on;    gzip_types text/css text/javascript text/xml text/plain application/javascript application/x-javascript application/json;    location = / {        return 302 /ui/;    }    location /ui/ {        root /opt/insysicom-routermgmt/www;        index index.html;        try_files $uri $uri/ /ui/index.html;    }    # +    location /api/ {        proxy_set_header Host $host;        proxy_set_header X-Real-IP $remote_addr;        proxy_pass http://127.0.0.1:9203;    }    ... ``` Replace the locations `/` and `/ui/` with additional settings and content, delivering the files in `www`. If applicable, also change these locations in the https server block. Save the configuration and check it with the following command: ```bash sudo nginx -t ``` ### Change command for autoupdate systemd service The command for starting the autoupdate service has changed. Without the following command change, devices might not leave the state *Not Configured*. Open the systemd service file for the autoupdate service. ```bash sudo vi /etc/systemd/system/insysicom-autoupdate.service ``` Change the command for `ExecStart` to the following one. **/etc/systemd/system/insysicom-autoupdate.service** ```plaintext [Unit] ... [Service] ... ExecStart=/opt/insysicom-routermgmt/bin/insysicom-autoupdate -serve-all [Install] ... ``` Reload the systemd daemon to apply the changes. ```bash sudo systemctl daemon-reload ``` ### Start application server ```bash sudo systemctl restart nginx sudo systemctl start insysicom-routermgmt sudo systemctl start insysicom-autoupdate ``` ## Confirm upgrade Confirm that both services are active and running. ```bash sudo systemctl status insysicom-routermgmt sudo systemctl status insysicom-autoupdate ``` Should the autoupdate service not be running, try restarting it. ```bash sudo systemctl restart insysicom-autoupdate ``` Visit the icom Router Management Server (On-Premises) web interface and check its availability and the version number in the system information menu or use curl to do so. ```bash curl http://localhost:9203/api/admin/software-version ```