Cómo convertir una Raspberry Pi en un dispositivo de almacenamiento en red de baja potencia

Mezcle una Raspberry Pi y una pizca de discos duros externos baratos y tendrá la receta para un dispositivo de almacenamiento en red de ultra bajo consumo y siempre encendido.

Mezcle una Raspberry Pi y una pizca de discos duros externos baratos y tendrá la receta para un dispositivo de almacenamiento en red de ultra bajo consumo y siempre encendido. Siga leyendo mientras le mostramos cómo configurar su propio NAS basado en Pi.

¿Por qué quiero hacer esto?

El beneficio de tener un dispositivo de almacenamiento de red siempre encendido es que es extremadamente conveniente tener sus datos (o destino de respaldo) siempre accesibles para las computadoras tanto dentro como fuera de su red. La desventaja, en la mayoría de los casos, es que estás consumiendo una buena cantidad de energía para tu comodidad.

Nuestro servidor de oficina, por ejemplo, funciona 24/7 y consume casi $ 200 de energía al año. Un dispositivo de almacenamiento de red basado en Raspberry Pi, por otro lado, consume alrededor de $ 5 de energía por año.

Seremos los primeros en garantizarle que un servidor completo tendrá más espacio de almacenamiento y la capacidad de hacer más trabajo (como transcodificar una colección de video de varios terabytes en un lapso de tiempo razonable). Sin embargo, para la mayoría de las personas, el propósito principal de tener una computadora siempre encendida en algún lugar de la casa es servir como un servidor de archivos y un repositorio de respaldo de archivos. Para tales tareas, la Raspberry Pi es más que lo suficientemente poderosa y le ahorrará una gran cantidad de cambios en el uso de energía.

¿Qué necesito?

Este tutorial se basa en nuestro tutorial anterior: La Guía HTG para comenzar a usar Raspberry Pi y asumiremos que ya lo ha completado; en otras palabras, ya tiene su Raspberry Pi, lo encendió y lo conectó a un mouse y teclado y has instalado Raspbian en él.

Además del equipo que necesitará del tutorial de Introducción a Raspberry Pi, solo tendrá el siguiente hardware:

  • Un disco duro externo USB (como mínimo) para copias de seguridad de red simples y servicio de archivos

o

  • Dos (como mínimo) discos duros externos USB para redundancia de datos local

¡Eso es! Si solo desea un disco simple conectado a la red, solo necesitará un disco duro. Recomendamos encarecidamente utilizar al menos dos discos duros para permitir la redundancia de datos local (en Raspberry Pi). Para los fines de este tutorial, estamos utilizando un par de discos duros externos portátiles Seagate Backup Plus de 1 TB. Son súper pequeños, no requieren una fuente de alimentación externa y estaban a la venta cuando estábamos comprando piezas.

Puede usar cualquier disco duro externo que tenga a mano, pero es ideal para usar pequeños discos de baja potencia, si es posible, ya que todo el tema del proyecto es configurar un NAS pequeño y de baja potencia que simplemente puede apartar del camino y olvidarse de

Antes de continuar, hay un par de opciones de diseño que tomamos en términos de cómo estamos configurando nuestro NAS Raspberry Pi que debe tener en cuenta. Si bien la mayoría de los usuarios querrán seguir exactamente como lo hemos hecho, es posible que desee ajustar pasos específicos para satisfacer mejor sus necesidades y la forma en que usa las computadoras en su red.

Primero, estamos utilizando discos duros con formato NTFS. Si el Raspberry Pi NAS falla por alguna razón o , queremos copiar rápidamente la información a través de una conexión USB 3.0 en lugar de a través de la red, tener discos formateados con NTFS hace que sea muy sencillo tomar las unidades USB portátiles que utilizamos. Lo estamos utilizando en la compilación NAS y conéctelos directamente a una de las muchas máquinas con Windows que usamos todos los días.

En segundo lugar, estamos utilizando Samba para nuestros recursos compartidos de red, nuevamente debido a la conveniencia de combinar el Raspberry Pi NAS con nuestra red predominantemente de Windows.

Preparación y montaje de los discos duros externos

Una vez que haya reunido el hardware, seguido del tutorial de Introducción a Raspberry Pi para ponerse al día (y ejecutar Raspian), es hora de comenzar a configurar su Pi como NAS.

El primer orden del día es conectar los discos duros a la Raspberry Pi (o al concentrador USB conectado dependiendo de su configuración y si los discos duros son autoalimentados o alimentados externamente). Una vez que se conectan los discos duros y se enciende el Pi, es hora de comenzar a trabajar.

