# 2 Debian/Ubuntu

#### 概述

官方 Zabbix 发行包适用于：

-   Debian 9 (Stretch)
-   Debian 8 (Jessie)
-   Debian 7 (Wheezy)
-   Ubuntu 18.04 (Bionic Beaver) LTS
-   Ubuntu 16.04 (Xenial Xerus) LTS
-   Ubuntu 14.04 (Trusty Tahr) LTS

#### 添加 Zabbix 软件仓库

安装软件仓库配置包，这个包包含了 apt（软件包管理器）的配置文件。

对于 **Debian 9**，运行以下命令：

**Note!** 对于 Debian 8，将命令中的 'stretch' 替换为 'jessie' 。对于
Debian 7，将命令中 'stretch' 替换为 'wheezy' 。

    # wget http://repo.zabbix.com/zabbix/3.5/debian/pool/main/z/zabbix-release/zabbix-release_3.5-1+stretch_all.deb
    # dpkg -i zabbix-release_3.5-1+stretch_all.deb
    # apt update

对于 **Ubuntu 18.04 (bionic)**，运行以下命令：

    # wget http://repo.zabbix.com/zabbix/3.5/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.5-1+bionic_all.deb
    # dpkg -i zabbix-release_3.5-1+bionic_all.deb
    # apt update

-   对于 Ubuntu 16.04，将命令中的 'bionic' 替换为 'xenial'。

```{=html}
<!-- -->
```
-   对于 Ubuntu 14.04，将命令中的 'bionic' 替换为 'trusty'。

#### 安装 Server/proxy/前端

安装 Zabbix server 并使用 MySQL 数据库：

    # apt install zabbix-server-mysql

安装 Zabbix proxy 并使用 MySQL 数据库：

    # apt install zabbix-proxy-mysql

安装 Zabbix 前端：

    # apt install zabbix-frontend-php

将命令中的 'mysql' 替换为 'pgsql' 以使用 PostgreSQL，或替换为 'sqlite3'
以使用 SQLite3（仅 Zabbix proxy）。

#### 创建数据库

对于 Zabbix server 和 proxy 守护进程而言，数据库是必须的。而运行 Zabbix
agent 是不需要的。

::: notewarning
如果 Zabbix server 和 Zabbix proxy
安装在相同的主机，它们必须创建不同名字的数据库！
:::

使用 MySQL 或 PostgreSQL 提供的说明来创建数据库。

#### 导入数据

使用 MySQL 来导入 Zabbix server 的初始数据库 schema 和数据，

    # zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix

系统将提示您输入新创建的数据库密码。

使用 PostgreSQL：

    # zcat /usr/share/doc/zabbix-server-pgsql/create.sql.gz | sudo -u <username> psql zabbix

对于 Zabbix proxy，导入初始的数据库 schema：

    # zcat /usr/share/doc/zabbix-proxy-mysql/schema.sql.gz | mysql -uzabbix -p zabbix

对于使用 PostgreSQL（或 SQLite）的 Zabbix proxy：

    # zcat /usr/share/doc/zabbix-proxy-pgsql/schema.sql.gz | sudo -u <username> psql zabbix
    # zcat /usr/share/doc/zabbix-proxy-sqlite3/schema.sql.gz | sqlite3 zabbix.db

#### 为 Zabbix server/proxy 配置数据库

编辑 zabbix\_server.conf 或 zabbix\_proxy.conf
文件以使用已创建的数据库。例如：

    # vi /etc/zabbix/zabbix_server.conf
    DBHost=localhost
    DBName=zabbix
    DBUser=zabbix
    DBPassword=<password>

在 DBPassword 配置处输入由 MySQL 或 PosgreSQL 创建的 Zabbix 数据库密码。

在 PostgreSQL 使用 DBHost=。 您可能希望保留默认设置 DBHost=localhost（或
IP 地址），但这会使 PostgreSQL 使用网络套接字连接到 Zabbix。 有关
RHEL/CentOS 的说明，详见下面的[SELINUX
配置](/manual/installation/install_from_packages/rhel_centos#selinux_configuration)。

#### 启动 Zabbix server 进程

运行以下命令以启动 Zabbix server 进程，并使其开机自启：

    # service zabbix-server start
    # update-rc.d zabbix-server enable

使用 'zabbix-proxy' 替换命令中的 'zabbix-server' 以启动和自启 Zabibx
proxy 进程。

RHEL/CentOS系统请参考 [respective
section](/manual/installation/install_from_packages/rhel_centos#selinux_configuration)

前端和SELinux配置完成后，需要重启 Apache 服务

    # service apache2 restart

#### Zabbix 前端配置

Zabbix 前端的 Apache 配置文件位于
/etc/apache2/conf-enabled/zabbix.conf。虽然已经配置了一些 PHP
参数。但是有必要取消“date.timezone”注释，并为其[设置为正确的时区](http://php.net/manual/en/timezones.php)。

    php_value max_execution_time 300
    php_value memory_limit 128M
    php_value post_max_size 16M
    php_value upload_max_filesize 2M
    php_value max_input_time 300
    php_value always_populate_raw_post_data -1
    # php_value date.timezone Europe/Riga

以此 [前端安装步骤](/manual/installation/install#installing_frontend)
来完成 Zabbix 前端的安装，并访问新安装的 Zabbix 前端页面。

#### 安装 Agent

运行以下命令以安装 Zabbix agent ：

    # apt install zabbix-agent

运行以下命令以启动 Zabbix agent：

    # service zabbix-agent start
