Cómo instalar ownCloud en CentOS 8

En esta entrada vamos ver cómo instalar ownCloud en CentOS 8 paso a paso, de manera que podrás crear una nube de archivos y aplicaciones en tu red local o a través de Internet desde tu servidor o VPS CentOS.

Antes de instalar ownCloud en CentOS 8

Si tienes intención de seguir esta guía de instalación de onwCloud en CentOS 8 hay que partir de los siguientes requerimientos mínimos:

  • Un sistema CentOS 8 actualizada.
  • Una pila tipo LAMP (servicio web con PHP y servicio de bases de datos).
  • Un usuario con privilegios de sudo o el mismo root.
  • Acceso a Internet.

¿No dispones aún del entorno mínimo? En ese caso echa un vistazo previo a nuestra guía de instalación LAMP en CentOS 8.

Además utilizaremos ciertas herramientas del sistema que instalaremos desde los repositorios de CentOS 8, para lo que actualizamos las listas de paquetes:

~$ sudo yum update

Y las instalamos:

~$ sudo yum install -y policycoreutils-python-utils yum-utils

Cómo instalar el repositorio de ownCloud para CentOS 8

Empezaremos con el proceso de instalar el repositorio de ownCloud para CentOS 8 añadiendo su archivo de configuración:

~$ sudo yum-config-manager --add-repo http://download.owncloud.org/download/repositories/production/CentOS_8/ce:stable.repo

Y actualizamos las listas de paquetes para incluir la información del nuevo repositorio:

~$ sudo yum update

Cómo instalar ownCloud en CentOS 8

Para instalar ownCloud en CentOS 8 necesitamos el paquete owncloud-files, que instalaremos con el comando yum:

~$ sudo yum install -y owncloud-complete-files

Una vez descargado e instalado este paquete, tendremos que realizar una serie de tareas adicionales, ya que el paquete sólo contiene estrictamente los archivos web de la aplicación.

Servicio web

Para poder usar la configuración de los archivos .htaccess de ownCloud, será necesario activar el uso de estos archivos. Crearemos una configuración de Apache exclusiva para ownCloud:

~$ sudo nano /etc/httpd/conf.d/owncloud.conf

El contenido será el siguiente:

<Directory /var/www/html/owncloud>
        AllowOverride all
</Directory>

Timeout 120
ProxyTimeout 120

Guardamos el archivo y recargamos la configuración del servicio web:

~$ sudo systemctl reload httpd

PHP

La aplicación ownCloud requiere la presencia en CentOS 8 de ciertas extensiones de PHP, que instalaremos para asegurar su disponibilidad:

~$ sudo yum install -y php-gd php-intl php-json php-mbstring php-pecl-apcu php-process php-xml php-zip

También es muy importante instalar la extensión para conectar con el servicio de bases de datos con el que queramos trabajar, para MariaDB/MySQL:

~$ sudo yum install -y php-mysqli

Y para PostgreSQL:

~$ sudo yum install -y php-pgsql

Base de datos

Es posible usar varios sistemas de bases de datos para ownCloud, aunque en este tutorial veremos cómo preparar los más populares en CentOS 8.

MariaDB/MySQL

Conectamos al servicio de bases de datos con el cliente de consola mysql y el usuario administrador con el que trabajemos habitualmente:

~$ mysql -u root -p

Creamos la base de datos:

> create database owncloud charset utf8mb4 collate utf8mb4_unicode_ci;

En MariaDB o MySQL 5.x creamos el usuario que manejará la base de datos de la forma habitual:

> create user owncloud@localhost identified by 'XXXXXXXX';

Pero en MySQL 8 al crear el usuario es importante especificar el plugin de autenticación:

> create user owncloud@localhost identified with mysql_native_password by 'XXXXXXXX';

Sea como sea, concedemos los privilegios que necesita el nuevo usuario sobre la base de datos:

> grant all privileges on owncloud.* to owncloud@localhost;

Y cerramos la conexión:

> exit

PostgreSQL

Si usamos PostgreSQL será necesario crear un rol con contraseña:

~$ sudo -iu postgres createuser -P owncloud

Y crearemos también la base de datos asociada a dicho rol:

