[comment]: # ({91aab3e5-91aab3e5})
# 2 Debian/Ubuntu

[comment]: # ({/91aab3e5-91aab3e5})

[comment]: # ({9e784714-d02acea9})
#### Overview

This section provides the steps required for a successful
[upgrade](/manual/installation/upgrade) from Zabbix **6.2**.x to the latest version of Zabbix
**6.4**.x using official Zabbix packages for Debian/Ubuntu.

::: notewarning
Before the upgrade make sure to read the relevant
[**upgrade notes**](/manual/installation/upgrade_notes_640)!
:::

You may also want to check the
[requirements](/manual/installation/requirements) for 6.4.

::: notetip
It may be handy to run two parallel SSH sessions during
the upgrade, executing the upgrade steps in one and monitoring the
server/proxy logs in another. For example, run
`tail -f zabbix_server.log` or `tail -f zabbix_proxy.log` in the second
SSH session showing you the latest log file entries and possible errors
in real time. This can be critical for production
instances.
:::

For instructions on upgrading between Zabbix 6.4.x minor versions (for example, from 6.4.1 to 6.4.3), see [Upgrade between minor versions](#upgrade-between-minor-versions).

[comment]: # ({/9e784714-d02acea9})

[comment]: # ({93ff8b03-93ff8b03})
#### Upgrade procedure

[comment]: # ({/93ff8b03-93ff8b03})

[comment]: # ({d72abfc3-f8102233})
##### 1 Stop Zabbix processes

Stop Zabbix server to make sure that no new data is inserted into
database.

    # systemctl stop zabbix-server

If upgrading Zabbix proxy, agent, or agent 2, stop these components too:

    # systemctl stop zabbix-proxy
    # systemctl stop zabbix-agent
    # systemctl stop zabbix-agent2

[comment]: # ({/d72abfc3-f8102233})

[comment]: # ({ab13a6a4-ab13a6a4})
##### 2 Back up the existing Zabbix database

This is a very important step. Make sure that you have a backup of your
database. It will help if the upgrade procedure fails (lack of disk
space, power off, any unexpected problem).

[comment]: # ({/ab13a6a4-ab13a6a4})

[comment]: # ({1809f839-6c141723})
##### 3 Back up configuration files, PHP files and Zabbix binaries

Make a backup copy of Zabbix binaries, configuration files and the PHP
file directory.

Configuration files:

    # mkdir /opt/zabbix-backup/
    # cp /etc/zabbix/zabbix_server.conf /opt/zabbix-backup/
    # cp /etc/apache2/conf-enabled/zabbix.conf /opt/zabbix-backup/

PHP files and Zabbix binaries:

    # cp -R /usr/share/zabbix/ /opt/zabbix-backup/
    # cp -R /usr/share/zabbix-* /opt/zabbix-backup/

[comment]: # ({/1809f839-6c141723})

[comment]: # ({9015eb72-31c75b55})
##### 4 Update repository configuration package

Before proceeding with the upgrade, uninstall your current repository package:

    # rm -Rf /etc/apt/sources.list.d/zabbix.list

Then, install the latest repository configuration package to ensure compatibility with the newest packages and to include any recent security patches or bug fixes.

On **Debian 12**, run:

    # wget https://repo.zabbix.com/zabbix/6.4/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian12_all.deb
    # dpkg -i zabbix-release_latest+debian12_all.deb

On **Debian 11**, run:

    # wget https://repo.zabbix.com/zabbix/6.4/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian11_all.deb
    # dpkg -i zabbix-release_latest+debian11_all.deb

For older Debian versions, replace the link above with the correct one from [Zabbix repository](https://repo.zabbix.com/zabbix/6.4/debian/pool/main/z/zabbix-release/).
Note, however, that packages for those versions may not include all Zabbix components.
For a list of components included, see [Zabbix packages](https://www.zabbix.com/download?zabbix=6.4&os_distribution=debian&os_version=10&components=agent&db=&ws=).

On **Ubuntu 24.04**, run:

    # wget https://repo.zabbix.com/zabbix/6.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest+ubuntu24.04_all.deb
    # dpkg -i zabbix-release_latest+ubuntu24.04_all.deb

On **Ubuntu 22.04**, run:

    # wget https://repo.zabbix.com/zabbix/6.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest+ubuntu22.04_all.deb
    # dpkg -i zabbix-release_latest+ubuntu22.04_all.deb

On **Ubuntu 20.04**, run:

    # wget https://repo.zabbix.com/zabbix/6.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest+ubuntu20.04_all.deb
    # dpkg -i zabbix-release_latest+ubuntu20.04_all.deb

For older Ubuntu versions, replace the link above with the correct one from [Zabbix repository](https://repo.zabbix.com/zabbix/6.4/ubuntu/pool/main/z/zabbix-release/).
Note, however, that packages for those versions may not include all Zabbix components.
For a list of components included, see [Zabbix packages](https://www.zabbix.com/download?zabbix=6.4&os_distribution=ubuntu&os_version=18.04&components=agent&db=&ws=).

You may see a prompt about the Zabbix repository configuration:

    # Configuration file '/etc/apt/sources.list.d/zabbix.list'
    # ==> Deleted (by you or by a script) since installation.
    # ==> Package distributor has shipped an updated version.
    # What would you like to do about it ?  Your options are:
    # Y or I  : install the package maintainer's version
    # N or O  : keep your currently-installed version
    # D       : show the differences between the versions
    # Z       : start a shell to examine the situation
    # The default action is to keep your current version.
    # *** zabbix.list (Y/I/N/O/D/Z) [default=N] ?

Enter `Y` (or `I`) to install the package maintainer's version of the Zabbix repository configuration.

Then, update the repository information:

    # apt update

[comment]: # ({/9015eb72-31c75b55})

[comment]: # ({4a06c717-08c7383c})
##### 5 Upgrade Zabbix components

To upgrade Zabbix components you may run something like:

    # apt install --only-upgrade zabbix-server-mysql zabbix-frontend-php zabbix-agent

-   If using PostgreSQL, substitute `mysql` with `pgsql` in the command.
-   If upgrading the proxy, substitute `server` with `proxy` in the command.
-   If upgrading the Zabbix agent 2, substitute `zabbix-agent` with `zabbix-agent2 zabbix-agent2-plugin-*` in the command.

::: noteimportant
Upgrading Zabbix agent 2 with the `apt install zabbix-agent2` command could lead to an error.
For more information, see [*Known issues*](/manual/installation/known_issues#upgrading-zabbix-agent-2-6.0.5-or-older).
:::

You may see a prompt about the Zabbix server (or proxy) configuration:

    # Configuration file '/etc/zabbix/zabbix_server.conf'
    # ==> Modified (by you or by a script) since installation.
    # ==> Package distributor has shipped an updated version.
    # What would you like to do about it ?  Your options are:
    # Y or I  : install the package maintainer's version
    # N or O  : keep your currently-installed version
    # D       : show the differences between the versions
    # Z       : start a shell to examine the situation
    # The default action is to keep your current version.
    # *** zabbix_server.conf (Y/I/N/O/D/Z) [default=N] ?

Enter the option that best fits your situation.
For example, enter `D` to compare the current and new configuration, then decide if you want to install the package maintainer's version (`Y` or `I`).

Then, to upgrade the web frontend with Apache and restart Apache, run:

    # apt install zabbix-apache-conf
    # systemctl restart apache2

Distributions **prior to Debian 10 (buster) / Ubuntu 18.04 (bionic) / Raspbian 10 (buster)** do not provide PHP 7.2 or newer, which is required for Zabbix frontend 5.0.
See [information](/manual/installation/frontend/frontend_on_rhel7) about installing Zabbix frontend on older distributions.

[comment]: # ({/4a06c717-08c7383c})

[comment]: # ({48dad00b-455f4e97})
##### 6 Review component configuration parameters

Make sure to review [Upgrade notes](/manual/installation/upgrade_notes_640) to check if any changes in the configuration parameters are required.

For new optional parameters, see the [What's
new](/manual/introduction/whatsnew640) page.

[comment]: # ({/48dad00b-455f4e97})

[comment]: # ({3190fa72-624a8fc7})
##### 7 Start Zabbix processes

Start the updated Zabbix components.

    # systemctl start zabbix-server
    # systemctl start zabbix-proxy
    # systemctl start zabbix-agent
    # systemctl start zabbix-agent2

[comment]: # ({/3190fa72-624a8fc7})

[comment]: # ({49e4f43e-49e4f43e})
##### 8 Clear web browser cookies and cache

After the upgrade you may need to clear web browser cookies and web
browser cache for the Zabbix web interface to work properly.

[comment]: # ({/49e4f43e-49e4f43e})

[comment]: # ({81c1418d-9bab02f2})
#### Upgrade between minor versions

It is possible to upgrade between Zabbix 6.4.x minor versions (for example, from 6.4.1 to 6.4.3).

First, update the repository information:

    # apt update

Then, to upgrade Zabbix minor version, please run:

    # apt install --only-upgrade 'zabbix*'

To upgrade Zabbix server minor version only, please run:

    # apt install --only-upgrade 'zabbix-server*'

To upgrade Zabbix agent minor version only, please run:

    # apt install --only-upgrade 'zabbix-agent*'

or, for Zabbix agent 2:

    # apt install --only-upgrade 'zabbix-agent2*'

[comment]: # ({/81c1418d-9bab02f2})
