本文介绍如何通过 APT(高级软件包工具)在 Debian 或 Ubuntu 系统上安装和更新自托管 UniFi Network 服务器,以使用当前稳定版本。如果您在按照本文所述流程操作时遇到问题,请查看此处提供的脚本,以安装和更新 UniFi Network 应用程序。
要求
要通过 APT 更新 UniFi Network 服务器,您需要使用 Linux 文本编辑器 vi 或 nano 创建源文件,或编辑现有 sources.list 文件中的行。软件源结构应保持不变;如果发生任何变化,会在 Community 的版本发布部分中的 UniFi Network 软件版本发布文章中说明。
升级 UniFi Network 服务器之前,请确保已备份 UniFi Network 数据库。您还需要确保用户拥有 sudo 权限。有关将用户添加到 sudo 列表的更多信息,请参阅这篇 Debian 文章。
Ubuntu 或基于 Debian 的脚本
请参阅这篇 Community 文章。
UniFi Network APT 步骤
- 开始前,使用以下命令安装所需软件包:
sudo apt-get update && sudo apt-get install ca-certificates apt-transport-https - 使用以下命令添加新的软件源列表:
echo 'deb [ arch=amd64,arm64 ] https://www.ui.com/downloads/unifi/debian stable ubiquiti' | sudo tee /etc/apt/sources.list.d/100-ubnt-unifi.list - 添加 GPG 密钥。
- 将以下受信任密钥安装到
/etc/apt/trusted.gpg.d:sudo wget -O /etc/apt/trusted.gpg.d/unifi-repo.gpg https://dl.ui.com/unifi/unifi-repo.gpg
- 将以下受信任密钥安装到
- 安装正确版本的 MongoDB。
- 全新安装 UniFi: 运行以下命令:
echo "deb [trusted=yes] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list sudo apt-get update注意: 根据您的 Linux 发行版,可能不需要执行此步骤。如果您的发行版不包含 MongoDB,且其软件源中也没有提供 MongoDB,请参阅 MongoDB 安装指南(Ubuntu | Debian)。 - 现有安装(UniFi Network v 7.5 或更高版本): 跳过此步骤。
- 现有安装(UniFi Network v 7.4 或更早版本): 请参阅 MongoDB 帮助文章,了解将 MongoDB 更新到 v 3.6 或更高版本的说明。
- 全新安装 UniFi: 运行以下命令:
- 使用以下命令安装和升级 UniFi Network 应用程序:
sudo apt-get update && sudo apt-get install unifi -y - 现在,您应该可以在浏览器地址栏中输入计算机配置的本地或公共 IP 地址,访问 UniFi Network 应用程序(建议使用 Chrome)。如果应用程序未启动,请使用以下命令:
sudo service unifi start
使用上述命令时,默认您已安装 sudo 和 wget。有关 sudo 的更多信息,请参阅此处;有关 wget 的信息,请参阅此处。
其他有用命令
- 停止 UniFi 服务:
sudo service unifi stop - 重启 UniFi 服务:
sudo service unifi restart - 查看 UniFi 服务状态:
sudo service unifi status
-
可点击此处查看可能的套件名称和代号。注意:我们强烈建议使用稳定版本。
“Testing” 指尚未向公众发布的下一代版本。“Stable” 指当前稳定版本,由 Ubiquiti 提供支持,本文也对此进行了介绍。“Old Stable” 指以前的稳定版本,该版本已被新的稳定版本取代。
套件名称 代号 已归档的代号 oldstable unifi-5.10 这些代号已归档,不再受支持 stable unifi-5.11 testing * unifi3, unifi4, unifi-5.3, unifi-5.4, unifi-5.5, unifi-5.6, unifi-5.7, unifi-5.8, unifi-5.9 *Testing 目前为空
日志文件位置
日志文件对于排查问题至关重要。日志文件位于:
- /usr/lib/unifi/logs/server.log
- /usr/lib/unifi/logs/mongod.log
如果您的应用程序运行在基于 Unix/Linux 的系统上,则需要超级用户(sudo)权限才能访问这些日志文件。
注意事项和提示
-
这些注意事项由用户协作补充。单击以展开。
- 这篇 Community 文章 分享了一些脚本,可用于在近期版本的 Ubuntu 或 Debian 上安装和更新 UniFi Network 应用程序。
- 如果您在虚拟机或无头服务器中安装,可能会遇到熵问题。这可能表现为服务启动或重启缓慢,甚至服务完全失败。解决方法是安装
haveged。这是一个介绍相关主题的教程外部链接。 - 从 UniFi Network v 5.6.x 开始,UniFi 服务不再以 root 身份运行。这意味着您无法绑定特权端口(< 1024)。如果尝试使用这些端口,应用程序将无法启动。
- 以下内容适用于 APT v 1.5 及更高版本(Ubuntu 17.10 以及 Debian Sid 或更高版本)。最新版本的 apt-secure 手册页指出:“从 v 1.5 开始,Release 文件中有关软件源的信息发生变化时,需要先确认,APT 才会继续从该软件源应用更新”,这意味着从一个主要版本更新到下一个主要版本时(例如从 5.5.x 更新到 5.6.x),
apt-get update将产生错误。- 要解决此问题,请按以下方式运行命令:
apt-get update --allow-releaseinfo-change - 如果收到指出该命令无法与其他选项组合使用的错误,用户反馈执行以下两个命令可以解决问题:运行
apt clean并按 Enter,然后运行apt-get update并按 Enter。
- 要解决此问题,请按以下方式运行命令:
- 在 Debian 和 Ubuntu 上安装时,UniFi Network 应用程序作为服务运行,因此不会提供 GUI。请使用 service 命令启动、停止和重启 UniFi Network 应用程序。
- 如果您在 DNS 服务器上看到以下错误,某位用户报告称,强制系统使用 8.8.8.8 作为 DNS 服务器,而不是使用其 ISP 提供的 DNS 服务器,可以解决此问题。
- 目前 Ubiquiti 不支持 arm 64,因此软件源中不提供该版本。您需要下载并手动安装。
-
在添加 GPG 密钥,方法 B: 来源:外部链接中,对于处于严格防火墙之后的用户,以下命令可用于导入 GPG 密钥:
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 06E85760C0A52C50 - 由于依赖 Java 8,使用 UniFi Network 5.7.X 时可能需要执行一些额外步骤。详情请参阅这篇 Community 文章。
- 在早于 16.04 的 Ubuntu 中,命令
apt-get为apt。