Sin acceso a través de samba

Sección Unicamente para Tutoriales y Guías
dzeta
Pi Alpha
Pi Alpha
Mensajes: 26
Registrado: 16 May 2020, 01:34
Agradecido: 0
Agradecimiento recibido: 0

Buenas, soy muy novato en este mundo de Raspberry, el caso es que tengo la Pi 4 , y he seguido un tutorial para instalar y configurar Samba para acceder a mi carpeta de rclone a través de Kodi que tengo en la Shield, el caso es que parece que lo hago bién por que tanto windows como Kodi entran en la raspberry, pero cuando llegó hasta la carpeta de mnt qie es donde tengo mis películas me deniega el acceso tanto en windows como en Kodi a través de la Shield, he buscado por la red alguna solución al problema pero no he dado con ello, haber si algún alma caritativa me puede echar una mano.

Un saludo y gracias de antemano
Avatar de Usuario
egrueda
Pi God
Pi God
Mensajes: 3426
Registrado: 10 Feb 2017, 19:31
Agradecido: 7 veces
Agradecimiento recibido: 269 veces

Necesitamos dos cosas:
1. ver la configuración de samba (puedes usar pastebin)
2. ver los permisos de la carpeta compartida (ls -la /tu/carpeta)
dzeta
Pi Alpha
Pi Alpha
Mensajes: 26
Registrado: 16 May 2020, 01:34
Agradecido: 0
Agradecimiento recibido: 0

Buenas, como he comentado soy muy novato, no se que es pastebin, pero el archivo de configuración lo tengo de siguiente manera:
Seguí un tutorial de youtube en el que borraba todo lo que venia en la configuración principal de samba y escribí lo siguiente:

[global]
netbios name = Pi
server string = The Pi file center
workgroup = WORKGROUP

[HOMEPI]
path = /home/pi/
comment = No comment
browsable = yes
writeable = yes
only guest = no
create mask = 0777
directory mask = 0777
public = no

He decir que puedo acceder a todo el contenido excepto la carpeta llamada Netflix que es un disco duro virtual montado con rclone y googledrive, la dirección es la siguiente /home/pi/mnt/netflix , cuando pincho en Netflix para entrar me salta el mensaje de que no tengo permiso para acceder..
En cuanto a los permisos de la carpeta compartida no se exactamente a que te refieres, lo hice todo a través de tutoriales y con Emby y Plex en mi televisión no he tenido problema alguno. Desde ya mil gracias por que me estoy volviendo loco.
dzeta
Pi Alpha
Pi Alpha
Mensajes: 26
Registrado: 16 May 2020, 01:34
Agradecido: 0
Agradecimiento recibido: 0

Vale, los permisos de la carpeta son drwxr-xr-x 2 pi pi
dzeta
Pi Alpha
Pi Alpha
Mensajes: 26
Registrado: 16 May 2020, 01:34
Agradecido: 0
Agradecimiento recibido: 0

Y los permisos de la carpeta mnt son drwxr-xr-x 3 pi pi
Avatar de Usuario
egrueda
Pi God
Pi God
Mensajes: 3426
Registrado: 10 Feb 2017, 19:31
Agradecido: 7 veces
Agradecimiento recibido: 269 veces

dzeta escribió: 16 May 2020, 10:54Buenas, como he comentado soy muy novato, no se que es pastebin
Que seas muy novato no quiere decir que no puedas aprender. Es más, eso es exactamente lo que tienes que hacer si no conoces algo: https://lmgtfy.com/?q=que+es+pastebin
dzeta escribió: 16 May 2020, 10:54Seguí un tutorial de youtube en el que borraba todo lo que venia en la configuración principal de samba
Eso es lo que tiene hacer las cosas a ciegas, que no sabes si lo que estás haciendo es correcto.
No, no es necesario borrar toda la configuración existente.
Mi consejo es que no borres nada si no sabes lo que haces.

Con la configuración "de serie" en samba puedes compartir tu directorio HOME sin hacer prácticamente nada.
Los directorios home tienen un tratamiento especial y no es recomendable crear comparticiones dentro de un home, el cual podría a su vez estar compartido.

Dentro del directorio home del usuario pi sólo debería tener permiso de acceso el usuario pi, esa es la gracia del home.
Si quieres compartir algo de forma pública tendrías que:
1. asignar permisos para todos dentro de tu carpeta home
2. compartir una carpeta que no esté dentro de tu carpeta home

