Compartir un Pendrive en Openwrt (LEDE)

Vamos a instalar lo necesario para que nuestro router reconozca un pendrive y compartir su contenido en la red local.

Paso 1. Instalamos los drivers necesarios para que funcionen los puertos USB

Lo primero que haremos es comprobar que nuestro router tiene los drivers para que reconozca los dispositivos USB.
En mi caso ya están incluidos pero por si acaso los instalaremos. Ya el sistema operativo nos dirá si están instalados o no:

opkg update; opkg install kmod-usb-core kmod-usb-uhci kmod-usb-ohci kmod-usb2
  • kmod-usb-uhci y kmod-usb-ohci: Drivers para usb 1.1
  • kmod-usb2: Drivers para usb 2.0
  • En caso de que nuestro router tenga usb 3.0 instalaremos kmod-usb3.

Paso 2. Instalamos los drivers para que reconozca dispositivos de almacenamiento.

Ahora instalamos un módulo para que el kernel soporte dispositivos de almacenamiento.

 opkg install kmod-usb-storage

Nuestro pendrive normalmente podría estar formateado en vfat o ntfs. Vamos a instalar ambos tipos de soporte de sistemas de archivos.

opkg install kmod-fs-vfat kmod-fs-ntfs

Paso 3. Probando si lo reconoce.

Ahora toca introducir el pendrive y una vez introducido ejecutamos la orden logread.

logread

Al final veremos si ha reconocido el pendrive. En mi caso lo reconoce como dispositivo de almacenamiento en sda1.

... Tue Dec 26 22:30:01 2017 kern.notice kernel: [ 6107.122341] scsi 1:0:0:0: Direct-Access PNY USB 3.0 FD PQ: 0 ANSI: 6 Tue Dec 26 22:30:01 2017 kern.notice kernel: [ 6107.140143] sd 1:0:0:0: [sda] 122617600 512-byte logical blocks: (62.8 GB/58.5 GiB) Tue Dec 26 22:30:01 2017 kern.notice kernel: [ 6107.153125] sd 1:0:0:0: [sda] Write Protect is off Tue Dec 26 22:30:01 2017 kern.debug kernel: [ 6107.158315] sd 1:0:0:0: [sda] Mode Sense: 43 00 00 00 Tue Dec 26 22:30:01 2017 kern.notice kernel: [ 6107.161138] sd 1:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
Tue Dec 26 22:30:01 2017 kern.info kernel: [ 6107.185465] sda: sda1
Tue Dec 26 22:30:01 2017 kern.notice kernel: [ 6107.205985] sd 1:0:0:0: [sda] Attached SCSI removable disk

Paso 4. Montando el Pendrive.

Vamos a crear la carpeta /root/PENDRIVE para que el sistema monte en dicha carpeta el contenido del pendrive.

mkdir /root/PENDRIVE

Mi pendrive está formateado en vfat por lo que para montarlo uso la siguiente orden:

mount -t vfat /dev/sda1 /root/PENDRIVE/ -o rw,sync

Mi pendrive ya contenía algunos archivos. Ahora para comprobar que se montó solo tengo que hacer un ls de ese directorio. En caso de que me muestre los archivos es que todo ha ido bien.

ls /root/PENDRIVE

Para que en el menú de configuración WEB del router (Luci) nos aparezca el elemento de menú System->Mount Points instalamos el paquete nas.

opkg install block-mount nas

Ahora podemos acceder al menú de configuración del router poniendo en nuestro navegador la dirección IP del dispositivo e iremos a System-Mount Points.

Veremos nuestro pendrive montado en /root/PENDRIVE.

También podemos añadir o editar lo existente. Si hacemos clic en Edit veremos nuestro Pendrive. Cada pendrive tiene un ID único. Ahí se ve el mio. Podremos seleccionar por diferentes parámetros. Vamos a pararnos aquí:

Gracias a esto nos montará un pendrive automáticamente:

  • Si elegimos UUID. Nos mostrará el UUID del dispositivo conectado. Es útil cuando sólo queremos usar el mismo pendrive. si metemos otro no lo montará.
  • Si elegimos Label, montará los pendrives automáticamente siempre que tengan el mismo nombre en su etiqueta (A los pendrives se les puede poner un nombre en el ordenador).
  • Si elegimos Device, montará cualquier pendrive siempre que lo reconozca como sda1 o sda2 etc…

En mi caso sólo voy a usar ese pendrive y no quiero usar otros. Es por ello que pongo UUID y selecciono el de mi pendrive. Puede que tú no quieras esa opción porque no te da la libertad de meter cualquier pendrive.

En Advanced Settings podemos poner el sistema de archivos. Se puede asignar como automático.

En caso de que lo tengas configurado todo y no puedas acceder al pendrive prueba a sacar y meter el pendrive otra vez. No te olvides tampoco de darle a Save & Apply.

Paso 5. Compartiendo el pendrive.

Ahora instalamos samba para compartir los ficheros y poder acceder a ellos desde la Lan.

opkg install luci-app-samba

Lo primero que tenemos que hacer es crear un usuario nuevo en el sistema. El mio se va a llamar alumno. Y en caso de acceder con él por ssh me llevará a la carpeta /root/PENDRIVE.

echo "alumno:*:1000:65534:alumno:/root/PENDRIVE:/bin/ash" >> /etc/passwd

Para asignarle un password escribimos lo siguiente:

passwd alumno

Nos pedirá que tecleemos un password dos veces.

A continuación haremos que alumno sea usuario de samba para poder acceder a la carpeta compartida:

smbpasswd -a alumno

Nos volverá a pedir una contraseña pero esta vez es para acceder desde remoto a la carpeta compartida.

Luego vamos a la configuración Web del router y accedemos a Services -> Network Shares y pulsamos add para añadir un directorio compartido:

Al darle a Add en Shared Directories pondremos los valores que necesitemos.

Nótese que al estar trabajando sobre un sistema FAT32, éste no guarda las máscaras de permisos en archivos de lectura escritura y ejecución, por lo que no hace falta ponerlo.

En Name le ponemos lo que queramos. En Path ponemos la ruta absoluta del directorio que queremos compartir y en Allowed Users los usuarios que tienen permiso de acceso.

Pulsamos Save & Apply y listo.

Paso 6. Probándolo todo.

Sólo queda probarlo.

Desde Linux podemos acceder a la carpeta compartida poniendo en el navegador de archivos:

smb://IP_DEL_ROUTER

En Windows lo haremos de manera similar pero poniendo delante \\ :

\\IP_DEL_ROUTER

 

 

 

 

 

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *