Nube personal con Nextcloud
Publicado en marzo de 2018Un proyecto práctico que puedes hacer con una Orange Pi es crear una versión gratuita y personal de nube privada tipo Dropbox®
o Google Drive®
. Esto te permitirá, entre otras cosas, compartir archivos entre tus diferentes dispositivos y realizar copias de seguridad. Además, podrás respaldar automáticamente cualquier nueva fotografía desde tu teléfono al almacenamiento en la nube. En este tutorial aprenderás a instalar el software del servidor en la nube privada, configurarlo y sincronizar archivos desde un dispositivo móvil.
Que necesitas:
Almacenaremos los datos en un dispositivo externo, en este caso un disco duro externo conectado por USB al Orange Pi. El software de servidor cloud que usaremos es Nextcloud, un software muy similar a Dropbox cuya principal diferencia es que Nextcould es de código abierto y completamente gratuito. Antes de instalar Nexcloud, debemos instalar algunas dependencias. Básicamente, crearemos un servidor LAMP.
Empezaremos actualizando como siempre con:
sudo apt-get update && sudo apt-get -y upgrade
Con el sistema totalmente actualizado, vamos a instalar Apache
:
sudo apt-get install apache2
Puedes comprobar que todo va bien, de momento, escribiendo la dirección IP en el navegador de cualquier dispositivo conectado a tu red doméstica. Deberías ver esta página:
Ahora necesitamos un sistema de base de datos. Tenemos algunas opciones de bases de datos: SQLite, MySQL y MariaDB. Como MySQl ya hemos visto en otras ocasiones, aquí vamos a usar MariaDB, aunque se puede usar MySQL. Para instalar MySQL en el Orange Pi, consulta esta publicación o esta otra. Para instalar MariaDB:
sudo apt-get install mariadb-server
MariaDB te pedirá que introduzcas una contraseña de root, que necesitarás más adelante en la instalación de Nextcloud, así que anótala. Te la pide dos veces, así que simplemente escribe la misma contraseña 2 veces. Ahora instalamos PHP y algunos módulos necesarios:
sudo apt-get install php5 libapache2-mod-php5 -y sudo apt-get install php5-gd sudo apt-get install php5-curl sudo apt-get install php5-memcached
A continuación, descargamos Nextcloud (comprueba cual es la última versión y cambia el nombre de archivo (nextcloud-13.0.0.zip) para que coincida con el último), lo movemos con mv al directorio web y descomprimimos:
wget https://download.nextcloud.com/server/releases/nextcloud-13.0.0.zip sudo mv nextcloud-13.0.0.zip /var/www/html cd /var/www/html sudo unzip -q nextcloud-13.0.0.zip
y damos la propiedad al usuario www-data
del directorio de Nextcloud recién creado:
sudo chown -R www-data:www-data /var/www/html/nextcloud/
Ahora vamos a preparar el disco para que guarde todos nuestros datos. Yo tengo un disco externo conectado por USB. ¡ATENCIÓN EN ESTE PUNTO!. Si vas a poner un disco conectado a USB (como he hecho yo) necesitarás que la alimentación dé más de 2A o alimentar el disco duro con su propia alimentación. Para ver si lo reconoce:
sudo fdisk -l
Disk /dev/mmcblk0: 14.9 GiB, 16021192704 bytes, 31291392 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes ******************* (a mi me reconoce una tarjeta SD más el espacio eMMC, lo borro para mejor legibilidad) ******************* I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x431a71c9 Device Boot Start End Sectors Size Id Type /dev/sda1 2048 1465145343 1465143296 698.7G 7 HPFS/NTFS/exFAT
Si. Es el de 700 GB, /dev/sda1, en la última linea, pero está formateado desde Windows. Vamos a darle formato, a montarlo para poder usarlo y a crear los directorios necesarios:
sudo mkfs -t ext4 /dev/sda1
mke2fs 1.42.12 (29-Aug-2014) /dev/sda1 contains a exfat file system labelled 'Nuevo vol' Proceed anyway? (y,n) y Creating filesystem with 183142912 4k blocks and 45793280 inodes Filesystem UUID: 588a1ec2-a3ce-494c-a0cb-e7a226613024 Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 102400000 Allocating group tables: done Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done
Seguimos creando los directorios necesarios y montando el disco:
sudo mkdir /disk sudo mount /dev/sda1 /disk sudo mkdir -p /disk/nextcloud/data
otorgamos la propiedad al usuario web y damos permisos
sudo chown www-data:www-data /disk/nextcloud/data sudo chmod 750 /disk/nextcloud/data
Para que reconozca el disco y lo monte en cada reinicio, editamos el siguiente archivo:
sudo nano /etc/fstab
y añadimos:
/dev/sda1 /disk ext4 defaults 0 0
Ahora accedemos al servidor a través de un navegador escribiendo la dirección IP seguido de /netxcloud:
El siguiente paso será configurar nuestra nube. Escribe un nombre de usuario y contraseña, y apúntalas porque luego los necesitarás para conectar desde los demás dispositivos. Expande Almacenamiento y base de datos
y en Directorio de datos
escribe /disk/nextcloud/data. En la sección de la base de datos, escriba el nombre de usuario root la contraseña y elije un nombre para la base de datos.
y pulsa Completar la instalación
. Tomará un buen rato en configurarlo todo.
Ahora descarga la app para cualquier dispositivo y lánzala. Yo lo voy a probar con Android. Escribe la URL del servidor, usuario y contraseña y deberías conectarte.
Ahora ya puedes configurar tus dispositivos para usar esta nube como cualquier otra nube comercial y subir tus archivos o utilizarlo como paso intermedio entre tu PC y tus dispositivos o para pasar música o guardar fotos.
Espero que te haya sido de utilidad, no dudes en escribir un comentario si ves algún error o si puedo ayudarte.
Utiliza este espacio si quieres añadir algún comentario adicional o si tienes alguna duda.
No olvides añadir tu distribución y tu placa.
Todos los comentarios serán validados antes de su publicación.
Fran
Hola a todos!
He conseguido hacer funcionar Nextcloud en una Orange Pi Zero. He tenido que complementarlo con el post "Servidor Web con Orange Pi" porque me surgían errores entorno a algunos módulos de PHP. Ha sido todo un reto hacerla funcionar, pero a la práctica es bastante decepcionante.
Acostumbrados a altas velocidades de subida y bajada con Drive o Dropbox, una nube de estas características y con esta placa es, cuanto menos, deficiente. La velocidad de subida es muy limitada, la velocidad de navegación bastante lenta y se producen errores a nivel interno, añadiendo otro punto bastante problemático que es que la temperatura que alcanza la CPU ronda los 80ºC. No es, a la práctica, un proyecto de gran utilidad.
Sí que es un proyecto bastante interesante para ir aprendiendo y avanzando en este ámbito. Yo, por ejemplo, intentaré hacer funcionar Nextcloud o similar en una Raspberry Pi.
Es todo un privilegio contar con una página web como esta, dedicada a la Orange Pi y completamente en español.
Un saludo.
Administrador OrangePiWeb.es
Hola Fran. Lo primero, decirte que no puedes tener la placa funionando a 80º porque la vas a fundir. Ponle YA un ventilador y un disipador, ambos elementos muy baratos pero que van a salvar tu Orange Pi. Quizás después de eso tengas un poco más de rendimiento.
Por otro lado, lo que se explica en esta guía es como hacer una nube personal, de andar por casa... para salvar archivos en una red local, pero no pretende sustituir a ninguna Cloud profesional... ni muchísimo menos...
No sé qué es lo que has intentado hacer, pero no pretendas que una placa con 512 Megas, en el mejor de los casos, haga milagros. Por otro lado, si lo que has puesto es una Orange Pi en tu casa y accedes desde fuera de tu red local, el cuello de botella quizás lo tengas en la velocidad de bajada de tu conexión.
Si me das más datos de lo quieres hacer, quizás podamos optimizarlo, pero no intentes sustituir un Dropbox o un Drive con este juguete (si, 100% funcional, pero juguete comparado con Clouds profesionales). Saludos.
Aldo
Hola, Estoy montando una Nube con linux Mint utilizando NextCloud, como hacer que mi Nube salga al Internet y que tenga una Dirección IP como la que tu utilizas.
Administrador OrangePiWeb.es
Hola Aldo.
Mira estas guías:
https://orangepiweb.es/puertos.php
https://orangepiweb.es/ipfija.php
Espero que te sirva. Saludos
Maxlinux2000
Hola, una pregunta. Utilizando un orangePi3 de 2GB de Ram y un disco duro usb3, supongo que irá mucho más rápido que en un orangepi zero, que solo tiene usb2 y 512 de ram. Verdad?
Administrador OrangePiWeb.es
Hola Max. Definitivamente. Si. :-) Pero cuidado... esa placa todavía es muy nueva y no tiene distros de Armbian, así que tendrás que pegarte con las oficiales. Saludos.
Jorge
hola a todos !!
acabo de rescatar del polvo mis dos placas orange pi plus y al intentar hacer este proyecto he dado con un muro. lo hago bajo armbian y cuando llego al punto donde instalo mariadb, lo instala paro no me pide ningun dato mas (contraseña). compruebo que se está ejecutando con
# service mysql status
y me dice que está activo. desde ahi paso a instalar php5 y es aqui donde surge el problema.
#package php5 has no installation candidate.
¿que puedo hacer?
Administrador OrangePiWeb.es
Hola Jorge. PHP5 ya está obsoleto, por lo que te recomiedo que instales una versión superior. Esta es una pregunta más de Linux que de Orange Pi, y tampoco me dices que distribución estás usando. Busca en Google, por ejemplo, para Debian Jessie:
https://www.google.com/search?q=debian+jessie+install+php7
Saludos
Copyright © 2025 desde 2016. Todos los derechos reservados | Diseño JaviPSantos