Sin duda la opción 1 no es recomendable en absoluto. Deberías tener una carpeta independiente, fuera de tu home, que puedas compartir.
dzeta escribió: 16 May 2020, 10:54He decir que puedo acceder a todo el contenido excepto la carpeta llamada Netflix que es un disco duro virtual montado con rclone y googledrive, la dirección es la siguiente /home/pi/mnt/netflix , cuando pincho en Netflix para entrar me salta el mensaje de que no tengo permiso para acceder.
Sin duda se trata de un problema de permisos, una incoherencia entre quién puede leer el directorio desde linux y quién puede leer el directorio desde samba. Samba te está dando acceso a una carpeta sobre la que no tiene permisos.
dzeta escribió: 16 May 2020, 10:54En cuanto a los permisos de la carpeta compartida no se exactamente a que te refieres, lo hice todo a través de tutoriales y con Emby y Plex en mi televisión no he tenido problema alguno.
Es más o menos lo que te decía antes de hacer las cosas a ciegas, sin entender lo que estás haciendo.
Y lo peor es que los tutoriales que estás siguiendo no son en absoluto la forma correcta de hacerlo, por eso nos encontramos con problemas como éste.

Mi recomendación:

1. mueve tu carpeta compartida FUERA de tu directorio home
Por ejemplo, puedes crear una nueva carpeta /mnt/media y asignarle los permisos que quieras (para simplificar) sin sacrificar la seguridad de tu directorio home

2. Restaura la configuración de samba (hiciste una copia antes de borar, ¿no?)
Y en la configuración predeterminada, añade un nuevo compartido (por ejemplo, "media") que apunte a tu nueva carpeta (en mi ejemplo, "/mnt/media")

3. Aprende sobre la marcha.
No dudes en mirar el manual de samba para saber qué significa cada uno de esos parámetros que estás usando.
Así podrás saber qué estás haciendo y detectar posibles problemas:
https://www.samba.org/samba/docs/curren ... onf.5.html
dzeta
Pi Alpha
Pi Alpha
Mensajes: 26
Registrado: 16 May 2020, 01:34
Agradecido: 0
Agradecimiento recibido: 0

Si, la verdad que fallo mío, pero las prisas son lo que tienen, de todas formas no hice una copia del archivo configuración de samba, he tratado de desinstalarlo de nuevo con purge con unistall y con todo lo que he ido leyendo y volverlo a instalar pero nada, me sigue apareciendo la configuración que yo le hice, en cuanto a todo lo que me has comentado, te lo agradezco pero no he entendido exactamente que es lo que tengo que hacer jaja :guiño2 , tendré que ir probando con prueba ensayo y error por que no me queda otra.
dzeta
Pi Alpha
Pi Alpha
Mensajes: 26
Registrado: 16 May 2020, 01:34
Agradecido: 0
Agradecimiento recibido: 0

No puedo mover esta carpeta a otro directorio que no sea donde esta, no me da la opción, tiene que haber una manera de darle permisos a samba para poder acceder a esa carpeta, porque no entiendo que pueda acceder a todas las carpetas y archivos y a esta no. No quiero compartirlo de manera publica es solo de manera local, dentro de mi red.
Avatar de Usuario
egrueda
Pi God
Pi God
Mensajes: 3426
Registrado: 10 Feb 2017, 19:31
Agradecido: 7 veces
Agradecimiento recibido: 269 veces

dzeta escribió: 16 May 2020, 11:38he tratado de desinstalarlo de nuevo con purge con unistall y con todo lo que he ido leyendo y volverlo a instalar pero nada, me sigue apareciendo la configuración que yo le hice
Entonces desinstala, purga y borra el fichero que tú has modificado.
Así cuando vuelvas a instalar te instalará el original.
dzeta escribió: 16 May 2020, 11:50No puedo mover esta carpeta a otro directorio que no sea donde esta, no me da la opción
¿Quién no te da la opción? xD
dzeta escribió: 16 May 2020, 11:50tiene que haber una manera de darle permisos a samba para poder acceder a esa carpeta, porque no entiendo que pueda acceder a todas las carpetas y archivos y a esta no.
Si, claro, puedes cambiarle los permisos, o rebajar los permisos de tu carpeta home, pero insisto que esno no es lo recomendable, no tiene sentido compartir una carpeta dentro de home (cuando Samba ya comparte automáticamente la carpeta home).
Con prisas se hacen las cosas mal o de cualquier manera. Tómate tu tiempo en hacerlo bien para evitar problemas precisamente como éste.
dzeta escribió: 16 May 2020, 11:50 No quiero compartirlo de manera publica es solo de manera local, dentro de mi red.
Cuando hablo de compartir de forma pública no me refiero a internet, sino a que accedan otros usuarios, como los otros ordenadores dentro de tu red.
dzeta
Pi Alpha
Pi Alpha
Mensajes: 26
Registrado: 16 May 2020, 01:34
Agradecido: 0
Agradecimiento recibido: 0

