Prerequisites for Manual Installation on Linux

Introduction

The ownCloud tar archive contains all of the required third-party PHP libraries. As a result, no extra ones are, strictly, necessary. However, ownCloud does require that PHP has a set of extensions installed, enabled, and configured.

This section lists both the required and optional PHP extensions. If you need further information about a particular extension, please consult the relevant section of the extensions section of the PHP manual.

If you are using a Linux distribution, it should have packages for all the required extensions. You can check the presence of a module by typing php -m | grep -i <module_name>. If you get a result, the module is present.

Required Prerequisites

PHP Version

ownCloud can run with following PHP versions: 7.2, 7.3, and 7.4

ownCloud recommends PHP 7.3 or 7.4 for new installations. Sites using a version earlier than PHP 7.2 are strongly encouraged to migrate at least to PHP 7.2.

PHP Extensions

Name Description

Ctype

For character type checking

cURL

Used for aspects of HTTP user authentication

DOM

For operating on XML documents through the DOM API

GD

For creating and manipulating image files in a variety of different image formats, including GIF, PNG, JPEG, WBMP, and XPM.

HASH Message Digest Framework

For working with message digests (hash).

iconv

For working with the iconv character set conversion facility.

intl

Increases language translation performance and fixes sorting of non-ASCII characters

JSON

For working with the JSON data-interchange format.

libxml

This is required for the DOM, libxml, SimpleXML, and XMLWriter extensions to work. It requires that libxml2, version 2.7.0 or higher, is installed.

Multibyte String

For working with multibyte character encoding schemes.

OpenSSL

For symmetric and asymmetric encryption and decryption, PBKDF2, PKCS7, PKCS12, X509 and other crypto operations.

PDO

This is required for the pdo_msql function to work.

Phar

For working with PHP Archives (.phar files).

POSIX

For working with UNIX POSIX functionality.

SimpleXML

For working with XML files as objects.

XMLWriter

For generating streams or files of XML data.

Zip

For reading and writing ZIP compressed archives and the files inside them.

Zlib

For reading and writing gzip (.gz) compressed files.

The Phar, OpenSSL, and cUrl extensions are mandatory if you want to use Make to setup your ownCloud environment, prior to running either the web installation wizard, or the command line installer.

Database Extensions

Name Description

pdo_mysql

For working with MySQL & MariaDB.

pgsql

For working with PostgreSQL. It requires PostgreSQL 9.0 or above.

sqlite

For working with SQLite. It requires SQLite 3 or above. This is, usually, not recommended for performance reasons.

Required For Specific Apps

Name Description

ftp

For working with FTP storage

sftp

For working with SFTP storage

imap

For IMAP integration

ldap

For LDAP integration

smbclient

For SMB/CIFS integration

SMB/Windows Network Drive mounts require the PHP module smbclient version 0.8.0+. See SMB/CIFS.

Optional

Extension Reason

Bzip2

Required for extraction of applications

Fileinfo

Highly recommended, as it enhances file analysis performance

Mcrypt

Increases file encryption performance

OpenSSL

Required for accessing HTTPS resources

imagick

Required for creating and modifying images and preview thumbnails

For Specific Apps

Extension Reason

Exif

For image rotation in the pictures app

GMP

For working with arbitrary-length integers

For Server Performance

For enhanced server performance consider installing one of the following cache extensions:

See Caching Configuration to learn how to select and configure Memcache.

For Preview Generation

For Command Line Processing

Extension Reason

PCNTL

Enables command interruption by pressing ctrl-c

You don’t need the WebDAV module for your Web server (i.e., Apache’s mod_webdav), as ownCloud has a built-in WebDAV server of its own, SabreDAV. If mod_webdav is enabled you must disable it for ownCloud. See the Apache Web Server configuration for an example configuration.

For MySQL/MariaDB

The InnoDB storage engine is required, and MyISAM is not supported, see MySQL / MariaDB storage engine for more information.