[comment]: # translation:outdated

[comment]: # ({51c45a68-7c9bb1c5})
FIXME **This page is not fully translated, yet. Please help completing
the translation.**\
*(remove this paragraph once the translation is finished)*

[comment]: # ({/51c45a68-7c9bb1c5})

[comment]: # ({7c9bb1c5-ab4b69b8})
# 17 Other issues

[comment]: # ({/7c9bb1c5-ab4b69b8})

[comment]: # ({76f91b0c-ce7659d9})
### 17 其他问题

[comment]: # ({/76f91b0c-ce7659d9})

[comment]: # ({afcbd19c-4db2f7ca})
#### Login and systemd

[comment]: # ({/afcbd19c-4db2f7ca})

[comment]: # ({0d5d89b1-55cc0aaf})
#### 登录及系统守护进程

We recommend
[creating](/manual/installation/install#create_user_account) a *zabbix*
user as system user, that is, without ability to log in. Some users
ignore this recommendation and use the same account to log in (e. g.
using SSH) to host running Zabbix. This might crash Zabbix daemon on log
out. In this case you will get something like the following in Zabbix
server log:

我们建议创建zabbix用户作为系统用户，也就是说，该用户不能登录到系统。一些用户忽略了这个建议，使用相同的帐户登录(例如使用SSH)，来管理运行Zabbix。这可能会使Zabbix的守护进程在注销时崩溃。这种情况下，在Zabbix
server的日志中会出现如下内容：

    zabbix_server [27730]: [file:'selfmon.c',line:375] lock failed: [22] Invalid argument
    zabbix_server [27716]: [file:'dbconfig.c',line:5266] lock failed: [22] Invalid argument
    zabbix_server [27706]: [file:'log.c',line:238] lock failed: [22] Invalid argument

and in Zabbix agent log:

在Zabbix agent的日志中会出现：

    zabbix_agentd [27796]: [file:'log.c',line:238] lock failed: [22] Invalid argument

This happens because of default systemd setting `RemoveIPC=yes`
configured in `/etc/systemd/logind.conf`. When you log out of the system
the semaphores created by Zabbix previously are removed which causes the
crash.

A quote from systemd documentation:

这是由于在`/etc/systemd/logind.conf`配置文件中默设置`RemoveIPC=yes`所致。当您退出系统时，Zabbix先前创建的信号量将被删除，这将导致崩溃。
以下内容摘自systemd文档：

    RemoveIPC=

    Controls whether System V and POSIX IPC objects belonging to the user shall be removed when the
    user fully logs out. Takes a boolean argument. If enabled, the user may not consume IPC resources
    after the last of the user's sessions terminated. This covers System V semaphores, shared memory
    and message queues, as well as POSIX shared memory and message queues. Note that IPC objects of the
    root user and other system users are excluded from the effect of this setting. Defaults to "yes".

There are 2 solutions to this problem:

1.  (recommended) Stop using *zabbix* account for anything else than
    Zabbix processes, create a dedicated account for other things.
2.  (not recommended) Set `RemoveIPC=no` in `/etc/systemd/logind.conf`
    and reboot the system. Note that `RemoveIPC` is a system-wide
    parameter, changing it will affect the whole system.

此问题有两种解决方案：

1.  (推荐) 停止使用 *zabbix* 帐户处理除zabbix进程以外的任何事情,
    创建专有账户来处理其他事情。
2.  (不推荐) 在`/etc/systemd/logind.conf`配置文件中，设置 `RemoveIPC=no`
    ，并重启系统。 需要注意的是，
    `RemoveIPC`是系统范围的参数，其值更改后会影响整个系统。

[comment]: # ({/0d5d89b1-55cc0aaf})
