问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

如何在 Ubuntu 22.04 LTS 上安装 Nextcloud

创作时间:
作者:
@小白创作中心

如何在 Ubuntu 22.04 LTS 上安装 Nextcloud

引用
CSDN
1.
https://blog.csdn.net/weixin_53510183/article/details/143762777

Nextcloud是一个功能强大的自托管协作平台,支持文件存储、同步、在线编辑、音视频会议等多种功能。本文将详细介绍如何在Ubuntu 22.04 LTS系统上安装Nextcloud,帮助用户快速搭建自己的私有云存储和协作环境。

简介

什么是 Nextcloud?

Nextcloud 是一个自托管的协作平台,旨在通过文件、通话、群件和 Office 等集成服务提高工作效率。当与 Collabora Online 或 OnlyOffice 等办公套件一起使用时,它可以提供类似于 Dropbox、Office 365 或 Google Drive 的功能。

Nextcloud 有四种主要产品:Files 提供自托管文件存储和同步;Talk 提供私人音频/视频会议和聊天;Groupware 包括日历和邮件等生产力工具;Office 提供用于协作文档编辑的在线办公套件。

Nextcloud 可以托管在云端或企业内部,提供灵活的部署选项。它允许将文档存储在私有服务器或可信数据中心,从而确保更强的控制和安全性。

下面,我将逐步介绍如何在 Ubuntu 22.04 LTS 上安装 Nextcloud。

开始部署

更新和升级系统

在 Nextcloud 安装之前,我们最好更新所有系统包并将系统升级到最新版本。要一次性更新和升级,请执行以下命令:

apt update -y && apt upgrade -y && apt install unzip -y

安装 Apache 和 MySQL 服务器

Nextcloud 是一个具有数据库后端的 Web 应用程序,因此我们需要一个 Web 服务器和一个数据库服务器来进行安装。我们正在安装 Apache 作为 Web 服务器,MariaDB 作为数据库服务器。

Apache 服务器安装:

启动并启用 Apache 服务:

systemctl start apache2
systemctl enable apache2

使用以下命令查看 Apache 服务器的当前状态,Apache 服务器必须正在运行。

root@nc:~# systemctl status apache2
● apache2.service - The Apache HTTP Server
     Loaded: loaded (/usr/lib/systemd/system/apache2.service; enabled;
     preset: enabled)
     Active: active (running) since Sat 2024-05-25 02:42:34 UTC; 1h 36min ago
       Docs: <https://httpd.apache.org/docs/2.4/>
    Process: 21813 ExecStart=/usr/sbin/apachectl start (code=exited,
    status=0/SUCCESS)
   Main PID: 21817 (apache2)
      Tasks: 11 (limit: 4556)
     Memory: 871.4M (peak: 993.6M)
        CPU: 1min 2.942s
     CGroup: /system.slice/apache2.service
             ├─21817 /usr/sbin/apache2 -k start
             ├─21821 /usr/sbin/apache2 -k start
             ├─21823 /usr/sbin/apache2 -k start

上述命令输出确认了 Apache 正在运行状态。

MariaDB 服务器安装:

apt install mariadb-server

启动并启用 MariaDB 服务:

systemctl start mariadb
systemctl enable mariadb

使用以下命令检查 MariaDB 服务器的当前状态,MariaDB 服务必须正在运行。

root@nc:~# systemctl status mariadb
● mariadb.service - MariaDB 10.11.7 database server
     Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled;
     preset: enabled)
     Active: active (running) since Sat 2024-05-25 02:31:18 UTC; 2h 33min ago
       Docs: man:mariadbd(8)
             <https://mariadb.com/kb/en/library/systemd/>
   Main PID: 8820 (mariadbd)
     Status: "Taking your SQL requests now..."
      Tasks: 17 (limit: 30074)
     Memory: 124.6M (peak: 125.6M)
        CPU: 10.370s
     CGroup: /system.slice/mariadb.service
             └─8820 /usr/sbin/mariadbd

上述命令输出确认了 MariaDB 正在运行状态。

安装 PHP 和支持模块

Nextcloud 是用 PHP 和 JavaScript 编写的,因此我们需要安装 PHP 及其所有必需的模块,以便其功能能够正常工作。

安装 PHP 和所需模块:

apt install php php-common libapache2-mod-php php-bz2 php-gd php-mysql \\
php-curl php-mbstring php-imagick php-zip php-common php-curl php-xml \\
php-json php-bcmath php-xml php-intl php-gmp zip unzip wget

在 Apache 上启用 PHP 模块:

a2enmod env rewrite dir mime headers setenvif ssl

现在,重启 Apache 以加载所有安装的 PHP 模块:

systemctl restart apache2

检查模块是否已加载到 Apache 上:

root@nc:~# apache2ctl -M
Loaded Modules:
 core_module (static)
 so_module (static)
 watchdog_module (static)
 http_module (static)
 log_config_module (static)
 logio_module (static)
 version_module (static)
......

创建 Nextcloud 数据库和用户

在这一步中,我们将为 Nextcloud 创建数据库和数据库用户。

登录到 MySQL 提示符,只需输入以下命令,它将打开一个交互式的 MariaDB 提示符以创建用户和数据库:

root@nc:~# mysql
Welcome to the MariaDB monitor.  Commands end with ; or \\g.
Your MariaDB connection id is 1131
Server version: 10.11.7-MariaDB-2ubuntu2 Ubuntu 24.04
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\\h' for help. Type '\\c' to clear the current input statement.
MariaDB [(none)]>

现在,为 Nextcloud 创建 MySQL 数据库和用户,并为用户提供数据库权限。复制所有 SQL 命令并在提示符上逐个执行。

MariaDB [(none)]> CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY 'passw@rd';
MariaDB [(none)]> CREATE DATABASE IF NOT EXISTS nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextcloud'@'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> quit;

解压 Nextcloud 归档文件并配置

现在,下载最新的 Nextcloud 归档文件,前往 Nextcloud 下载页面 。或者你可以从这个 直接链接 下载。

下载并解压到 Web 根目录(/var/www/html)文件夹:

从 Web 根目录中移除默认的 index.html 文件:

下载并解压 Nextcloud 归档:

wget https://download.nextcloud.com/server/releases/latest.zip
unzip latest.zip

将所有 Nextcloud 内容移动到 Web 根目录(/var/www/html)文件夹:

cd /var/www/html/nextcloud
mv * /var/www/html/

移除空的 nextcloud 文件夹:

rmdir /var/www/html/nextcloud

更改 Nextcloud 内容目录的所有者为 HTTP 用户:

chown -R www-data:www-data /var/www/html

完成 Nextcloud 安装

现在,打开浏览器并输入服务器的 http://your_server_ip,以下 Nextcloud 安装页面将出现。

在该页面上,我们需要提供以下信息:

  1. Nextcloud 管理员用户名和密码
  2. 数据库凭证(数据库名称、数据库用户和数据库密码)

提供所有信息后,点击 安装 (Install) 按钮。

Nextcloud 安装完成后,将显示推荐应用程序页面。点击 安装推荐应用程序 (Install recommended apps) 按钮。

安装所有推荐应用程序需要 1-2 分钟,然后会显示管理仪表板。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号