En esta entrada vamos a explicar cómo instalar ownCloud en Debian 11 Bullseye paso a paso, de modo que puedas disfrutar de una de las alternativas más populares como servicio de nube de archivos sobre tu servidor o VPS Debian.
Tabla de contenidos
Antes de instalar ownCloud en Deban 11 Bullseye
Si quieres completar los pasos de esta guía de instalación de ownCloud en Debian 11 Bullseye primero debes asegurarte de partir del siguiente escenario:
- Un sistema Debian 11 Bullseye actualizado.
- La pila LAMP o similar, es decir, servicio web con PHP (hasta la versión 7.4) y motor de bases de datos (como MariaDB/MySQL, PostgreSQL, etc.).
- Acceso a línea de comandos con permisos de sudo.
- Conexión a Internet.
En caso de no disponer del entorno mínimo, pueden ser de ayuda nuestras guías de instalación de la pila LAMP en Debian 11 Bullseye e instalación de PostgreSQL en Debian 11 Bullseye.
Como el fin de este tutorial es didáctico, se realizará una sencilla instalación integrando ownCloud como parte del sitio web por defecto del servidor. Si prefieres usar un servidor virtual, acceso seguro sobre HTTPS, etc. es fácil adaptar lo expuesto en esta guía, siendo quizás de ayuda nuestra guía de instalación y configuración de Apache en Debian 11 Bullseye.
Si ya tienes todo preparado, es el momento de ajustar la áltura más cómoda para nuestra mesa, abrir una terminal y un navegador, y nos ponemos manos a la obra.
Cómo descargar ownCloud para Debian 11 Bullseye
Vamos a descargar ownCloud para Debian 11 Bullseye desde la sección de descargas de su sitio oficial, donde encontramos la última versión estable disponible en varios formatos de paquete:
El paquete más interesante es el que se encuentra en formato .tar.bz2, ya que tiene mayor compresión y por tanto se descargará más rápido. Si trabajamos localmente podemos realizar la descarga desde el mismo navegador, pero si estamos trabajando de forma remota, podemos descargar este paquete desde consola con alguna herramienta como wget:
~$ wget https://download.owncloud.com/server/stable/owncloud-complete-latest.tar.bz2
Cómo instalar ownCloud en Debian 11 Bullseye
El proceso de instalar ownCloud en Debian 11 Bullseye comprende una serie de preparativos previos del sistema antes de lanzar el instalador web. Pasamos a desarrollar con detalle dichos preparativos.
Archivos de ownCloud
Descomprimimos el paquete que acabamos de descargar en su ubicación definitiva:
~$ sudo tar xf owncloud-complete-latest.tar.bz2 -C /var/www/
Como ownCloud necesita escribir en su propio directorio cambiamos la propiedad del mismo al usuario con el que corre el servicio web en Debian 11:
~$ sudo chown -R www-data: /var/www/owncloud/
Base de datos
Como la mayoría de aplicaciones web complejas, ownCloud necesita trabajar sobre una base de datos, admitiendo distintos tipos de motores, entre ellos los más populares en Debian 11. Veremos cómo preparar algunos de ellos.
PostgreSQL
Creamos un rol con contraseña:
~$ sudo -u postgres createuser -P owncloud
Y creamos la base de datos asociándola al rol anterior:
~$ sudo -u postgres createdb owncloud -O owncloud
MySQL/MariaDB
Conectamos al servicio con el cliente de consola mysql y un usuario administrador:
~$ mysql -u root -p
Creamos la base de datos para ownCloud:
> create database owncloud charset utf8mb4 collate utf8mb4_unicode_ci;
Y creamos el usuario que trabajará con la nueva base de datos:
> create user owncloud@localhost identified by '********';
Concedemos permisos al usuario sobre la base:
> grant all privileges on owncloud.* to owncloud@localhost;
Y cerramos la sesión:
> exit
PHP
Se requiere la presencia de ciertas extensiones de este lenguaje en Debian 11 Bullseye para el funcionamiento de ownCloud. Estas extensiones están disponibles en los repositorios del sistema, por lo que las instalaremos con apt (si la versión de PHP usada se ha instalado desde el repositorio alternativo habrá que indicar el número de versión en los nombres de los paquetes, cambiando el prefijo php- por phpX.X-):
~$ sudo apt install -y php-apcu php-curl php-gd php-mbstring php-intl php-xml php-zip
Recargamos la configuración del servicio web para que las extensiones queden disponibles:
~$ sudo systemctl reload apache2
Servicio web
Vamos a crear una configuración personalizada de Apache para ownCloud:
~$ sudo nano /etc/apache2/sites-available/owncloud.conf
El contenido será similar al siguiente:
Alias /cloud /var/www/owncloud <Directory /var/www/owncloud> AllowOverride all </Directory>
Se trata de un alias /cloud (aunque puedes usar cualquier otro) que hará accesible la aplicación y una directiva que permite la carga de configuraciones guardadas en archivos .htaccess en el directorio de instalación de ownCloud.
Guardamos el archivo y habilitamos esta nueva configuración:
~$ sudo a2ensite owncloud.conf
Como gran parte de las configuraciones en archivos .htaccess se basan en las capacidades del módulo Rewrite de Apache, lo activamos:
~$ sudo a2enmod rewrite
Reiniciamos el servicio web para aplicar todos estos ajustes:
~$ sudo systemctl restart apache2
Instalador web
Por fin podemos acceder al instalador de ownCloud para Debian 11 Bullseye, usando como dirección la que corresponda a la forma en que hemos integrado la aplicación en el servicio web. En este tutorial se usaría la dirección IP, dominio, nombre DNS, localhost (en acceso local), etc. añadiendo el alias que definimos anteriormente.
Por ejemplo, la máquina Debian 11 usada para preparar este tutorial es accesible en el subdominio debian11.local.lan y hemos definido el alias /cloud, así que usamos http://debian11.local.lan/cloud como URL de acceso:
El instalador consta de una única página en la que en primer lugar introduciremos un nombre y una contraseña para el usuario administrador.
Seguidamente configuramos la conexión a la base de datos:
Si hay más de un servicio de bases de datos en el servidor, elegiremos el que vamos a usar. Introduciremos el usuario, la contraseña y el nombre de la base de datos tal como los creamos anteriormente.
Comenzará el proceso de instalación, que tomará unos instantes.
Terminada la instalación se mostrará la página de inicio de sesión:
Introducimos las credenciales del usuario administrador que creamos anteriormente y accedemos a la página principal de la aplicación web.
Un aviso nos recordará que disponemos de clientes de ownCloud para multitud de plataformas y sistemas.
Cerrado el aviso, podremos ver la interfaz web completa de ownCloud:
Ya podemos empezar a trabajar con los archivos de ejemplo y configurar la aplicación, usuarios, etc.
Configuración adicional
Algunos aspectos de la instalación de ownCloud en Debian 11 Bullseye se configuran tras la instalación y desde consola. Veamos algunos de ellos.
Cron
Crearemos una tarea del servicio Cron de Debian 11 para realizar las tareas de mantenimiento en segundo plano de ownCloud:
~$ sudo nano /etc/cron.d/owncloud
El contenido de este archivo será la siguiente línea:
*/15 * * * * www-data /usr/bin/php /var/www/owncloud/occ system:cron
La tarea se ejecutará cada 15 minutos, que es lo recomendado, y comenzará a ejecutarse nada más guardar y cerrar el archivo.
Caché
Aunque hemos instalado una extensión de caché, hay que activarla manualmente. Para ello editamos la configuración de ownCloud:
~$ sudo nano /var/www/owncloud/config/config.php
Y al final del archivo, justo antes del paréntesis de cierre, añadimos estas tres líneas:
... 'filelocking.enabled' => true, 'memcache.local' => '\OC\Memcache\APCu', 'memcache.locking' => '\OC\Memcache\APCu', );
Los cambios se aplican tras guardar y cerrar el archivo.
Conclusión
Ahora que sabes cómo instalar y configurar ownCloud en Debian 11 Bullseye ya puedes montar tu propia nube de archivos tanto para una red local como un servicio a través de Internet, de forma fácil y en muy pocos minutos.
Y si ya has hecho funcionar tu propia nube gracias a este artículo y quieres agradecérnoslo, siempre es bien recibida cualquier mínima aportación al mantenimiento de este sitio y la creación de más tutoriales y guías.
Puedes ayudarnos dejando una propina de tan sólo 1 $ desde PayPal:
¡Gracias!
Actualizado a la versión 10.14.0.
Actualizado a la versión 10.9.1.