Nextcloud31.0.9をAlmaLinux9.6にインストールする方法
概要
弊社では現在、Nextcloudを利用したファイル共有環境を利用しています。
Nextcloudとは、ウェブベースのオンラインストレージソフトウェアです。自社サーバをオンラインストレージとすることで、よりセキュアなファイルのやり取りを行うことができます。
Nextcloudではファイルのアップロードおよびダウンロード、共有設定や共有一覧の確認をウェブインタフェースで視覚的に行うことができ、それらをメールで通知する機能も備えています。これらの特徴を活かしてお客様との大容量のファイル共有に役立てることを目標としています。
元々弊社では、Nextcloudのフォーク元のownCloudを利用しておりましたが、数年前からNextcloudに乗り換えております。ownCloudについては以前に紹介しておりましたので、Nextcloudについても紹介したいと思います。
構築方法
ここでは新規インストールする方法を説明したいと思います。
環境
まずは今回構築する環境は以下の通りです。
OS | AlmaLinux 9.6 |
オンラインストレージ | Nextcloud 31.0.9 |
AP | Apache HTTP Server 2.4.62 |
サーバサイド言語処理 | PHP 8.3.26 |
DB | MariaDB 10.11.10 |
キャッシュ管理 | Redis 6.2.19 |
MTA | Postfix 3.5.25 |
構築
では実際にNextcloudの構築を行っていきたいと思います。
SELinuxの無効化
初めに、SELinuxを無効化しておきます。
# grubby --update-kernel ALL --args selinux=0
Remiリポジトリの導入
Nextcloud 31.0.9のシステム要件としてPHP8.3が推奨されています。そのため、PHP 8.3を導入するためにRemiリポジトリを導入します。
# yum -y install epel-release yum-utils
# yum -y install http://rpms.remirepo.net/enterprise/remi-release-9.rpm
# dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
ApacheおよびPHPの導入
PHP 8.3のモジュールを有効にします。依存関係のパッケージの導入のためRemiリポジトリの方のremi-8.3を利用します。
# dnf module list php
~(中略)~
AlmaLinux 9 - AppStream
Name Stream Profiles Summary
php 8.1 common [d], devel, minimal PHP scripting language
php 8.2 common [d], devel, minimal PHP scripting language
php 8.3 common [d], devel, minimal PHP scripting language
Remi's Modular repository for Enterprise Linux 9 - x86_64
Name Stream Profiles Summary
php remi-7.4 common [d], devel, minimal PHP scripting language
php remi-8.0 common [d], devel, minimal PHP scripting language
php remi-8.1 common [d], devel, minimal PHP scripting language
php remi-8.2 common [d], devel, minimal PHP scripting language
php remi-8.3 common [d], devel, minimal PHP scripting language
php remi-8.4 common [d], devel, minimal PHP scripting language
php remi-8.5 common [d], devel, minimal PHP scripting language
ヒント: [d]efault, [e]nabled, [x]disabled, [i]nstalled
# dnf module enable php:remi-8.3
メタデータの期限切れの最終確認: 0:01:02 前の 2025年10月02日 11時38分17秒 に実施しました。
依存関係が解決しました。
====================================================================================================================================================================================================================
パッケージ アーキテクチャー バージョン リポジトリー サイズ
====================================================================================================================================================================================================================
モジュールストリームの有効化中:
php remi-8.3
トランザクションの概要
====================================================================================================================================================================================================================
これでよろしいですか? [y/N]: y
完了しました!
ApacheおよびPHPをインストールします。
# dnf install vim httpd mod_ssl php php-cli php-mysqlnd php-zip php-devel php-gd php-mcrypt php-mbstring php-curl php-xml php-pear php-bcmath php-json php-pdo php-pecl-apcu php-pecl-apcu-devel php-ldap php-intl php-gmp php-imagick php-fpm php-opcachednf install vim httpd mod_ssl php php-cli php-mysqlnd php-zip php-devel php-gd php-mcrypt php-mbstring php-curl php-xml php-pear php-bcmath php-json php-pdo php-pecl-apcu php-pecl-apcu-devel php-ldap php-intl php-gmp php-imagick php-fpm php-opcache
メタデータの期限切れの最終確認: 0:01:51 前の 2025年10月02日 11時38分17秒 に実施しました。
依存関係が解決しました。
====================================================================================================================================================================================================================
パッケージ アーキテクチャー バージョン リポジトリー サイズ
====================================================================================================================================================================================================================
インストール:
httpd x86_64 2.4.62-4.el9_6.4 appstream 44 k
mod_ssl x86_64 1:2.4.62-4.el9_6.4 appstream 108 k
php x86_64 8.3.26-1.el9.remi remi-modular 1.8 M
php-bcmath x86_64 8.3.26-1.el9.remi remi-modular 46 k
php-cli x86_64 8.3.26-1.el9.remi remi-modular 5.6 M
php-common x86_64 8.3.26-1.el9.remi remi-modular 1.3 M
php-devel x86_64 8.3.26-1.el9.remi remi-modular 778 k
php-fpm x86_64 8.3.26-1.el9.remi remi-modular 1.9 M
php-gd x86_64 8.3.26-1.el9.remi remi-modular 64 k
php-gmp x86_64 8.3.26-1.el9.remi remi-modular 47 k
php-intl x86_64 8.3.26-1.el9.remi remi-modular 236 k
php-ldap x86_64 8.3.26-1.el9.remi remi-modular 64 k
php-mbstring x86_64 8.3.26-1.el9.remi remi-modular 579 k
php-mysqlnd x86_64 8.3.26-1.el9.remi remi-modular 218 k
php-opcache x86_64 8.3.26-1.el9.remi remi-modular 576 k
php-pdo x86_64 8.3.26-1.el9.remi remi-modular 119 k
php-pear noarch 1:1.10.14-1.el9 appstream 308 k
php-pecl-apcu x86_64 5.1.27-1.el9.remi.8.3 remi-modular 76 k
php-pecl-apcu-devel x86_64 5.1.27-1.el9.remi.8.3 remi-modular 47 k
php-pecl-imagick-im7 x86_64 3.8.0-1.el9.remi.8.3 remi-modular 224 k
php-pecl-mcrypt x86_64 1.0.9-1.el9.remi.8.3 remi-modular 35 k
php-pecl-zip x86_64 1.22.7-1.el9.remi.8.3 remi-modular 78 k
php-xml x86_64 8.3.26-1.el9.remi remi-modular 218 k
vim-enhanced x86_64 2:8.2.2637-22.el9_6 appstream 1.7 M
依存関係のインストール:
ImageMagick7-libs x86_64 1:7.1.2.3-1.el9.remi remi-safe 2.5 M
LibRaw x86_64 0.21.1-1.el9 appstream 408 k
almalinux-logos-httpd noarch 90.6-2.el9 appstream 18 k
apr x86_64 1.7.0-12.el9_3 appstream 122 k
apr-util x86_64 1.6.1-23.el9 appstream 94 k
apr-util-bdb x86_64 1.6.1-23.el9 appstream 12 k
capstone x86_64 4.0.2-10.el9 appstream 766 k
cmake-filesystem x86_64 3.26.5-2.el9 appstream 11 k
djvulibre-libs x86_64 3.5.28-4.el9 epel 645 k
fftw-libs-double x86_64 3.3.8-12.el9 appstream 907 k
gd3php x86_64 2.3.3-9.el9.remi remi-safe 136 k
gpm-libs x86_64 1.20.7-29.el9 appstream 20 k
highway x86_64 1.2.0-7.el9 epel 492 k
httpd-core x86_64 2.4.62-4.el9_6.4 appstream 1.4 M
httpd-filesystem noarch 2.4.62-4.el9_6.4 appstream 11 k
httpd-tools x86_64 2.4.62-4.el9_6.4 appstream 78 k
imath x86_64 3.1.2-1.el9 appstream 93 k
jasper-libs x86_64 2.0.28-3.el9 appstream 151 k
keyutils-libs-devel x86_64 1.6.3-1.el9 appstream 54 k
krb5-devel x86_64 1.21.1-6.el9 appstream 132 k
libaom x86_64 3.13.1-1.el9 epel 1.8 M
libavif x86_64 0.11.1-5.el9 epel 80 k
libcom_err-devel x86_64 1.46.5-7.el9 appstream 15 k
libdav1d x86_64 1.5.1-1.el9 epel 611 k
libheif x86_64 1.16.1-2.el9 epel 271 k
libicu74 x86_64 74.2-1.el9.remi remi-safe 10 M
libimagequant x86_64 2.17.0-1.el9 epel 62 k
libjxl x86_64 0.7.2-2.el9 epel 982 k
libkadm5 x86_64 1.21.1-6.el9 baseos 76 k
liblqr-1 x86_64 0.4.2-19.el9 epel 48 k
libmcrypt x86_64 2.5.8-30.el9 epel 105 k
libraqm x86_64 0.8.0-1.el9 epel 19 k
libselinux-devel x86_64 3.6-3.el9 appstream 113 k
libsepol-devel x86_64 3.6-2.el9 appstream 39 k
libsodium x86_64 1.0.18-8.el9 epel 161 k
libverto-devel x86_64 0.3.2-3.el9 appstream 14 k
libvmaf x86_64 2.3.0-2.el9 epel 177 k
libwmf-lite x86_64 0.2.12-10.el9 appstream 72 k
libxml2-devel x86_64 2.9.13-9.el9_6 appstream 827 k
libzip x86_64 1.7.3-8.el9 appstream 61 k
mailcap noarch 2.1.49-5.el9 baseos 32 k
oniguruma5php x86_64 6.9.10-1.el9.remi remi-safe 222 k
openexr-libs x86_64 3.1.1-3.el9 appstream 1.1 M
pcre2-devel x86_64 10.40-6.el9 appstream 471 k
pcre2-utf16 x86_64 10.40-6.el9 appstream 213 k
pcre2-utf32 x86_64 10.40-6.el9 appstream 202 k
php-fedora-autoloader noarch 1.0.1-7.el9 epel 12 k
php-process x86_64 8.3.26-1.el9.remi remi-modular 67 k
rav1e-libs x86_64 0.7.1-5.el9 epel 1.0 M
remi-libzip x86_64 1.11.4-1.el9.remi remi-safe 70 k
sscg x86_64 3.0.0-7.el9 appstream 45 k
svt-av1-libs x86_64 0.9.0-1.el9 epel 1.7 M
vim-common x86_64 2:8.2.2637-22.el9_6 appstream 6.6 M
vim-filesystem noarch 2:8.2.2637-22.el9_6 baseos 9.2 k
弱い依存関係のインストール:
ImageMagick7-djvu x86_64 1:7.1.2.3-1.el9.remi remi-safe 20 k
ImageMagick7-heic x86_64 1:7.1.2.3-1.el9.remi remi-safe 24 k
apr-util-openssl x86_64 1.6.1-23.el9 appstream 14 k
composer noarch 2.8.12-1.el9 epel 927 k
jxl-pixbuf-loader x86_64 0.7.2-2.el9 epel 52 k
mod_http2 x86_64 2.0.26-4.el9_6.1 appstream 163 k
mod_lua x86_64 2.4.62-4.el9_6.4 appstream 58 k
nginx-filesystem noarch 2:1.20.1-22.el9_6.3.alma.1 appstream 9.5 k
open-sans-fonts noarch 1.10-16.el9 appstream 471 k
php-nikic-php-parser5 noarch 5.6.1-1.el9 epel 178 k
php-sodium x86_64 8.3.26-1.el9.remi remi-modular 61 k
トランザクションの概要
====================================================================================================================================================================================================================
インストール 89 パッケージ
ダウンロードサイズの合計: 54 M
インストール後のサイズ: 236 M
これでよろしいですか? [y/N]: y
パッケージのダウンロード:
~(中略)~
インストール済み:
ImageMagick7-djvu-1:7.1.2.3-1.el9.remi.x86_64 ImageMagick7-heic-1:7.1.2.3-1.el9.remi.x86_64 ImageMagick7-libs-1:7.1.2.3-1.el9.remi.x86_64 LibRaw-0.21.1-1.el9.x86_64
almalinux-logos-httpd-90.6-2.el9.noarch apr-1.7.0-12.el9_3.x86_64 apr-util-1.6.1-23.el9.x86_64 apr-util-bdb-1.6.1-23.el9.x86_64
apr-util-openssl-1.6.1-23.el9.x86_64 capstone-4.0.2-10.el9.x86_64 cmake-filesystem-3.26.5-2.el9.x86_64 composer-2.8.12-1.el9.noarch
djvulibre-libs-3.5.28-4.el9.x86_64 fftw-libs-double-3.3.8-12.el9.x86_64 gd3php-2.3.3-9.el9.remi.x86_64 gpm-libs-1.20.7-29.el9.x86_64
highway-1.2.0-7.el9.x86_64 httpd-2.4.62-4.el9_6.4.x86_64 httpd-core-2.4.62-4.el9_6.4.x86_64 httpd-filesystem-2.4.62-4.el9_6.4.noarch
httpd-tools-2.4.62-4.el9_6.4.x86_64 imath-3.1.2-1.el9.x86_64 jasper-libs-2.0.28-3.el9.x86_64 jxl-pixbuf-loader-0.7.2-2.el9.x86_64
keyutils-libs-devel-1.6.3-1.el9.x86_64 krb5-devel-1.21.1-6.el9.x86_64 libaom-3.13.1-1.el9.x86_64 libavif-0.11.1-5.el9.x86_64
libcom_err-devel-1.46.5-7.el9.x86_64 libdav1d-1.5.1-1.el9.x86_64 libheif-1.16.1-2.el9.x86_64 libicu74-74.2-1.el9.remi.x86_64
libimagequant-2.17.0-1.el9.x86_64 libjxl-0.7.2-2.el9.x86_64 libkadm5-1.21.1-6.el9.x86_64 liblqr-1-0.4.2-19.el9.x86_64
libmcrypt-2.5.8-30.el9.x86_64 libraqm-0.8.0-1.el9.x86_64 libselinux-devel-3.6-3.el9.x86_64 libsepol-devel-3.6-2.el9.x86_64
libsodium-1.0.18-8.el9.x86_64 libverto-devel-0.3.2-3.el9.x86_64 libvmaf-2.3.0-2.el9.x86_64 libwmf-lite-0.2.12-10.el9.x86_64
libxml2-devel-2.9.13-9.el9_6.x86_64 libzip-1.7.3-8.el9.x86_64 mailcap-2.1.49-5.el9.noarch mod_http2-2.0.26-4.el9_6.1.x86_64
mod_lua-2.4.62-4.el9_6.4.x86_64 mod_ssl-1:2.4.62-4.el9_6.4.x86_64 nginx-filesystem-2:1.20.1-22.el9_6.3.alma.1.noarch oniguruma5php-6.9.10-1.el9.remi.x86_64
open-sans-fonts-1.10-16.el9.noarch openexr-libs-3.1.1-3.el9.x86_64 pcre2-devel-10.40-6.el9.x86_64 pcre2-utf16-10.40-6.el9.x86_64
pcre2-utf32-10.40-6.el9.x86_64 php-8.3.26-1.el9.remi.x86_64 php-bcmath-8.3.26-1.el9.remi.x86_64 php-cli-8.3.26-1.el9.remi.x86_64
php-common-8.3.26-1.el9.remi.x86_64 php-devel-8.3.26-1.el9.remi.x86_64 php-fedora-autoloader-1.0.1-7.el9.noarch php-fpm-8.3.26-1.el9.remi.x86_64
php-gd-8.3.26-1.el9.remi.x86_64 php-gmp-8.3.26-1.el9.remi.x86_64 php-intl-8.3.26-1.el9.remi.x86_64 php-ldap-8.3.26-1.el9.remi.x86_64
php-mbstring-8.3.26-1.el9.remi.x86_64 php-mysqlnd-8.3.26-1.el9.remi.x86_64 php-nikic-php-parser5-5.6.1-1.el9.noarch php-opcache-8.3.26-1.el9.remi.x86_64
php-pdo-8.3.26-1.el9.remi.x86_64 php-pear-1:1.10.14-1.el9.noarch php-pecl-apcu-5.1.27-1.el9.remi.8.3.x86_64 php-pecl-apcu-devel-5.1.27-1.el9.remi.8.3.x86_64
php-pecl-imagick-im7-3.8.0-1.el9.remi.8.3.x86_64 php-pecl-mcrypt-1.0.9-1.el9.remi.8.3.x86_64 php-pecl-zip-1.22.7-1.el9.remi.8.3.x86_64 php-process-8.3.26-1.el9.remi.x86_64
php-sodium-8.3.26-1.el9.remi.x86_64 php-xml-8.3.26-1.el9.remi.x86_64 rav1e-libs-0.7.1-5.el9.x86_64 remi-libzip-1.11.4-1.el9.remi.x86_64
sscg-3.0.0-7.el9.x86_64 svt-av1-libs-0.9.0-1.el9.x86_64 vim-common-2:8.2.2637-22.el9_6.x86_64 vim-enhanced-2:8.2.2637-22.el9_6.x86_64
vim-filesystem-2:8.2.2637-22.el9_6.noarch
完了しました!
PHPのバージョンを確認します。
# php -v
PHP 8.3.26 (cli) (built: Sep 23 2025 17:57:26) (NTS gcc x86_64)
Copyright (c) The PHP Group
Zend Engine v4.3.26, Copyright (c) Zend Technologies
with Zend OPcache v8.3.26, Copyright (c), by Zend Technologies
Apacheおよびphp-fpmを起動します。
# systemctl enable httpd php-fpm
Created symlink /etc/systemd/system/multi-user.target.wants/httpd.service → /usr/lib/systemd/system/httpd.service.
Created symlink /etc/systemd/system/multi-user.target.wants/php-fpm.service → /usr/lib/systemd/system/php-fpm.service.
# systemctl start httpd php-fpm
# systemctl status httpd php-fpm
● httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; preset: disabled)
Drop-In: /etc/systemd/system/httpd.service.d
└─php-fpm.conf
Active: active (running) since Thu 2025-10-02 11:48:34 JST; 4s ago
Docs: man:httpd.service(8)
Main PID: 23824 (httpd)
Status: "Started, listening on: port 443, port 80"
Tasks: 177 (limit: 23104)
Memory: 34.6M
CPU: 220ms
CGroup: /system.slice/httpd.service
├─23824 /usr/sbin/httpd -DFOREGROUND
├─23825 /usr/sbin/httpd -DFOREGROUND
├─23826 /usr/sbin/httpd -DFOREGROUND
├─23827 /usr/sbin/httpd -DFOREGROUND
└─23828 /usr/sbin/httpd -DFOREGROUND
● php-fpm.service - The PHP FastCGI Process Manager
Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; enabled; preset: disabled)
Active: active (running) since Thu 2025-10-02 11:48:32 JST; 6s ago
Main PID: 23812 (php-fpm)
Status: "Ready to handle connections"
Tasks: 6 (limit: 23104)
Memory: 24.8M
CPU: 204ms
CGroup: /system.slice/php-fpm.service
├─23812 "php-fpm: master process (/etc/php-fpm.conf)"
├─23817 "php-fpm: pool www"
├─23818 "php-fpm: pool www"
├─23819 "php-fpm: pool www"
├─23820 "php-fpm: pool www"
└─23821 "php-fpm: pool www"
MariaDBの導入
MariaDB 10.11のモジュールを有効にして、インストールします。
# dnf module install mariadb:10.11
メタデータの期限切れの最終確認: 0:03:22 前の 2025年10月02日 11時47分59秒 に実施しました。
依存関係が解決しました。
====================================================================================================================================================================================================================
パッケージ アーキテクチャー バージョン リポジトリー サイズ
====================================================================================================================================================================================================================
group/moduleパッケージをインストール:
mariadb-server x86_64 3:10.11.10-1.module_el9.5.0+135+c9657a87 appstream 10 M
依存関係のインストール:
mariadb x86_64 3:10.11.10-1.module_el9.5.0+135+c9657a87 appstream 1.7 M
mariadb-common x86_64 3:10.11.10-1.module_el9.5.0+135+c9657a87 appstream 27 k
mariadb-connector-c x86_64 3.2.6-1.el9_0 appstream 194 k
mariadb-connector-c-config noarch 3.2.6-1.el9_0 appstream 9.7 k
mariadb-errmsg x86_64 3:10.11.10-1.module_el9.5.0+135+c9657a87 appstream 254 k
mysql-selinux noarch 1.0.14-1.el9_6 appstream 36 k
perl-DBD-MariaDB x86_64 1.21-16.el9_0 appstream 151 k
perl-DBI x86_64 1.643-9.el9 appstream 700 k
perl-Math-BigInt noarch 1:1.9998.18-460.el9 appstream 188 k
perl-Math-Complex noarch 1.59-481.1.el9_6 appstream 45 k
perl-Sys-Hostname x86_64 1.23-481.1.el9_6 appstream 15 k
弱い依存関係のインストール:
mariadb-backup x86_64 3:10.11.10-1.module_el9.5.0+135+c9657a87 appstream 6.8 M
mariadb-gssapi-server x86_64 3:10.11.10-1.module_el9.5.0+135+c9657a87 appstream 15 k
mariadb-server-utils x86_64 3:10.11.10-1.module_el9.5.0+135+c9657a87 appstream 262 k
モジュールプロファイルのインストール中:
mariadb/server
モジュールストリームの有効化中:
mariadb 10.11
トランザクションの概要
====================================================================================================================================================================================================================
インストール 15 パッケージ
ダウンロードサイズの合計: 21 M
インストール後のサイズ: 133 M
これでよろしいですか? [y/N]: y
パッケージのダウンロード:
~(中略)~
インストール済み:
mariadb-3:10.11.10-1.module_el9.5.0+135+c9657a87.x86_64 mariadb-backup-3:10.11.10-1.module_el9.5.0+135+c9657a87.x86_64 mariadb-common-3:10.11.10-1.module_el9.5.0+135+c9657a87.x86_64
mariadb-connector-c-3.2.6-1.el9_0.x86_64 mariadb-connector-c-config-3.2.6-1.el9_0.noarch mariadb-errmsg-3:10.11.10-1.module_el9.5.0+135+c9657a87.x86_64
mariadb-gssapi-server-3:10.11.10-1.module_el9.5.0+135+c9657a87.x86_64 mariadb-server-3:10.11.10-1.module_el9.5.0+135+c9657a87.x86_64 mariadb-server-utils-3:10.11.10-1.module_el9.5.0+135+c9657a87.x86_64
mysql-selinux-1.0.14-1.el9_6.noarch perl-DBD-MariaDB-1.21-16.el9_0.x86_64 perl-DBI-1.643-9.el9.x86_64
perl-Math-BigInt-1:1.9998.18-460.el9.noarch perl-Math-Complex-1.59-481.1.el9_6.noarch perl-Sys-Hostname-1.23-481.1.el9_6.x86_64
完了しました!
MariaDBを起動します。
# systemctl enable mariadb
Created symlink /etc/systemd/system/mysql.service → /usr/lib/systemd/system/mariadb.service.
Created symlink /etc/systemd/system/mysqld.service → /usr/lib/systemd/system/mariadb.service.
Created symlink /etc/systemd/system/multi-user.target.wants/mariadb.service → /usr/lib/systemd/system/mariadb.service.
# systemctl start mariadb
# systemctl status mariadb
● mariadb.service - MariaDB 10.11 database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; preset: disabled)
Active: active (running) since Thu 2025-10-02 11:53:45 JST; 26s ago
Docs: man:mariadbd(8)
Process: 27239 ExecStartPre=/usr/libexec/mariadb-check-socket (code=exited, status=0/SUCCESS)
Process: 27261 ExecStartPre=/usr/libexec/mariadb-prepare-db-dir mariadb.service (code=exited, status=0/SUCCESS)
Process: 27357 ExecStartPost=/usr/libexec/mariadb-check-upgrade (code=exited, status=0/SUCCESS)
Main PID: 27346 (mariadbd)
Status: "Taking your SQL requests now..."
Tasks: 11 (limit: 23104)
Memory: 84.5M
CPU: 1.437s
CGroup: /system.slice/mariadb.service
└─27346 /usr/libexec/mariadbd --basedir=/usr
MariaDBの初期化をします。
# mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
haven't set the root password yet, you should just press enter here.
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Setting the root password or using the unix_socket ensures that nobody
can log into the MariaDB root user without the proper authorisation.
You already have your root account protected, so you can safely answer 'n'.
Switch to unix_socket authentication [Y/n]
Enabled successfully!
Reloading privilege tables..
... Success!
You already have your root account protected, so you can safely answer 'n'.
Change the root password? [Y/n]
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n]
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n]
... Success!
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n]
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n]
... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
Nextcloud用のデータベースを作成をします。
# mysql -u root -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 13
Server version: 10.11.10-MariaDB MariaDB Server
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)]>
MariaDB [(none)]> create database nextcloud default character set=utf8;
Query OK, 1 row affected (0.001 sec)
MariaDB [(none)]>
MariaDB [(none)]> grant all privileges on nextcloud.* to "nextcloud"@"localhost" identified by "<任意のパスワード>";
Query OK, 0 rows affected (0.002 sec)
MariaDB [(none)]>
MariaDB [(none)]> quit
Bye
Nextcloudの導入
wgetをインストールします。
# dnf install wget
メタデータの期限切れの最終確認: 0:09:36 前の 2025年10月02日 11時47分59秒 に実施しました。
依存関係が解決しました。
====================================================================================================================================================================================================================
パッケージ アーキテクチャー バージョン リポジトリー サイズ
====================================================================================================================================================================================================================
インストール:
wget x86_64 1.21.1-8.el9_4 appstream 768 k
トランザクションの概要
====================================================================================================================================================================================================================
インストール 1 パッケージ
ダウンロードサイズの合計: 768 k
インストール後のサイズ: 3.1 M
これでよろしいですか? [y/N]: y
パッケージのダウンロード:
~(中略)~
インストール済み:
wget-1.21.1-8.el9_4.x86_64
完了しました!
Nextcloudのインストールディレクトリを作成し、オーナー情報を設定して移動します。
# cd /var/www/html
# mkdir nextcloud
# chown apache.apache nextcloud
# chmod 755 nextcloud
# cd nextcloud
Nexcloudのインストーラとパッケージをダウンロードします。
# wget https://download.nextcloud.com/server/installer/setup-nextcloud.php
# wget https://download.nextcloud.com/server/releases/nextcloud-31.0.9.zip
# ls -l
合計 263884
-rw-r--r-- 1 root root 270056088 9月 11 22:11 nextcloud-31.0.9.zip
-rw-r--r-- 1 root root 158285 11月 30 2021 setup-nextcloud.php
パッケージのファイル名と所有者、グループを変更します。
# mv nextcloud-31.0.9.zip nc.zip
# chown apache.apache nc.zip
# ls -l
合計 263884
-rw-r--r-- 1 apache apache 270056088 9月 11 22:11 nc.zip
-rw-r--r-- 1 root root 158285 11月 30 2021 setup-nextcloud.php
Webインストーラを実行します。Webブラウザで次のURLを開きます。
http://<サーバのホスト名>/nextcloud/setup-nextcloud.php
「Next」をクリックします。

