Solved Synology NFS shares not working on Android or Windows (does work on Openelec)
#1
Bug 
Hi,

I've been a long time XBMC user, never had an issue before that I couldn't resolve by googling..

Recently I picked up a Synology 414 to hold my media on.

I had samba shares working perfectly on it. Then I read about being able to use the Synology as a central DB for my media.


I created NFS shares, which are working perfectly on my OpenElec Raspberry Pi. This is on version 4.07.

I then went to add these shares to my Windows based XBMC 13.1 machine. When I browse the NFS share, it lists the shares, but when I try to click 'into' them, it doesn't do anything as if I don't have permission..? Also tested it on my Android phone, this has the same problem.

--

After a quick dig around, it seems that OpenElec may be using a newer version of the libnfs. Could this be the cause of my problem?

My Synology is fully up to date and I followed these steps when setting up the NFS. http://wiki.xbmc.org/?title=NFS#Synology

Thanks for any input
bledd
Reply
#2
Get a debug log (wiki) of you trying to add a share on your win box. That should show your issue.
Learning Linux the hard way !!
Reply
#3
Thanks, I'll do it now with a vanilla XBMC 13.1 install


http://xbmclogs.com/show.php?id=258951

Line 531 ish..
Reply
#4
Windows isn´t able to do NFS ootb. For Windows you will need SMB.

I only can access my SMB shares on my NAS via my android phone. Not NFS.

I chose the protocolls each for every system I use. For Windows and Android (but not really in need of Android) I take SMB and for linux I take NFS.
Reply
#5
Nothing to do with Windows. XBMC contains the correct NFS libraries already. That error is a permissions error.

Quote:NFS3ERR_ACCES = 13 The caller does not have the correct authorization to perform the desired operation.

You need to check the permissions for the exported NFS share. Probably need something like rw,all_squash,insecure,no_subtree_check
Learning Linux the hard way !!
Reply
#6
Thanks for your help.

I'll look into that now, my linux commandline knowledge is next to zero. I can work in Windows command prompt..

It's odd that my OpenElec install can see it with no problems

Code:
NAS> cat /etc/exports

/volume3/Episodes       *(ro,async,no_wdelay,insecure,no_root_squash,insecure_locks,sec=sys,anonuid=1025,anongid=100)
/volume2/Movies *(ro,async,no_wdelay,insecure,no_root_squash,insecure_locks,sec=sys,anonuid=1025,anongid=100)
/volume4/Animations     *(ro,async,no_wdelay,insecure,no_root_squash,insecure_lo
NAS>

Does OpenElec use a different version of the libnfs ?

Here it mentions that it's been updated in OpenElec..

https://github.com/OpenELEC/OpenELEC.tv/...es/network
Reply
#7
Hmmmm

Code:
/media/sde1/Movies    192.168.1.1/24(rw,all_squash,insecure,no_subtree_check)
/media/sdd1/Movies    192.168.1.1/24(rw,all_squash,insecure,no_subtree_check)
/media/sde1/TV-Shows    192.168.1.1/24(rw,all_squash,insecure,no_subtree_check)

Part of my exports file - windows, linux and android can all see and access those shares.
Learning Linux the hard way !!
Reply
#8
What serves your NFS share?

Not sure where the issue lies.. with XBMC or Synology. I'll play around later. I only want my machines to have read only access to my media.

edit, changed my Animations share to match yours..

*(ro,all_squash,insecure,no_subtree_checK)

Then reloaded the shares, still not working for me..
Reply
#9
My linux server. The issue is with the permissions set on your NAS. Read only is fine, although you won't get the benefit of extra-fanart etc unless you give one client read/write access to create the necessary file structure.

If you don't share your sources.xml between clients, then only the client that you initially set the shares up on can actually edit anything, even if the shares are read/write.

A read only share would be /media/sde1/Movies 192.168.1.1/24(ro,all_squash,insecure,no_subtree_check)

Test it. You can always change it back. You aren't the first though to have this issue, and I know those permissions will work Wink
Learning Linux the hard way !!
Reply
#10
I've tried that, see above.

Why would it work from openelec and not xbmc? Differing libnfs versions is my first guess..

Once again, thanks for your time Smile
Reply
#11
(2014-08-02, 15:33)black_eagle Wrote: Nothing to do with Windows. XBMC contains the correct NFS libraries already. That error is a permissions error.

Quote:NFS3ERR_ACCES = 13 The caller does not have the correct authorization to perform the desired operation.

You need to check the permissions for the exported NFS share. Probably need something like rw,all_squash,insecure,no_subtree_check

Correct...forgot that...Angel

But don´t you think SMB would be a better choice for windows? And maybe that solves the problem with android, too.

@bledd:

If I start my NAS this evening I will post my NFS configs, too. But they are very related to that ones of black_eagle.
Reply
#12
To have a centralised DB, they all need to use the same path.

It's something that should work, I'd like to get to the bottom of it Smile
Reply
#13
(2014-08-02, 20:10)David1977 Wrote: But don´t you think SMB would be a better choice for windows? And maybe that solves the problem with android, too.

No. SMB is a pants protocol, as you very well know already !! Also, Android is not that far removed from Linux and in any case, XBMC on whatever platform already contains libraries for SMB & NFS so it shouldn't be an issue what platform you are running on.

What is an issue however, is the permissions for the NFS share. If they don't meet the credentials supplied by XBMC, then, as in this case, a connection is refused.
Learning Linux the hard way !!
Reply
#14
Still no joy with this.


How can I find out what version of libnfs XBMC uses?

Or should I be pestering Synology about this? Smile
Reply
#15
This has nothing to do with libnfs - its just the server setup which is wrong here. You should read the nfs wiki link in my signature and try to understand how NFS handles authentication.

My guess - XBMC on the pi runs as user root (uid 0) - you have no_root_squash set on your exports which means accesses are done through uid 0. On android XBMC is running under some higher uid for sure and those will get mapped to uid 1025 (anonuid) in your case. Problem is - uid1025 has no filesystem rights on your share.

Solution (not sure how to do it with your NAS, but in general).

1. change no_root_suqash to all_squash - means all accesses are mapped to uid 1025 (yeah if you do this you won't have access from your pi anymore without step 2)
2. chown all files and folder in the export to the uid 1025
3. Never blame libnfs ... i see everything in that regard and will reveal bad configs ... Wink
AppleTV4/iPhone/iPod/iPad: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for Kodi: NFS (wiki)
HowTo configure avahi (zeroconf): Avahi_Zeroconf (wiki)
READ THE IOS FAQ!: iOS FAQ (wiki)
Reply

Logout Mark Read Team Forum Stats Members Help
Synology NFS shares not working on Android or Windows (does work on Openelec)0