~$ sudo -iu postgres createdb owncloud -O owncloud

SELinux

Si tenemos activado SELinux en CentOS 8, como sucede por defecto, tendremos que crear un contexto de lectura/escritura a los archivos de ownCloud, para que la aplicación pueda crear y modificar archivos:

~$ sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/owncloud(/.*)?"

Aplicamos el nuevo contexto con el comando restorecon:

~$ sudo restorecon -R /var/www/html/owncloud/

Debemos permitir el acceso a Internet del servicio web, para que ownCloud pueda descargar componentes, módulos, etc.:

~$ sudo setsebool -P httpd_can_network_connect on

Instalador web

Ya podemos acceder al instalador de ownCloud desde un navegador web, usando como URL la dirección IP o dominio de la máquina CentOS 8 con el añadido de la ruta de instalación de ownCloud (/owncloud en este tutorial).

Por ejemplo, en este tutorial trabajamos sobre un servidor CentOS 8 accesible en el dominio centos8.local.lan, así que usaremos http://centos8.local.lan/owncloud como URL:

como instalar owncloud en centos 8

Introducimos un nombre de usuario y una contraseña para el administrador del sitio, desplegamos la opción «Almacenamiento y base de datos» y seleccionamos el servicio de bases de datos sobre el que vamos a trabajar (MySQL/MariaDB en este tutorial), para cumplimentar los datos de conexión tal como los preparamos anteriormente.

Hecho esto, seguiremos el enlace «Completar la instalación«.

Tras unos instantes se mostrará una página de inicio de sesión:

instalar owncloud en centos 8

Introducimos el usuario y la contraseña como acabamos de crearlos en la página anterior y accedemos.

Se nos mostrará una bienvenida a ownCloud que nos recordará la existencia de clientes del servicio para distintos dispositivos y sistemas:

owncloud en centos 8

Cerrado este aviso, se mostrá la página de archivos de nuestro usuario, donde podremos empezar a administrar carpetas, archivos, etc.:

owncloud para centos 8

Configuración de ownCloud en CentOS 8

Tenemos que realizar algunas tareas de post-instalación de ownCloud en CentOS 8.

Activamos el bloqueo de archivos basado en memoria, editando el archivo config.php:

~$ sudo nano /var/www/html/owncloud/config/config.php

Al final del archivo, antes del paréntesis de cierre, añadimos la siguiente línea:

...
        'filelocking.enabled' => true,
        'memcache.local' => '\OC\Memcache\APCu',
        'memcache.locking' => '\OC\Memcache\APCu',
);

Por otro lado es interesante cambiar la forma en que se ejecutan las tareas programadas, accediendo a la sección «General» de los ajustes y en el apartado «Cron» seleccionar la opción de usar el servicio cron del sistema. Obviamente no basta con marcar esta opción, sino que hay que crear la tarea programada, mediante un nuevo archivo para el servicio cron:

~$ sudo nano /etc/cron.d/owncloud

Con el contenido:

*/15 * * * *       apache  /usr/bin/php /var/www/html/owncloud/occ system:cron

Guardados los cambios y cerrado el archivo, el servicio cron automáticamente lanzará el mantenimiento de ownCloud cada 15 minutos.

Conclusión

Ahora que sabes cómo instalar ownCloud en CentOS 8 ya puedes montar tu propia nube de archivos y aplicaciones sobre tu servidor o VPS, para trabajar desde red local o Internet como con un servicio de pago profesional.

Si te ha surgido alguna duda o pregunta, quieres indicar alguna mejora o notificar algún error, etc. puedes dejar un comentario.

¡Apoya comoinstalar.me!

¿Ya tienes funcionando tu propia nube de archivos gracias a esta guía de instalación de ownCloud en CentOS 8? En caso afirmativo, si te apetece agradecérnoslo debes saber que cualquier mínima aportación ayuda mucho a mantener en línea este sitio, así como a la creación de más tutoriales de CentOS 8 y ownCloud, y puedes hacerlo dejando 1 $ de propina con PayPal:

O, si te sientes especialmente agradecido, puedes invitarnos a un café:

¡Gracias!

Valora esta entrada

5/5 - (1 voto)

Deja un comentario