Nota: estamos utilizando dos discos duros. Si ha decidido usar solo un disco duro, simplemente ignore todos los comandos en esta sección destinados a montar/modificar o interactuar con el segundo disco duro.

Vamos a hacer todo nuestro trabajo dentro de la terminal. Como tal, puede trabajar directamente en su Raspberry Pi usando LXTerminal en Raspian o puede usar SSH en su Raspberry Pi usando una herramienta como Putty. De cualquier modo está bien.

Una vez que esté en la línea de comandos, lo primero que debe hacer es agregar compatibilidad con Rasbian para discos con formato NTFS.Para hacerlo, escriba el siguiente comando:

sudo apt-get install ntfs-3g

Los paquetes tardarán uno o dos minutos en descargarse, descomprimirse e instalarse. Una vez que se instala el paquete NTFS, es hora de buscar las particiones desmontadas de los discos duros externos conectados.

sudo fdisk -l

Como mínimo, debería ver dos discos, si ha agregado un disco secundario para la duplicación de datos (como lo hemos hecho nosotros) debería ver tres así:

El primer disco /dev/mmcb1k0 es la tarjeta SD dentro de la Raspberry Pi que alberga nuestra instalación de Raspbian. Vamos a dejar eso completamente solo.

El segundo disco, /dev/sda es nuestro primer disco duro externo de 1TB. El tercer disco, /dev/sdb es nuestro segundo disco duro externo de 1TB. Las particiones reales que nos interesan en estos dos discos son /sda1/ y /sdb1/, respectivamente. Tome nota de los nombres del disco duro.

Antes de que podamos montar las unidades, necesitamos crear un directorio para montar las unidades. En aras de la simplicidad, simplemente haremos un directorio llamado USBHDD1 y USBHDD2 para cada unidad. Primero tenemos que hacer los discos. En la línea de comando ingrese los siguientes comandos:

sudo mkdir/media/USBHDD1

sudo mkdir/media/USBHDD2

Después de crear los dos directorios, es hora de montar las unidades externas en cada ubicación. Nuevamente en la línea de comando ingrese los siguientes comandos:

sudo mount -t auto/dev/sda1/media/USBHDD1

sudo mount -t auto/dev/sdb1/media/USBHDD2

En este punto, tenemos los dos discos duros externos montados en los directorios USBHDD1 y USBHDD2, respectivamente. Es hora de agregar un directorio específico a ambas unidades para mantener nuestras carpetas compartidas (en aras de mantener las cosas ordenadas y compartimentar nuestro trabajo en las unidades). Ingrese los siguientes comandos:

sudo mkdir/media/USBHDD1/shares

sudo mkdir/media/USBHDD2/shares

Ahora es el momento de instalar Samba para que podamos acceder al almacenamiento desde cualquier otro lugar de la red. En la línea de comando ingrese:

sudo apt-get install samba samba-common-bin

Cuando se le solicite continuar, escriba Y e ingrese. Siéntese y relájese mientras todo se desempaqueta e instala. Una vez que el paquete Samba termina de instalarse, es hora de hacer una pequeña configuración. Antes de hacer cualquier otra cosa, hagamos una copia de seguridad del archivo de configuración de Samba en caso de que necesitemos volver a él. En la línea de comando, escriba la siguiente línea de comando:

sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.old

Esto simplemente crea una copia de seguridad del archivo de configuración con el nombre de archivo smb.conf.old y lo deja en el mismo directorio que el archivo de configuración original.

Una vez que hayamos creado la copia de seguridad, es hora de hacer una edición básica en el archivo de configuración de Samba. Escriba lo siguiente en la línea de comando:

sudo nano /etc/samba/smb.conf

Esto abrirá el editor de nano texto y nos permitirá hacer algunos cambios simples. Si es la primera vez que usa nano, le recomendamos que consulte la Guía para principiantes de Nano, el editor de texto de línea de comandos de Linux. Debería ver algo como lo siguiente en la ventana de su terminal:

Nano está completamente controlado por el teclado, use las teclas de flecha para mover el cursor a la ubicación que desea editar. Al hacer clic en los ajustes de configuración, verá algunos que vale la pena anotar o cambiar.

El primero es el identificador de grupo de trabajo, por defecto grupo de trabajo = GRUPO DE TRABAJO. Si está usando un nombre diferente para su grupo de trabajo en el hogar, avance y desplace la flecha para cambiarlo ahora; de lo contrario, déjelo como predeterminado.

Nuestra siguiente parada es activar la autenticación de usuario para nuestro almacenamiento de samba, de lo contrario, cualquier persona con acceso general a nuestra red (como los usuarios invitados de Wi-Fi) podrá entrar directamente. Desplácese hacia abajo en el archivo de configuración de Samba hasta llegar a la sección que lee:

