conectar-raspberri-pi-disco-duro-usb-mount-umount

Como conectar y montar discos duros usb a la Raspberry Pi

Si eres poseedor de una raspberry pi, quizás te hayas percatado de que para conectar un disco duro o unidad usb no basta con conectar el usb y ya está. Vamos a aprender como conectar unidades usb a nuestra raspberry pi.

Desgraciadamente por defecto la Raspberry pi solo es capaz de leer discos duros o memorias flash, esto significa que podremos montarla y leer los datos pero no podremos modificarlos. Por suerte existen formas de hacer que se pueda escribir en el disco duro de nuestra raspberry pi y así poder utilizarlo para lo que quieras, desde backups (como explicaremos en otro artículo) hasta crear un NAS y servidores de películas.

Configurar la Raspberry Pi para que lea sistemas de archivos NTFS

Por defecto nuestra malina (nombre cariñoso de la fruta en otro idioma, a ver si adivinas cual), no lee sistemas de archivos NTFS, pero no desesperes, ya que esto tiene solución. Por el momento lo primero que haremos será conectarnos por ssh a la RPi o desde su misma consola y actualizar el apt-get con los siguientes comandos:

sudo apt-get update
sudo apt-get upgrade

Ahora que ya la tenemos actualizada vamos a seguir con el proceso de instalación del ntfs

sudo apt-get install ntfs-3g

Por el momento nada mas terminar la instalación ya debería ser capaz de lidiar con este tipo de sistemas de archivos. En caso de que los discos o unidades que vayas a conectar no utilizen este sistema de archivos puedes omitir esta parte.

Averiguar ruta de montaje de nuestro disco duro en la Raspberry Pi

Ahora tenemos que buscar cual será la ruta en la que estará el disco duro que hayamos conectado, tranquilo es bastante fácil. Ejecutaremos el siguiente comando:

sudo fdisk -l

y deberíamos ver una lista similar a la siguiente:

Disk /dev/mmcblk0: 7969 MB, 7969177600 bytes
4 heads, 16 sectors/track, 243200 cylinders, total 15564800 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00065bd9

        Device Boot      Start         End      Blocks   Id  System
/dev/mmcblk0p1            8192     2496093     1243951    e  W95 FAT16 (LBA)
/dev/mmcblk0p2         2498560    15499263     6500352   85  Linux extended
/dev/mmcblk0p3        15499264    15564799       32768   83  Linux
/dev/mmcblk0p5         2506752     2629631       61440    c  W95 FAT32 (LBA)
/dev/mmcblk0p6         2637824    15499263     6430720   83  Linux

Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders, total 976773168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x90ec2574

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1            2048   976769023   488383488    7  HPFS/NTFS/exFAT

Por supuesto dependerá de los datos y configuraciones de tu raspberry, pero nos vamos a fijar en la última línea que serán los discos externos conectados: /dev/sda1 2048 976769023 488383488 7 HPFS/NTFS /exFAT. Si tienes más de uno te aparecerán aquí todos.

Léete también  Como automatizar backups con rsync y tu raspberry pi por ssh (y en local)

Una vez que sabemos este dato nos vamos a fijar en la ruta, que en este caso sería /dev/sda1 y seguiremos teniendo en cuenta este dato.

Montar disco duro externo en Raspberry pi de forma permanente

Ahora vamos a montar nuestro disco duro, pero para ello tendremos que crear una ubicación física en nuestro sistema. Este paso es relativamente fácil así que lo que haremos será elegir donde queremos que se monte. Yo lo voy a poner en /var/hdd, pero tú podrías ponerlo donde quieras, por ejemplo /media/hd o /discoduro. Para ello crearemos la carpeta con el siguiente comando:

sudo mkdir -p /var/hdd

Ahora tenemos dos opciones, una es que vayamos a dejar el disco conectado y queramos que se monte cada vez que ejecutamos la malina. Para ello tendremos que editar el fstab:

nano /etc/fstab

y añadiremos una línea con nuestro disco duro, en este caso la que empieza por /dev/sda1:

proc            /proc           proc    defaults          0       0
/dev/mmcblk0p5  /boot           vfat    defaults          0       2
/dev/mmcblk0p6  /               ext4    defaults,noatime  0       1
/dev/sda1       /var/hdd        ntfs-3g defaults          0       0

# a swapfile is not a swap partition, so no using swapon|off from here on, use  dphys-swapfile swap[on|off]  for that

La parte de /var/hdd será la carpeta que has creado, y la de ntfs-3g será el sistema de archivos de tu disco duro, si es fat32 tienes que poner vfat. Para añadir más discos simplemente añadimos más líneas.

Si en lugar de utilizar las particiones como /dev/sda1 quieres que se monte siempre que esté conectado puedes mirar cómo montar unidades en linux por uuid. De esta forma siempre que conectes ese disco o memoria se volverá a montar en el mismo punto que hayas indicado.

Léete también  Como recuperar archivos eliminados de DropBox

Tras modificarlo puedes recargar el fstab y hacer que directamente se monten las unidades con el comando:

umount -a

Tras todo esto y viendo que se hayan montado correctamente solo te queda reiniciarla para ver que se haya montado el disco duro en inicio.

sudo reboot

Una vez reiniciado podemos acceder a nuestra carpeta y crear una carpeta para ver que nos deja escribir

cd /var/hdd
sudo mkdir carpeta
ls /var/hdd

Veremos que nos ha dejado la carpeta creada. Si queremos realizar una comprobación más a fondo podemos desmontar el disco y conectarlo a nuestro ordenador para ver que realmente se haya creado.

sudo umount /dev/sda1

Montar de forma puntual y volver a desmontar disco duro en Raspberry pi

Si en lugar de dejar el disco duro montado de forma permanente en cada reinicio, lo único que queremos hacer es montarlo para leer o escribir algunas cosas y luego volverlo a desmontar (lo veremos en el artículo backups con consumo eléctrico optimizado) lo que vamos a hacer va a ser lo siguiente:

para montarla ejecutaremos este comando (siempre sabiendo la ruta de montaje tal y como hemos averiguado arriba)

sudo mount /dev/sda1 /var/hdd/

en este momento podremos escribir en el disco en la ruta /var/hdd y hacer las gestiones que necesitemos. Después para desmontarlo ejecutaremos esta línea

sudo umount /var/hdd/

con esto el disco quedaría extraído y podríamos desconectarlo sin problema

Forzar umount del disco cuando device is busy in Raspberry pi

Si nos indica el siguiente mensaje al hacer umount (o algo parecido):

umount: /var/hdd: device is busy.
        (In some cases useful info about processes that use
         the device is found by lsof(8) or fuser(1))

significa que el disco duro está realizando alguna acción, podemos esperar a que termine el programa que sea o podemos forzar el desmontaje con este comando:

sudo umount -l /dev/sda1

Con todos estos datos estamos listos para conectar discos duros y unidades flash a nuestra malina, además de que hemos aprendido la base para luego poder utilizarla para crear un centro de backups o por ejemplo un NAS.


AYUDANOS a poder seguir dando respuestas. Te podemos echar una mano y tú también a nosotros, símplemente dale a me gusta.