Vale, he conseguido hacer todo lo que me comentas, incluso darle permiso y sacándola de Home, ahora cuando accedo a la raspberry desde windows me aparecen las dos opciones, Homepi y Netflix aparte, sigo con el mismo problema, en homePi puedo navegar y entrar donde quiera, en Netflix cuando pincho para entrar me salta el mensaje no tiene permiso para obtener acceso. He llegado hasta donde podía, si alguien tiene alguna idea de lo que puede estar pasando antes de que salte por la terraza se lo agradecería. ¿Puede ser que cuando cree la carpeta con el Rclone hiciera algo que bloqueara el acceso por Samba o algo así??
Avatar de Usuario
egrueda
Pi God
Pi God
Mensajes: 3426
Registrado: 10 Feb 2017, 19:31
Agradecido: 7 veces
Agradecimiento recibido: 269 veces

¿Dónde has creado la carpeta de netflix?
Ejecuta:
ls -la /ruta/a/la/carpeta/netflix
dzeta
Pi Alpha
Pi Alpha
Mensajes: 26
Registrado: 16 May 2020, 01:34
Agradecido: 0
Agradecimiento recibido: 0

No me lo puedo creer, siguen en HomePi...no me puedes explicar que comando tengo que poner para sacar esa carpeta de ahi creando una nueva ruta??
Avatar de Usuario
egrueda
Pi God
Pi God
Mensajes: 3426
Registrado: 10 Feb 2017, 19:31
Agradecido: 7 veces
Agradecimiento recibido: 269 veces

¿Te refieres al comando "mv"?
O a "sudo mv", claro
dzeta
Pi Alpha
Pi Alpha
Mensajes: 26
Registrado: 16 May 2020, 01:34
Agradecido: 0
Agradecimiento recibido: 0

Me refiero a poder elegir una ruta nueva fuera de Home para la carpeta Netflix, siento la plasta, estoy aprendiendo, llevo una semana con esto, he logrado algunas cosillas pero con esto no doy en el clavo, y no puedo ver mis malditas películas en Kodi si no lo logro jajaja. Me explico, antes me comentabas que creara una carpeta nueva fuera de Home (ejemplo media) eso ya lo hice, pero como me llevo a esa carpeta mi carpeta Netflix que esta dentro de mnt (recuerda que esto me lo creo Rclone, es una carpeta de googleDrive en la nube)
Avatar de Usuario
egrueda
Pi God
Pi God
Mensajes: 3426
Registrado: 10 Feb 2017, 19:31
Agradecido: 7 veces
Agradecimiento recibido: 269 veces

Creo que es más un problema de entender lo que tenemos y lo que queremos.
Y ahora yo hablo desde la completa ignorancia, porque aún no sé ni lo que tienes ni cómo lo tienes:

Tenemos una carpeta llamada "Netflix" que inicalmente estaba en el directorio "/home/pi/mnt/netflix"
¿Esa carpeta la creas tú o la crea algún otro programa de forma automática?

Si queremos mover la carpeta a otro lado, usamos el comando "mv" (o con permisos de root, "sudo mv")
En mi ejemplo, voy a crear una nueva carpea para todas estas cosas multimedia:

Código: Seleccionar todo

sudo mkdir /mnt/media
Ahora creo la carpeta de Netflix:

Código: Seleccionar todo

sudo mkdir /mnt/media/netflix
Y muevo todo lo que teníamos en la carpeta anterior:

Código: Seleccionar todo

