Prerequisites for Manual Installation on Linux
Introduction
This document guides you through the prerequisites for a manual ownCloud Server installation on Linux.
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
openSSL Version
ownCloud requires that you have openSSL version 1.1.x installed. With the release change of openSSL v1.x to openSSL version 3.x in December 2021, some ciphers which were valid in version 1.x, have been retired with immediate effect. This impacts the ownCloud encryption app.
If you plan to:
your encryption environment will break due to openSSL v3 retired (legacy) ciphers. As a result, encrypted files cant be accessed. As a temporary solution, you have to manually reenable in the openSSL v3 config the legacy ciphers. To do so, see the example in the OpenSSL 3.0 Wiki at section 6.2 Providers. |
How to implement the fix for the above mentioned issue:
-
Find the openssl config directory with
openssl version -d
Output example:
OPENSSLDIR: "/usr/lib/ssl"
-
Go in to that directory and open the config file
openssl.cnf
Look for:
[openssl_init] providers = provider_sect
and add this line below
legacy = legacy_sect
then look for
[default_sect] # activate = 1
remove the "#" before "activate" and add the following lines below:
[legacy_sect] activate = 1
-
The file should now look like this:
openssl_conf = openssl_init [openssl_init] providers = provider_sect [provider_sect] default = default_sect legacy = legacy_sect [default_sect] activate = 1 [legacy_sect] activate = 1
-
Save the file and you have enabled OpenSSL legacy support.
PHP Version
ownCloud can run with following PHP versions: 7.4
PHP 7.4 must be used for all installations. Sites currently using a different PHP version must migrate to PHP 7.4. |
Note that PHP 8.x is currently not supported. |
PHP Extensions
Name | Description |
---|---|
For character type checking |
|
Used for aspects of HTTP user authentication |
|
For operating on XML documents through the DOM API |
|
For creating and manipulating image files in a variety of different image formats, including GIF, PNG, JPEG, WBMP, and XPM |
|
For working with message digests (hash) |
|
For working with the iconv character set conversion facility |
|
Increases language translation performance and fixes sorting of non-ASCII characters |
|
For working with the JSON data-interchange format |
|
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 |
|
For working with multibyte character encoding schemes |
|
For symmetric and asymmetric encryption and decryption, PBKDF2, PKCS7, PKCS12, X509 and other crypto operations |
|
This is required for the pdo_msql function to work |
|
For working with PHP Archives (.phar files) |
|
For working with UNIX POSIX functionality |
|
For working with XML files as objects |
|
For generating streams or files of XML data |
|
For reading and writing ZIP compressed archives and the files inside them. |
|
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. |
Required For Specific Apps
Name | Description |
---|---|
For working with FTP storage |
|
For working with SFTP storage |
|
For IMAP integration |
|
For LDAP integration |
|
For SMB/CIFS integration |
SMB/Windows Network Drive mounts require the PHP module smbclient version 0.8.0+. See SMB/CIFS. |
Recommended Prerequisites
For Specific Apps
Extension | Reason |
---|---|
For image rotation in the pictures app |
|
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 Command Line Processing
Extension | Reason |
---|---|
Enables command interruption by pressing |
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 preparation guide for more details.
|
For MySQL/MariaDB
The InnoDB storage engine is required, and MyISAM is not supported, see MySQL / MariaDB storage engine for more information.