Elimine el símbolo # de la línea security = user (resaltándolo con el cursor y presionando eliminar) para habilitar la verificación de nombre de usuario/contraseña para los recursos compartidos de Samba.

A continuación, agregaremos una sección completamente nueva al archivo de configuración. Desplácese hasta el final del archivo e ingrese el siguiente texto:

[Copia de seguridad]
comentario = Carpeta de respaldo
ruta =/media/USBHDD1/shares
usuarios válidos = @usuarios
grupo de fuerza = usuarios
crear máscara = 0660
máscara de directorio = 0771
solo lectura = no

Nota : lo que ponga entre corchetes en la línea superior será el nombre de la carpeta tal como aparece en el recurso compartido de red. Si desea otro nombre que no sea «Copia de seguridad», ahora es el momento de editarlo.

Presione CTRL + X para salir, presione Y cuando se le pregunte si desea mantener los cambios y sobrescribir el archivo de configuración existente. Cuando regrese al símbolo del sistema, ingrese el siguiente comando para reiniciar los demonios Samba:

sudo /etc/init.d/samba restart

En este punto, necesitamos agregar un usuario que pueda acceder a los recursos compartidos de samba de Pi. Vamos a crear una cuenta con las copias de seguridad del nombre de usuario y las copias de seguridad de la contraseña. Puede hacer su nombre de usuario y contraseña lo que desee. Para hacerlo, escriba los siguientes comandos:

sudo useradd backups -m -G usuarios

copias de seguridad de sudo passwd

Se le pedirá que ingrese la contraseña dos veces para confirmar. Después de confirmar la contraseña, es hora de agregar «copias de seguridad» como usuario legítimo de Samba. Ingrese el siguiente comando:

sudo smbpasswd -a copias de seguridad

Ingrese la contraseña para la cuenta de respaldo cuando se le solicite. Una vez que haya creado la cuenta de usuario y la contraseña, no necesita reiniciar el demonio Samba nuevamente, ya que ya le hemos indicado que esté atento a los usuarios autenticados. Ahora podemos saltar a cualquier máquina con capacidad Samba en nuestra red y probar la conectividad al recurso compartido de red.

Desde una máquina de Windows cercana, abrimos el explorador de archivos de Windows, hicimos clic en Red, confirmamos que el nombre de host RASPBERRYPI estaba en el grupo de trabajo GRUPOS DE TRABAJO e hicimos clic en la carpeta compartida Copias de seguridad:

Cuando se le solicite, ingrese las credenciales que creó en el paso anterior (si sigue línea por línea, el inicio de sesión son copias de seguridad y la contraseña es copias de seguridad4ever).

Una vez que se acepten sus credenciales, se le dirigirá a una carpeta vacía ya que todavía no hay nada en el recurso compartido. Para verificar que todo funcione sin problemas, creemos un archivo simple desde la computadora con la que probamos la conexión (en nuestro caso, el escritorio de Windows 7). Crea un archivo txt así:

Ahora, desde la línea de comandos que hemos estado trabajando todo este tiempo, verifiquemos si el archivo que creamos en el escritorio de Windows aparece correctamente dentro del directorio compartido que creamos. En la línea de comando, escriba el siguiente comando:

cd/media/USBHDD1/shares

ls

hello-is-it-me-you-you-looking-for-t.txt está en el directorio; ¡Nuestro simple experimento de directorio compartido es un éxito!

Antes de dejar esta sección del tutorial, solo tenemos una cosa más que hacer. Necesitamos configurar nuestro Pi para que cuando se reinicie, monte automáticamente los discos duros externos. Para hacerlo, necesitamos iniciar el nano editor y hacer una edición rápida. En la línea de comando escriba:

sudo nano/etc/fstab

Esto abrirá la tabla de sistemas de archivos en nano para que podamos agregar algunas entradas rápidas. Dentro del editor nano agregue las siguientes líneas:

/dev/sda1/media/USBHDD1 auto noatime 0 0

/dev/sda2/media/USBHDD2 auto noatime 0 0

Presione CTRL + X para salir, presione Y para guardar y sobrescriba el archivo existente.

Si solo está usando un solo disco duro para compartir redes simples sin redundancia, ¡eso es todo! Ya ha terminado con el proceso de configuración y puede comenzar a disfrutar de su NAS de ultra bajo consumo.

Configuración de su NAS Raspberry Pi para redundancia de datos simple