「.」を入力し、「Next」をクリックします。

問題なければ「Success」と表示されます。「Next」をクリックします。

管理者アカウント、データベースの情報を入力して「インストール」をクリックします。
データベースがMariaDBの場合は、「ストレージとデータベース」を開いて「MySQL/MariaDB」の方を選択します。データベースアカウント、データベースのパスワード、データベース名はMariaDB導入時の情報を入力します。本例では、データベースアカウントおよびデータベース名は「nextcloud」で作成しております。データベースのホスト名は「localhost:<ポート番号>」を入力します。MariaDBの場合、デフォルトのポート番号は3306ですので、デフォルト設定のままであれば「localhost:3306」を入力します。

インストール中に接続が切れた場合は、nc.zipが展開され、各ディレクトリやファイルが配置されているかCLIにて確認します。展開完了していれば、以下のアドレスにアクセスします。
http://<サーバのホスト名>/nextcloud
ダッシュボードが表示されれば、インストール完了です。

セットアップに関するエラーの対処
Nextcloudにログイン後、画面右上のユーザアイコンをクリックし、「管理者設定」をクリックします。画面左のメニューから「概要」をクリックすると、「セキュリティ&セットアップ警告」が表示されます。

以下いくつか対処例を説明します。
・ データディレクトリやファイルがインターネットからアクセスされている可能性があります。.htaccessファイルが機能していません。データディレクトリにアクセスできないようにWebサーバーを設定するか、データディレクトリをWebサーバーのドキュメントルートの外に移動することを強くお勧めします。
・ あなたのウェブサーバーは、JavaScript のMIMEタイプを使用して .mjs
ファイルを提供していません。これにより、一部のアプリがブラウザーで JavaScript ファイルを実行できなくなります。ウェブサーバーを設定して、.mjs
ファイルを text/javascript
または application/javascript
のMIMEタイプで提供するようにしてください。
・ 安全ではないHTTP経由でのサイトへのアクセス。代わりにHTTPSを要求するようにサーバーを設定することを強くお勧めします。そうしないと「クリップボードにコピー」や「service wokers」のような重要なウェブ機能が動作しません!詳細については、ドキュメント↗を参照してください。
・「ウェブサーバーが .well-known
URLを正しく解決できるように設定されていません。失敗箇所: .well-known/webfinger
詳細については、ドキュメント↗を参照してください。
・ インスタンスの一部のヘッダーが正しく設定されていません - Strict-Transport-Security
HTTPヘッダーが設定されていません (少なくとも 15552000
秒に設定する必要があります)。セキュリティを強化するために、HSTSを有効にすることを推奨します。詳細については、ドキュメント↗を参照してください。
【対処方法】
証明書を導入して、「/etc/httpd/conf.d/ssl.conf」の「SSLCertificateFile」、「SSLCertificateKeyFile」等のパラメータを修正します。
「/etc/httpd/conf.d/nextcloud.conf」を以下設定で新規作成します。
# vi /etc/httpd/conf.d/nextcloud.conf
Alias /nextcloud /var/www/html/nextcloud
<Directory /var/www/html/nextcloud/>
<IfModule mod_headers.c>
Header always set Strict-Transport-Security "max-age=15768000; includeSubDomains; preload"
</IfModule>
Require all granted
Options FollowSymLinks MultiViews
AllowOverride All
<IfModule mod_dav.c>
Dav off
</IfModule>
SetEnv HOME /var/www/html/nextcloud/
SetEnv HTTP_HOME /var/www/html/nextcloud/
</Directory>
Redirect 301 /.well-known/webfinger /index.php/.well-known/webfinger
Redirect 301 /.well-known/nodeinfo /index.php/.well-known/nodeinfo
Redirect 301 /.well-known/caldav /remote.php/dav
Redirect 301 /.well-known/carddav /remote.php/dav
### httpをhttpsにリダイレクト ###
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>
######
サービスを再起動します。
# systemctl restart httpd php-fpm
# systemctl status httpd php-fpm
・ PHPのメモリ制限が推奨値の512 MBを下回っています。アップデータを含む一部の機能やアプリが正しく動作しない場合があります。
【対処方法】
「/etc/php.ini」の以下パラメータを修正します。
default_charset = "UTF-8"
date.timezone = Asia/Tokyo
memory_limit = 512M
post_max_size = 256M
upload_max_filesize = 256M
サービスを再起動します。
# systemctl restart httpd php-fpm
# systemctl status httpd php-fpm
・ サーバーにはメンテナンスウインドウの開始時間が設定されていません。これは、リソースを多く使用する日常のバックグラウンドジョブが、メインの利用時間中にも実行されることを意味します。利用者がこれらの重いタスクによる負荷の影響を受けにくくするために、低い利用時間に設定することをおすすめします。詳細については、ドキュメント↗を参照してください。
・ データベースがトランザクションファイルロックに使われています。パフォーマンスをあげるには、可能であればメモリーのキャッシュを設定してください。 詳細については、ドキュメント↗を参照してください。
・ メモリキャッシュが設定されていません。パフォーマンスを向上させるため、利用可能であればメモリキャッシュを設定してください。 詳細については、ドキュメント↗を参照してください。
・ ご使用のシステムには、デフォルトの電話地域が設定されていません。これは、プロフィール設定で国コードなしの電話番号を有効にするために必要です。国コードなしの電話番号を許可するには、"default_phone_region" を地域の ISO 3166-1 コードとともに設定ファイルに追加してください。 詳細については、ドキュメント↗を参照してください。
【対処方法】
Redisをインストールします。
# dnf install redis php-redis
メタデータの期限切れの最終確認: 0:07:49 前の 2025年10月02日 11時38分17秒 に実施しました。
依存関係が解決しました。
====================================================================================================================================================================================================================
パッケージ アーキテクチャー バージョン リポジトリー サイズ
====================================================================================================================================================================================================================
インストール:
php-pecl-redis6 x86_64 6.2.0-2.el9.remi.8.3 remi-modular 345 k
redis x86_64 6.2.19-1.el9_6 appstream 1.3 M
依存関係のインストール:
liblzf x86_64 3.6-22.el9 epel 27 k
php-pecl-igbinary x86_64 3.2.16-1.el9.remi.8.3 remi-modular 71 k
php-pecl-msgpack x86_64 3.0.0-1.el9.remi.8.3 remi-modular 58 k
トランザクションの概要
====================================================================================================================================================================================================================
インストール 5 パッケージ
ダウンロードサイズの合計: 1.8 M
インストール後のサイズ: 7.0 M
これでよろしいですか? [y/N]: y
パッケージのダウンロード:
~(中略)~
インストール済み:
liblzf-3.6-22.el9.x86_64 php-pecl-igbinary-3.2.16-1.el9.remi.8.3.x86_64 php-pecl-msgpack-3.0.0-1.el9.remi.8.3.x86_64 php-pecl-redis6-6.2.0-2.el9.remi.8.3.x86_64 redis-6.2.19-1.el9_6.x86_64
完了しました!
Redisを起動します。
# systemctl enable redis
Created symlink /etc/systemd/system/multi-user.target.wants/redis.service →
# systemctl start redis
# systemctl status redis
●
Loaded: loaded (/usr/lib/systemd/system/redis.service; enabled; preset: disabled)
Drop-In: /etc/systemd/system/redis.service.d
mqlimit.conf
Active: active (running) since Thu 2025-10-02 18:01:35 JST; 2s ago
Main PID: 1905 (redis-server)
Status: "Ready to accept connections"
Tasks: 5 (limit: 23104)
Memory: 9.9M
CPU: 71ms
CGroup: /system.slice/redis.service
mq1905 "/usr/bin/redis-server 127.0.0.1:6379"
「/etc/php.d/10-opcache.ini」の以下パラメータを修正します。
opcache.enable=1
opcache.enable_cli=1
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.memory_consumption=128
opcache.save_comments=1
opcache.revalidate_freq=1
「/var/www/html/nextcloud/config/config.php」の「'installed' => true,」の上に以下を追加します。
<?php
$CONFIG = array (
~(中略)~
'default_phone_region' => 'JP',
'default_language' => 'ja',
'default_locale' => 'ja',
'maintenance_window_start' => 1,
'memcache.local' => '\\OC\\Memcache\\APCu',
'filelocking.enabled' => true,
'memcache.locking' => '\\OC\\Memcache\\Redis',
'redis' =>
array (
'host' => 'localhost',
'port' => 6379,
'timeout' => 0.0,
'password' => '',
),
'installed' => true,
);
Apacheおよびphp-fpmのサービスを再起動します。
# systemctl restart httpd php-fpm
# systemctl status httpd php-fpm
バージョン確認 (phpと共にOPcacheのバージョンが返ってくること) します。
# php -v
PHP 8.3.26 (cli) (built: Sep 23 2025 17:57:26) (NTS gcc x86_64)
Copyright (c) The PHP Group
Zend Engine v4.3.26, Copyright (c) Zend Technologies
with Zend OPcache v8.3.26, Copyright (c), by Zend Technologies
・ 1つ以上のmimetypeマイグレーションが利用できます。時折、特定のファイルタイプをよりよく扱うために新しいmimetypesが追加されます。大規模なインスタンスではmimetypesの移行に時間がかかるため、アップグレード時には自動的には行われません。移行を行うには occ maintenance:repair --include-expensive
コマンドを使用してください。
【対処方法】
以下コマンドを実行します。
# cd /var/www/html/nextcloud
# sudo -u apache php occ maintenance:repair --include-expensive
その他推奨設定
バックグラウンドジョブの設定
Nextcloudにログイン後、画面右上のユーザアイコンをクリックし、「管理者設定」をクリックします。画面左のメニューから「基本設定」をクリックします。バックグラウンドジョブの設定にて「Cron」を選択します。

