Jump to content

[BUG] Spaces in share names not being fully "exported" under NFS


Auggie

Recommended Posts

I've searched but there was only one post regarding this issue, and it was under a 4.x version with no one responding, so it seems that not many people run into this problem as they either don't use NFS or their share names don't contain spaces.

 

Nonetheless, it's still a bug so I am refreshing this issue under v5:

 

A share name that contains spaces will only be exported as the first "word" under NFS.

 

According to the Linux "man" page:

 

If an export name contains spaces it should be quoted using double quotes. You can also specify spaces or other unusual character in the export name using a backslash followed by the character code as three octal digits.

 

And the BSD "man" page:

 

Space characters occuring in a pathname must be escaped, or alternatively, the pathname can be enclosed in single or double quotes.

 

I came across this issue when trying to determine the available "mounts" via the "showmount" command on my OS X machine.  I got this result:

 

showmount -e unraid

Exports list on unraid:

/mnt/user/Videos                    *

/mnt/user/BluRay                    Everyone

 

I would prefer the BSD method of escaping the space, so I should have gotten this:

 

/mnt/user/Videos                    *

/mnt/user/BluRay%20Discs      Everyone

 

Example above used hex code.

Link to comment
  • 2 months later...

If we are to stay in a non-evolving closed world that is pure *nix based, then perhaps that advice may have value.

 

But this is the 21st century and all "modern" OS's support "human" friendly file naming conventions; both in Windows releases within the past 10 years and certainly all flavors of Mac OS including "Classic" since it's launch in the the early 80's.

 

Thus, I will not change how all client machines and their thousands upon thousands of files and folders that reside on any server are named just to succumb to an archaic convention, so unRAID is no exception.

 

unRAID is, after all, a Network Attached Storage system and must be designed to reliably cater to all possible OS clients and their file system nuances if it is to succeed in attracting and maintaining its target market audience.

Link to comment

Yep, understand that.  However, as a Media Server that has thousands of DVD rips (VIDEO_TS folders) and Blu-Ray rips (BDMV folders) wherein the folder name represents the movie name (e.g. "The Greatest Movie (1984)," this is a HUGE issue wherein I will not waste my time renaming all the video names.

Link to comment
  • 2 weeks later...

Yep, understand that.  However, as a Media Server that has thousands of DVD rips (VIDEO_TS folders) and Blu-Ray rips (BDMV folders) wherein the folder name represents the movie name (e.g. "The Greatest Movie (1984)," this is a HUGE issue wherein I will not waste my time renaming all the video names.

 

Directory/folder names CAN have spaces, it is just the share name itself where this bug presents itself. You don't have to rename all those folders. So it can easily be worked around.

Link to comment
  • 2 weeks later...

May be an irrelevant response but i have never been able to export a directory from my ubuntu headless server where the directory name has spaces.

 

Example:

cat /etc/exportfs

returns

/var/lib/mythtv 192.168.0.0/24(rw,no_root_squash,async,no_subtree_check)

/media/500gb1 192.168.0.0/24(rw,no_root_squash,async,no_subtree_check)

/home/daniel/Test%20Me 192.168.0.0/24(rw,no_root_squash,async,no_subtree_check)

 

Yet when I stop/start portmap and then issue

sudo exportfs -ra

 

I get error: exportfs: Warning: /home/daniel/Test%20Me does not exist

 

oh but it does exist:

ls -la /home/daniel/ | grep Test

drwxrwxrwx  2 daniel daniel  4096 2011-12-06 14:42 Test Me

 

 

So I am not sure how unraid shared out "share names" that don't have spaces YET the directories DO have spaces. I know I can easily create a symlink on my headless server and just put that path in my exportfs file but not sure what impact the symlink has on performance. This is all done on the 2.6.32-36-generic kernel and nfs-kernel-server version 1:1.2.0-4. It's entirely possible that nfs-common and nfs-kernel-server has improved as I am a few releases behind Ubuntu's normal release cycle AND obviously I am not sure what unRAID uses.

 

My 2 cents

 

 

Link to comment

May be an irrelevant response but i have never been able to export a directory from my ubuntu headless server where the directory name has

 

Not sure about Ubuntu but I am able to share my OS X (Lion) folders with spaces via NFS and my PCH can access it to play videos from it.  Since Lion's SMB server only shares via the newer v2.0 SMB spec that the PCH's Linux based OS is not compatible with presently, Lion users must either switch to NFS or manually install the Sambe Suite that Apple removed from Lion.

Link to comment

May be an irrelevant response but i have never been able to export a directory from my ubuntu headless server where the directory name has

 

Not sure about Ubuntu but I am able to share my OS X (Lion) folders with spaces via NFS and my PCH can access it to play videos from it.  Since Lion's SMB server only shares via the newer v2.0 SMB spec that the PCH's Linux based OS is not compatible with presently, Lion users must either switch to NFS or manually install the Sambe Suite that Apple removed from Lion.

ok, could you please post your config file for exporting your NFS shares from Lion? would be icing on the cake as I have never been able to figure it out.  My current exports file on my headless server and obviously there are no shares with spaces cause I can't get it to work  :(

 

/var/lib/mythtv 192.168.0.0/24(rw,no_root_squash,async,no_subtree_check)

/media/500gb1 192.168.0.0/24(rw,no_root_squash,async,no_subtree_check)

 

Link to comment

Here is an example of an entry in my exports file:

 

"/Volumes/Alpha Drive/Alpha Testing/Video Screening" -mapall=root -network 10.0.1 -mask 255.255.255.0

 

As you can see, I have numerous spaces contained within every volume and nested folder name.  Note that I have to enclose the entire path itself within quotes in order to "share" this path on the network.

Link to comment

Here is an example of an entry in my exports file:

 

"/Volumes/Alpha Drive/Alpha Testing/Video Screening" -mapall=root -network 10.0.1 -mask 255.255.255.0

 

As you can see, I have numerous spaces contained within every volume and nested folder name.  Note that I have to enclose the entire path itself within quotes in order to "share" this path on the network.

Cool, by any chance would you know if that works on OSX Darwin 8.8.2? running kernel 8.8.2? it's a seperate unrelated project of xbmc running on hacked apple tv 1. trying to ssh into my apple tv 1 which runs Darwin 8.8.2 and mount some NFS shares but I just am not familiar enough with OSX enough. I looked in the normal linux location for /etc/fstab to add my nfs mount info but that file isn't used by Darwin. Any help would be AWESOME!!!
Link to comment
  • 1 year later...

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...