Hasta ahora, nuestro Raspberry Pi NAS está conectado a la red, la transferencia de archivos funciona, pero falta una cosa evidente. Ese disco duro secundario está configurado pero completamente inactivo.

En esta sección del tutorial, utilizaremos dos herramientas de Linux simples pero potentes, rsync y cron, para configurar nuestro Raspberry Pi NAS para realizar un reflejo de datos nocturno desde la carpeta/shares/en la unidad principal a/shares/carpeta en la unidad secundaria. Esta no será una duplicación de datos similar a RAID en tiempo real, pero una copia de seguridad de datos diaria (o semi-diaria) en la unidad secundaria es una excelente manera de agregar otra capa de seguridad de datos.

Primero, necesitamos agregar rsync a nuestra instalación Rasbian. Si es la primera vez que usa rsync y desea obtener una mejor visión general del comando, le recomendamos que consulte Cómo usar rsync para hacer una copia de seguridad de sus datos en Linux.

En la línea de comando ingrese el siguiente comando:

sudo apt-get install rsync

Una vez que se instala rsync, es hora de configurar un trabajo cron para automatizar el proceso de copiar archivos del USBHDD1 a USBHDD2. En la línea de comando ingrese el siguiente comando:

crontab -e

El comando abrirá su tabla de programación cron en el editor de nano texto que debería serle bastante familiar en este punto del tutorial.Continúe y desplácese hasta la parte inferior del documento e ingrese la siguiente línea:

0 5 * * * rsync -av --delete/media/USBHDD1/shares/media/USBHDD2/shares/

Este comando especifica que todos los días a las 5:00 a.m. (la parte 0 5), todos los días (* * *, comodines en el año, mes, días), queremos que rsync compare los dos directorios, copiando todo de HDD1 a HDD2 y eliminar cualquier cosa en el directorio de respaldo que ya no coincida con algo en el directorio primario, es decir Si tenemos un archivo de película en HDD1 que eliminamos, también queremos que ese archivo se elimine de la copia de seguridad en la próxima sincronización.

La parte importante sobre la configuración de este comando es que seleccione una hora que no interfiera con ninguna otra actividad de red en las carpetas compartidas que haya programado. Por ejemplo, si está utilizando su Raspberry Pi NAS como un destino de respaldo para algún tipo de software automatizado que copia sus archivos al NAS a las 5 AM todas las mañanas, entonces necesita ajustar el tiempo de respaldo en su software de respaldo o necesita para ajustar el tiempo para el trabajo cron en el Pi, pero no puede hacer que tanto la copia de seguridad remota descargue datos en el recurso compartido de red como el Raspberry Pi que intente sincronizar esos datos entre unidades locales al mismo tiempo.

Una vez que haya ingresado la entrada crontab, haga clic en CTRL + X para salir y guardar el archivo. Si desea ejecutar el rsync inmediatamente para obtener los datos reflejados más rápido y hacer que el trabajo cron inicial sea un poco más ligero en el sistema, continúe e ingrese el mismo comando rsync que puso en el crontab en la línea de comando de la siguiente manera:

rsync -av --delete/media/USBHDD1/shares/media/USBHDD2/shares/

¡Eso es! Todo lo que necesita hacer en este momento es registrarse en su Raspberry Pi en el siguiente día o dos para asegurarse de que el trabajo programado se desencadene como se esperaba y los datos de /USBHDD1/shares/ que aparece en /USBHDD2/shares/.

De aquí en adelante, todo lo que coloque en su NAS con Raspberry Pi se reflejará diariamente en ambos discos duros.

Antes de dejar el tema por completo, aquí hay algunos artículos adicionales de How-To Geek que puede consultar para agregar más fuerza a su nuevo NAS con Raspberry Pi:

  • Cómo hacer una copia de seguridad de su cuenta de Gmail utilizando su PC Ubuntu: aunque las instrucciones son para Ubuntu, puede modificarlas fácilmente para que Rasbian convierta su Pi NAS en una máquina automática de copia de seguridad de correo electrónico.
  • ¿Qué archivos debe respaldar en su PC con Windows? Si no está seguro de qué archivos debe respaldar en su NAS, este es un buen lugar para comenzar.
  • Cómo hacer una copia de seguridad remota de sus datos de forma gratuita con CrashPlan: CrashPlan es una aplicación de copia de seguridad gratuita disponible para máquinas Windows, Mac y Linux que facilita la programación de copias de seguridad periódicas en un NAS.

¿Tienes un proyecto de Raspberry Pi que te encantaría vernos emprender? Grande o pequeño, nos encanta jugar con el Pi: escucha los comentarios con tus ideas.

Rate article
labsfabs.com
Add a comment