Después de las entradas anteriores, ya podríamos instalar Nextcloud en la Raspberry, pero tendríamos un problema. Si una limitación tiene la Raspberry es que no tiene disco duro y las tarjetas SD tienen una capacidad bastante escasa, si lo que pretendemos es usar este pequeño ordenador como nube. La solución está en conectar un disco duro y configurarlo para que nos haga el servicio que queremos.
En este caso vamos a seguir las instrucciones de manuti, creador del blog en español de referencia sobre las Raspberry, Raspberry para torpes.
Si todavía no hemos conectado ningún disco duro a la Raspberry, es el momento de hacerlo, a ser posible con un concentrador que evite problemas de alimentación.
Un posible problema que podemos tener es que desconectemos el disco duro y, al volverlo a conectar, no se reconozca de la misma manera. Si estuviéramos en Windows, cuando insertamos un pincho USB se le da una letra (G;, H; etc.) y si lo sacamos y volvemos a meter cabe la posibilidad de que la letra cambie, y eso puede ser un problema para nuestra nube. Para ello, vamos a asegurarnos de que esto no pasa.
Cuando hemos conectado el disco duro a la Rasbperry, podemos comprobar si se ha reconocido bien, escribiendo ls -laF /dev/disk/by-uuid/
Reconozco que no sé a qué se refieren exactamente las dos primeras líneas pero, afortunadamente, no hace falta saberlo. Las importantes son el resto. Las que tienen al final la expresión ../../mmcblkXX
se refieren a la tarjeta SD, mientras que la otra es la que nos interesa realmente.
En Linux, la base de Raspbian, los discos duros no reciben una letra como en Windows, sino una expresión que tiene tres letras y puede tener un número. En mi caso, el disco duro es sda1. La “s” significa disco duro moderno, los antiguos llevarían una “h”; la “d” del medio es de disco, la letra es algo parecida a la de Windows, pero siempre en minúscula (podría haber sda, sdb, sdc, etc.); y el número se referirá a las particiones que pueda tener el disco duro.
Manuti recomienda formatear el disco duro en formato ext4. Tiene la ventaja de trabajar mejor y más rápido, y el inconveniente de que, si lo hacemos, Windows no reconocerá el disco duro. Puesto que el principal problema de la Raspberry Pi 2 es la velocidad de transferencia de archivos por la red, problema creado porque el diseño que tiene (todas las versiones, de la 1 a la 3, no sé si la 4 también pero también la Zero) presenta un cuello de botella, me parece que no es muy necesario hacerlo, sobre todo si no manejamos normalmente Linux. Si estás interesado en hacerlo, puedes seguir las (muy claras) instrucciones de manuti.
También podemos comprobar la presencia del disco duro con la orden sudo blkid
, que nos dará un resultado diferente pero con la información que necesitamos.
Vemos que el UUID del disco duro es el mismo en los dos casos. Bien, pues vamos a crear una carpeta donde “se monte” el disco duro siempre. O sea, vamos a decirle a la Raspberry que siempre le dé el mismo nombre, como si en Windows le diéramos la misma letra siempre. Para ello creamos un directorio. Puede ser el que queramos, pero es recomendable usar /media/lo-que-sea. Además, para evitarnos problemas de permisos y que siempre podamos abrir cualquier archivo del disco duro, lo dejamos libre, sin protección
Por ejemplo, puesto que uso un disco duro prestado de mi novia que está etiquetado como “Vir”, hago lo siguiente:
sudo mkdir /media/Vir
sudo chmod 777 /media/Vir
Ahora, el siguiente paso es delicado. Alguna vez me he cargado la Raspberry, dejándola sin posibilidad de arrancar bien. Afortunadamente, manuti no solo nos recomienda hacer una copia de seguridad sino que nos explica cómo hacerla. Hacemos una copia de seguridad del archivo que guarda la configuración de los discos:, que se llama /etc/fstab:
ls /etc
(comprobamos que el archivo existe)
sudo cp /etc/fstab /etc/fstab.old
(lo copiamos con otro nombre en el mismo sitio)
ls /etc
(comprobamos que lo hemos hecho bien)
Ahora vamos a editar el archivo “fstab” con un programa llamado “nano”: sudo nano /etc/fstab
.
Nano es un editor de textos muy sencillo, es el equivalente al Bloc de notas. Ojo que, aunque tengamos ratón porque estamos accediendo por SSH, hay que tener en cuenta que no podemos manejar nano con el ratón; solo podemos hacerlo con el teclado.
Ahora tenemos dos opciones. La primera es algo más sencilla. En el fichero fstab, debemos añadir una línea como la siguiente
/dev/hdaX /media/Vir ntfs-3g defaults,locale=es_ES.UTF8 0 0
Pero esto tiene un problema: si desconectamos este disco duro y conectamos otro, Rasbpian no tendría forma de saber que es otro diferente. Casi seguro, las carpetas y archivos serían diferentes y esto nos puede dar muchos problemas con Nextcoud. Por eso, es más seguro, como recomienda manuti, identificar el disco duro por su “DNI”, el UUID. La línea del archivo fstab sería esta:
UUID=el-largo-código-de-números-y-letras /media/Vir ntfs-3g defaults,locale=es_ES.UTF8 0 0
Y si hemos optado por hacerlo con el formato de Linux, sería esta otra:
UUID=el-largo-código-de-números-y-letras /media/Vir ext4 defaults 0 0
La explicación es esta:
/dev/hdaX (también puede ser /dev/sdaX)UUID=lo-que-sea | El nombre del disco duro |
/media/Vir | La carpeta que hemos creado |
ntfs-3g | El sistema de archivos del disco duro (si pusiéramos solo ntfs, sería de solo escritura y no nos serviría para Nextcloud, y si no nos hace falta compatibilidad con Windows, será ext4) |
defaults,locale=es_ES.UTF8 | la configuración: normal (defaults) y en español de España (es_ES). Esta parte no hace falta en ext4. |
0 | opción para copias de seguridad que la Raspberry no tiene por defecto, así que lo dejamos en 0 |
0 | opción para que fsck (algo parecido a scandisk pero en Linux) escanee esta unidad. Alargaría mucho el tiempo de arranque, así que le decimos que no con el 0 |
Reiniciamos la Raspberry con sudo reboot
y comprobamos si lo hemos hecho bien yendo al directorio donde debería estar el disco duro: cd /media/Vir
,y comprobando el contenido del disco duro con ls
.
Comentarios recientes