Hola.
Estoy siguiendo el tema, pero también me atasco.
Hasta ahora, siguiendo el siguiente tutorial de @Tocinillo, he conseguido acceder desde mi Nvidia Shield TV Pro de 2019 a mi NAS Synology DS418 y disfrutar del contenido alojado en el NAS, a través de Emby Server en el NAS y del cliente en la Shield TV y en mi Samsung TV sin problemas. Y también usando Kodi desde la Shield TV.
Uno de los principales problemas a la hora de reproducir en red es qué protocolo es mejor, ¿SMB o NFS? la mayoría de las comparativas suelen darle siempre ventaja al NFS, es un protocolo más estable, rápido, eficiente, etc., el problema es que hay que configurarlo correctamente para que los...
www.avpasion.com
El atasco viene en el mismo sitio, al intentar montar las carpetas compartidas del NAS (192.168.1.3) en mi Raspberry Pi 4b (192.168.1.30).
Para empezar, haré notar algunas particularidades por si le sirve a alguien.
En primer lugar, la línea que me trae de cabeza (y supongo que a la mayoría también) es la siguiente:
//192.168.1.80/Servidor /home/pi/NAS cifs domain=WORKGROUP,guest,uid=998,gid=993,iocharset=utf8,nounix,file_mode=0777,dir_mode=0777,vers=1.0 0 0
En esta línea de ejemplo, "
Servidor" no es en sí una carpeta compartida, sino un
recurso compartido (que puede corresponderse a una carpeta compartida en el NAS con el mismo nombre, por supuesto). Se podría ver el nombre de los recursos compartidos en nuestro NAS, si se ejecuta el siguiente comando en el NAS (yo lo he hecho como
root, en mi NAS, llamado
NAS2020):
root@NAS2020:~# cat /etc/samba/smb.share.conf
Así, por ejemplo, si queremos ver los nombres de los recursos compartidos a los que les pusimos la palabra
Pelis, usaremos:
root@NAS2020:~# cat /etc/samba/smb.share.conf | grep Pelis
[Pelis 4K 1]
path=/volume1/Pelis 4K 1
comment="Pelis 4K en Vol. 1"
[Pelis 4K 2]
path=/volume2/Pelis 4K 2
comment="Pelis 4K en Vol.2"
[Pelis HD 1]
path=/volume1/Pelis HD 1
comment="Pelis HD en Vol. 1"
[Pelis HD 2]
path=/volume2/Pelis HD 2
comment="Pelis HD en Vol. 2"
Haz clic para expandir...
Así, el nombre del
recurso compartido es aquello que va entre corchetes: "[
Pelis 4K 1]", por ejemplo. Hasta que me di cuenta de ello, ponía en el archivo /etc/fstab de la Pi, algo como esto, es decir, ponía la ruta completa hacia la carpeta compartida:
//192.168.1.3/volume1/Pelis 4K 1 /home/pi/NAS/Pelis 4K 1 cifs domain=WORKGROUP,guest,uid=998,gid=993,iocharset=utf8,nounix,file_mode=0777,dir_mode=0777,vers=1.0 0 0
Lo que generaba errores en el montaje (BAD_NETWORK_NAME). Cuando caí en la cuenta, lo modifiqué tal que así:
//192.168.1.3/Pelis 4K 1 /home/pi/NAS/Pelis 4K 1 cifs domain=WORKGROUP,guest,uid=998,gid=993,iocharset=utf8,nounix,file_mode=0777,dir_mode=0777,vers=1.0 0 0
Y aparecía otro error, error de parse (o algo así). Ahí empezaba otra locura, a buscar información tocaba.
Parece ser que no se pueden poner nombres con espacios, es decir, poner "
Pelis 4K 1" en este archivo, usando el espaciador del teclado, es un error, digamos de sintaxis. Hay que poner, en lugar del espacio, un símbolo de escape,
\, seguidos del numero octal de 3 dígitos:
040 , es decir: "
\040". De manera, que la línea correcta sería esta:
//192.168.1.3/Pelis\0404K\0401 /home/pi/NAS/Pelis\0404K\0401 cifs domain=WORKGROUP,guest,uid=998,gid=993,iocharset=utf8,nounix,file_mode=0777,dir_mode=0777,vers=1.0 0 0
Aún así, la cosa no funciona. Salta un error en /var/log/kern.log que indica que el uso de la versión 1.0 del dialecto no es seguro, así que lo cambio a la 3.0:
//192.168.1.3/Pelis\0404K\0401 /home/pi/NAS/Pelis\0404K\0401 cifs domain=WORKGROUP,guest,uid=998,gid=993,iocharset=utf8,nounix,file_mode=0777,dir_mode=0777,vers=3.0 0 0
Vamos bien, ese error ya no aparece, pero sigo sin poder montar el recurso compartido.
pi@raspberrypi:~ $ sudo mount -a -v
/proc : already mounted
/boot : already mounted
/ : ignored
mount.cifs kernel mount options: ip=192.168.1.3,unc=\\192.168.1.3\Pelis 4K 1,iocharset=utf8,nounix,file_mode=0777,dir_mode=0777,vers=3.0,uid=998,gid=993,user=,domain=WORKGROUP,pass=********
mount error(13): Permission denied
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
No sé si eso que pone la línea tendrá algo que ver:
user= y
pass=********. Aunque la opción
guest hace que no pida contraseña, quizás sea necesaria, como el usuario... Pero esto está para que lo monte cualquiera, no?
Por lo que parece, las carpetas de la Pi sólo pueden ser montadas por el usuario
root.
No sé a qué usuario ni grupo se refieren con:
Ni en mi NAS ni en mi Pi existen, así que no sé si eso será el problema o parte de él o no impide que se monten los recursos. Alguien me podría decir a quien pertenecen?
He encontrado en mi raspberry lo siguiente:
pi@raspberrypi:~ $ id emby
uid=999(emby) gid=995(emby) grupos=995(emby),44(video),107(render)
pi@raspberrypi:~ $
Son los uid y gid más parecidos que he encontrado en la Pi a los que pone el tutorial, quizás se refiera a eso, pero lo desconozco.
Por otro lado, Emby Server, en la Pi, cuando indicas la ruta a la carpeta que vas a usar la biblioteca, dice lo siguiente:
Para Linux en Arch Linux, CentOS, Debian, Fedora, OpenSuse o Ubuntu, debe otorgar al usuario del sistema Emby al menos acceso de lectura a sus ubicaciones de almacenamiento.
Quizás esto se podría conseguir cambiando los uid y gid del tutorial por estos otros, para asegurar el acceso a Emby server a esos contenidos, pero es una especulación, claro:
//192.168.1.3/Pelis\0404K\0401 /home/pi/NAS/Pelis\0404K\0401 cifs domain=WORKGROUP,guest,uid=999,gid=995,iocharset=utf8,nounix,file_mode=0777,dir_mode=0777,vers=3.0 0 0
He decidido crear un archivo de credenciales -al que no hay que añadir líneas con comentarios ni lineas en blanco-,
/etc/credecifs, como usuario
root, indicando el usuario y el password de mi administrador de mi NAS, para comprobar si éste es el problema para acceder por CIFS al contenido de mi NAS desde la Raspberry Pi:
pi@raspberrypi:~ $ ls -l /etc/credecifs
-rw-r--r-- 1 root root 104 may 23 13:12 /etc/credecifs
pi@raspberrypi:~ $ cat /etc/credecifs
username=nombre_del_administrador_del_NAS
password=contraseña_del_administrador_del_NAS
pi@raspberrypi:~ $
Una vez hecho esto, he introducido una opción más en el fichero
/etc/fstab, haciendo referencia a la ruta de este archivo de credenciales,
/etc/credecifs, y cambiando, definitivamente, los
uid y
gid mostrados en el tutorial, por los de servidor
Emby, que hemos visto antes con el comando
id emby:
//192.168.1.3/Pelis\0404K\0401 /home/pi/NAS/Pelis\0404K\0401 cifs credentials=/etc/credecifs,domain=WORKGROUP,guest,uid=999,gid=995,iocharset=utf8,nounix,file_mode=0777,dir_mode=0777,vers=3.0 0 0
Habría que hacer lo mismo para el resto de recursos compartidos.
Si tenemos varios directorios para crear en la Pi, para enlazar los recursos compartidos del NAS, podemos hacerlo en una única línea, por ejemplo así:
mkdir -p -v /home/pi/NAS/{"Pelis 4K 1","Pelis 4K 2","Pelis HD 1","Pelis HD 2","Series 4K 1","Series 4K 2","Series HD 1","Series HD 2","Docus 4K 1","Docus 4K 2","Docus HD 1","Docus HD 2",usbshare,privado}
pi@raspberrypi:~ $ ls -lH /home/pi/NAS
total 4
drwxrwxrwx 2 emby emby 0 may 15 22:25 'Docus 4K 1'
drwxrwxrwx 2 emby emby 0 sep 5 2020 'Docus 4K 2'
drwxrwxrwx 2 emby emby 0 abr 23 19:40 'Docus HD 1'
drwxrwxrwx 2 emby emby 0 sep 5 2020 'Docus HD 2'
drwxrwxrwx 2 emby emby 0 may 15 22:26 'Pelis 4K 1'
drwxrwxrwx 2 emby emby 0 may 16 13:32 'Pelis 4K 2'
drwxrwxrwx 2 emby emby 0 sep 5 2020 'Pelis HD 1'
drwxrwxrwx 2 emby emby 0 ago 20 2020 'Pelis HD 2'
drwxr-xr-x 2 pi pi 4096 may 23 16:29 privado
drwxrwxrwx 2 emby emby 0 may 15 22:27 'Series 4K 1'
drwxrwxrwx 2 emby emby 0 ago 20 2020 'Series 4K 2'
drwxrwxrwx 2 emby emby 0 sep 5 2020 'Series HD 1'
drwxrwxrwx 2 emby emby 0 ago 20 2020 'Series HD 2'
drwxrwxrwx 2 emby emby 0 abr 14 19:13 usbshare
pi@raspberrypi:~ $
Observar aquí que la carpeta /home/pi/NAS/privado,
no está montando ningún recurso compartido del NAS, de momento, por eso, su propietario, su grupo y sus permisos corresponde al usuario
pi, que fue quien la creó.
Parece ser que hay un problema con el tiempo que tarda en montarse los recursos compartidos en la red (descritos en /etc/fstab) y el tiempo que tarda la propia Raspberry Pi en acceder a la red. Es más rápido el primero que el segundo, de manera que, a veces, se intentan montar los recursos compartidos de red, antes de que la propia máquina haya levantado la conexión, de manera que nuestra Raspberry no arranca porqué no puede completar las indicaciones de /etc/fstab, entrando en "Emergency Mode" y a nosotros nos entra el pánico. En ese caso, recomiendo la lectura del siguiente artículo, que me salvó de perder los nervios definitivamente.... (supongo que estará permitido el enlace):
Spoiler: Emergency Mode Due to Bad fstab
https://www.clarkle.com/notes/emergecy-mode-bad-fstab/
Algunos sugieren que para solucionar este posible problema, vayamos a la utilidad
raspi-config y seleccionemos, en la pestaña "
Sistema", "
Esperar red", en el apartado "
Red al inicial", otros sugieren una línea en el
cron...
Con estos pasos, el problema se ha solucionado:
pi@raspberrypi:~ $ sudo mount -a -v
/proc : already mounted
/boot : already mounted
/ : ignored
mount.cifs kernel mount options: ip=192.168.1.3,unc=\\192.168.1.3\Pelis 4K 1,iocharset=utf8,nounix,file_mode=0777,dir_mode=0777,vers=3.0,uid=999,gid=995,user=pepitogrillo,domain=WORKGROUP,pass=********
/home/pi/NAS/Pelis 4K 1 : successfully mounted
mount.cifs kernel mount options: ip=192.168.1.3,unc=\\192.168.1.3\Pelis 4K 2,iocharset=utf8,nounix,file_mode=0777,dir_mode=0777,vers=3.0,uid=999,gid=995,user=pepitogrillo,domain=WORKGROUP,pass=********
/home/pi/NAS/Pelis 4K 2 : successfully mounted
mount.cifs kernel mount options: ip=192.168.1.3,unc=\\192.168.1.3\Series 4K 1,iocharset=utf8,nounix,file_mode=0777,dir_mode=0777,vers=3.0,uid=999,gid=995,user=pepitogrillo,domain=WORKGROUP,pass=********
/home/pi/NAS/Series 4K 1 : successfully mounted
mount.cifs kernel mount options: ip=192.168.1.3,unc=\\192.168.1.3\Series 4K 2,iocharset=utf8,nounix,file_mode=0777,dir_mode=0777,vers=3.0,uid=999,gid=995,user=pepitogrillo,domain=WORKGROUP,pass=********
/home/pi/NAS/Series 4K 2 : successfully mounted
mount.cifs kernel mount options: ip=192.168.1.3,unc=\\192.168.1.3\Docus 4K 1,iocharset=utf8,nounix,file_mode=0777,dir_mode=0777,vers=3.0,uid=999,gid=995,user=pepitogrillo,domain=WORKGROUP,pass=********
/home/pi/NAS/Docus 4K 1 : successfully mounted
mount.cifs kernel mount options: ip=192.168.1.3,unc=\\192.168.1.3\Docus 4K 2,iocharset=utf8,nounix,file_mode=0777,dir_mode=0777,vers=3.0,uid=999,gid=995,user=pepitogrillo,domain=WORKGROUP,pass=********
/home/pi/NAS/Docus 4K 2 : successfully mounted
mount.cifs kernel mount options: ip=192.168.1.3,unc=\\192.168.1.3\Pelis HD 1,iocharset=utf8,nounix,file_mode=0777,dir_mode=0777,vers=3.0,uid=999,gid=995,user=pepitogrillo,domain=WORKGROUP,pass=********
/home/pi/NAS/Pelis HD 1 : successfully mounted
mount.cifs kernel mount options: ip=192.168.1.3,unc=\\192.168.1.3\Pelis HD 2,iocharset=utf8,nounix,file_mode=0777,dir_mode=0777,vers=3.0,uid=999,gid=995,user=pepitogrillo,domain=WORKGROUP,pass=********
/home/pi/NAS/Pelis HD 2 : successfully mounted
mount.cifs kernel mount options: ip=192.168.1.3,unc=\\192.168.1.3\Series HD 1,iocharset=utf8,nounix,file_mode=0777,dir_mode=0777,vers=3.0,uid=999,gid=995,user=pepitogrillo,domain=WORKGROUP,pass=********
/home/pi/NAS/Series HD 1 : successfully mounted
mount.cifs kernel mount options: ip=192.168.1.3,unc=\\192.168.1.3\Series HD 2,iocharset=utf8,nounix,file_mode=0777,dir_mode=0777,vers=3.0,uid=999,gid=995,user=pepitogrillo,domain=WORKGROUP,pass=********
/home/pi/NAS/Series HD 2 : successfully mounted
mount.cifs kernel mount options: ip=192.168.1.3,unc=\\192.168.1.3\Docus HD 1,iocharset=utf8,nounix,file_mode=0777,dir_mode=0777,vers=3.0,uid=999,gid=995,user=pepitogrillo,domain=WORKGROUP,pass=********
/home/pi/NAS/Docus HD 1 : successfully mounted
mount.cifs kernel mount options: ip=192.168.1.3,unc=\\192.168.1.3\Docus HD 2,iocharset=utf8,nounix,file_mode=0777,dir_mode=0777,vers=3.0,uid=999,gid=995,user=pepitogrillo,domain=WORKGROUP,pass=********
/home/pi/NAS/Docus HD 2 : successfully mounted
mount.cifs kernel mount options: ip=192.168.1.3,unc=\\192.168.1.3\usbshare1,iocharset=utf8,nounix,file_mode=0777,dir_mode=0777,vers=3.0,uid=999,gid=995,user=pepitogrillo,domain=WORKGROUP,pass=********
/home/pi/NAS/usbshare : successfully mounted
pi@raspberrypi:~ $
Espero que les sirva.