「/etc/php.ini」の末尾に以下設定を追加します。
apc.enable_cli=1
Cronを編集します。
# crontab -u apache -e
*/15 * * * * php -f /var/www/html/nextcloud/cron.php
# crontab -u apache -l
*/15 * * * * php -f /var/www/html/nextcloud/cron.php
サービスを再起動します。
# systemctl restart httpd php-fpm
# systemctl status httpd php-fpm
メール設定
Postfixをインストールします。
# dnf install postfix
メタデータの期限切れの最終確認: 2:27:05 前の 2025年10月02日 14時50分21秒 に実施しました。
依存関係が解決しました。
====================================================================================================================================================================================================================
パッケージ アーキテクチャー バージョン リポジトリー サイズ
====================================================================================================================================================================================================================
インストール:
postfix x86_64 2:3.5.25-1.el9 appstream 1.5 M
トランザクションの概要
====================================================================================================================================================================================================================
インストール 1 パッケージ
ダウンロードサイズの合計: 1.5 M
インストール後のサイズ: 4.4 M
これでよろしいですか? [y/N]: y
パッケージのダウンロード:
~(中略)~
インストール済み:
postfix-2:3.5.25-1.el9.x86_64
完了しました!
Postfixを設定後、起動します。
# systemctl enable postfix
Created symlink /etc/systemd/system/multi-user.target.wants/postfix.service → /usr/lib/systemd/system/postfix.service.
# systemctl start postfix
# systemctl start postfixenablestatus
● postfix.service - Postfix Mail Transport Agent
Loaded: loaded (/usr/lib/systemd/system/postfix.service; enabled; preset: disabled)
Active: active (running) since Thu 2025-10-02 17:26:18 JST; 2s ago
Process: 32417 ExecStartPre=/usr/sbin/restorecon -R /var/spool/postfix/pid (code=exited, status=0/SUCCESS)
Process: 32418 ExecStartPre=/usr/libexec/postfix/aliasesdb (code=exited, status=0/SUCCESS)
Process: 32422 ExecStartPre=/usr/libexec/postfix/chroot-update (code=exited, status=0/SUCCESS)
Process: 32423 ExecStart=/usr/sbin/postfix start (code=exited, status=0/SUCCESS)
Main PID: 32491 (master)
Tasks: 3 (limit: 23104)
Memory: 4.9M
CPU: 908ms
CGroup: /system.slice/postfix.service
├─32491 /usr/libexec/postfix/master -w
├─32492 pickup -l -t unix -u
└─32493 qmgr -l -t unix -u
/var/www/html/nextcloud/config/config.php」に設定を追加します。
'mail_smtpmode' => 'sendmail',
'mail_smtphost' => '127.0.0.1',
'mail_sendmailmode' => 'smtp',
'mail_smtpport' => '25',
'mail_from_address' => 'test001',
'mail_domain' => 'example.com',
Apacheおよびphp-fpmのサービスを再起動します。
# systemctl restart httpd php-fpm
# systemctl status httpd php-fpm
Nextcloudのアカウントにメールアドレスを設定します。

「メールを送信」をクリックしてメール通知されることを確認します。

技術情報
お気軽にお問い合わせください。応対時間 9:30-17:30 [ 土・日・祝日除く ]
お問い合わせ