sudo mv /home/pi/mnt/netflix/* /mnt/media/netflix/
Ahora estoy muy loco y le doy permisos completos de forma recursiva:

Código: Seleccionar todo

sudo chmod -R 777 /mnt/media
Con esto tengo una carpeta "/mnt/media" dentro de la cual tengo una carpeta "netflix" pero en un futuro podré tener más.
Y tanto la carpeta /mnt/media como /mnt/media/netflix tienen permisos de todo para todos. Esto último no es muy elegante, pero es una solución rápida

Ahora ya me puedo ir a Samba y crear un recurso compartido para la carpeta /mnt/media
De esta forma tendré acceso a todas las subcarpetas dentro de /mnt/media, sin tener que crear más recursos compartidos.
Algo como esto:

Código: Seleccionar todo

[media]
path = /mnt/media
comment = Multimedia
guest ok = yes
read only = No
create mask = 0777
directory mask = 0777
Con esto reinicio samba y funcionando ;-)
dzeta
Pi Alpha
Pi Alpha
Mensajes: 26
Registrado: 16 May 2020, 01:34
Agradecido: 0
Agradecimiento recibido: 0

Lo que te quería comentar desde el principio pero yo me expreso fatal, es que esa carpeta llamada Netflix la cree con Rclone y GoogleDrive, es una carpeta en la nube pero montada como disco duro virtual, entonces tengo todas mis películas y series en la nube con GoogleDrive montadas en un disco duro virtual dentro de Raspbian que se inicia automáticamente al iniciar Raspbian, pero esa carpeta apareció automáticamente en Home/pi/mnt. Por eso creo que no me deja mover nada de ahí, además son 10 tb. Tienes que estar flipando en colores conmigo jajaja
Avatar de Usuario
egrueda
Pi God
Pi God
Mensajes: 3426
Registrado: 10 Feb 2017, 19:31
Agradecido: 7 veces
Agradecimiento recibido: 269 veces

Entiendo que has instalado rclone (y fuse) y habrás tenido que autorizar a rclone para acceder a la cuenta de gdrive.
Después le habrás dicho a rclone que arranque automáticamente. Ahí es donde le indicas la carpeta que va a usar como punto de montaje.
La pregunta eso: ¿cómo se arranca rclone automáticamene? ¿Cómo se monta esa carpeta /home/pi/mnt?
Si encontramos el archivo que inicia rclone, le podremos decir que cambie de carpeta
dzeta
Pi Alpha
Pi Alpha
Mensajes: 26
Registrado: 16 May 2020, 01:34
Agradecido: 0
Agradecimiento recibido: 0

Eso es, he instalado Rclone y Fuse hace una semana y funciona perfectamente, cuando inicio Raspberry se inicia automáticamente este disco duro virtual y puedo acceder desde mi televisión con Emby y PLEX, la carpeta al no cambiar yo el directorio se creo en HomePi y la llame Netflix para tenerla bien identificada, básicamente seguí exactamente un tutorial de raspberryparanovatos a excepción de las famosas APYS de google que no me hizo falta. La pregunta clave aquí es, puedo acceder desde Samba a esta carpeta sin tener que moverla de lugar? por que me da que no puedo moverla sin meterme en un jaleo que ahora mismo no se si Sabre salir de el.
Asi se inicia Rclone :

mkdir -p ~/.config/systemd/user
nano ~/.config/systemd/user/rclone@.service


[Unit]
Description=rclone: Remote FUSE filesystem for cloud storage config %i
Documentation=man:rclone(1)

[Service]
Type=notify
ExecStartPre=/bin/mkdir -p %h/mnt/%i
ExecStart= \
/usr/bin/rclone mount \
--config="%h/.config/rclone/rclone.conf" \
--allow-other \
--drive-acknowledge-abuse=true \
--fast-list \
--vfs-cache-mode writes \
--vfs-cache-max-size 100M \
--umask 0777 \
%i: %h/mnt/%i
ExecStop=/bin/fusermount -u -z %h/mnt/%i
ExecStop=/bin/rmdir %h/mnt/%i
Restart=on-failure
[Install]
WantedBy=default.target
dzeta
Pi Alpha
Pi Alpha
Mensajes: 26
Registrado: 16 May 2020, 01:34
Agradecido: 0
Agradecimiento recibido: 0

Buenas, nada, llevo todo el día y no consigo acceder a esa carpeta, no puedo cambiar los permisos desde la propia carpeta porque directamente no me sale la opción, así es como me aparece en la terminal los permisos.

pi@raspberrypi:~ $ ls -lh /home/pi/mnt
total 0
d--------- 1 pi pi 0 may 16 14:38 Netflix
pi@raspberrypi:~ $ ls -lh /home/pi/mnt/Netflix
total 0
d--------- 1 pi pi 0 abr 26 12:48 Documentales
d--------- 1 pi pi 0 abr 6 16:08 Música
d--------- 1 pi pi 0 mar 17 17:41 'Películas 1080p'
d--------- 1 pi pi 0 abr 16 20:45 'Películas 4K'
d--------- 1 pi pi 0 abr 8 14:49 'Películas Animadas'
d--------- 1 pi pi 0 abr 16 10:14 'Series TV'
pi@raspberrypi:~ $
Avatar de Usuario
egrueda
Pi God
Pi God
Mensajes: 3426
Registrado: 10 Feb 2017, 19:31
Agradecido: 7 veces
Agradecimiento recibido: 269 veces

Veamos los permisos de esa carpeta:

Código: Seleccionar todo

pi@raspberrypi:~ $ ls -lh /home/pi/mnt
total 0
d--------- 1 pi pi 0 may 16 14:38 Netflix
Vale, veo que es un directorio ("d")
Pero no hay permisos ni del propietario ("--"), ni del grupo ("--") ni del resto ("--")

Por tanto, aunque la carpeta sea visible por samba, no tiene permisos de acceso.
Creo que el problema está en el script de rclone ( ~/.config/systemd/user/rclone@.service)
Y podría ser por culpa del parámetro umask
Responder