On Fri, Jan 23, 2015 at 10:23:15PM +0100, Markus Doits wrote:> > On 23.01.15 22:16, Ralph B?hme wrote: > > On Fri, Jan 23, 2015 at 01:08:31PM -0800, Jeremy Allison wrote: > >> On Fri, Jan 23, 2015 at 10:05:44PM +0100, Markus Doits wrote: > >>> On 23.01.15 19:57, Miguel Medalha wrote: > >>>> I am using Samba 4.1.16 with smb2/3 and symbolic links are working alright. > >>>> > >>>> Following the smb.conf man page, I use: > >>>> > >>>> unix extensions = no > >>>> wide links = yes > >>>> > >>>> > >>> Unfortunately this still does not work for me - can you really make a > >>> symbolic link ("ln -s ...") when you are connected with smb2/3? Does > >>> "smbstatus" really show smb2/3 connection? > >> No you can't - the protocol doesn't support it. > Oh - that makes me really sad :-( > > iirc it does, with an IO_REPARSE_TAG_SYMLINK ioctl. We just don't > > implement it (yet). :) > So in essence this means: Stay at NT1 if you need symlinks? (And wait > until "IO_REPARSE_TAG_SYMLINK" is implemented?) > > Just that you know: I'm trying to have home shares on the network, and > sometimes users need symlinks (in some osx .apps or when installing some > ruby gems). I'm using samba because it should also work with OSX.Well there's a workaround called "Minshall/French" symlink format: https://lists.samba.org/archive/samba-technical/2014-September/102476.html that hides the symlink target inside a 'special' file. That should still work over SMB2, but it's tunnelling stuff inside the protocol, not really protocol support. It's what the Linux CIFS client uses when it has to do symlinks against a Windows server which doesnt' support the UNIX extensions.
On 23.01.15 22:37, Jeremy Allison wrote:> On Fri, Jan 23, 2015 at 10:23:15PM +0100, Markus Doits wrote: >> On 23.01.15 22:16, Ralph B?hme wrote: >>> On Fri, Jan 23, 2015 at 01:08:31PM -0800, Jeremy Allison wrote: >>>> On Fri, Jan 23, 2015 at 10:05:44PM +0100, Markus Doits wrote: >>>>> On 23.01.15 19:57, Miguel Medalha wrote: >>>>>> I am using Samba 4.1.16 with smb2/3 and symbolic links are working alright. >>>>>> >>>>>> Following the smb.conf man page, I use: >>>>>> >>>>>> unix extensions = no >>>>>> wide links = yes >>>>>> >>>>>> >>>>> Unfortunately this still does not work for me - can you really make a >>>>> symbolic link ("ln -s ...") when you are connected with smb2/3? Does >>>>> "smbstatus" really show smb2/3 connection? >>>> No you can't - the protocol doesn't support it. >> Oh - that makes me really sad :-( >>> iirc it does, with an IO_REPARSE_TAG_SYMLINK ioctl. We just don't >>> implement it (yet). :) >> So in essence this means: Stay at NT1 if you need symlinks? (And wait >> until "IO_REPARSE_TAG_SYMLINK" is implemented?) >> >> Just that you know: I'm trying to have home shares on the network, and >> sometimes users need symlinks (in some osx .apps or when installing some >> ruby gems). I'm using samba because it should also work with OSX. > Well there's a workaround called "Minshall/French" symlink format: > > https://lists.samba.org/archive/samba-technical/2014-September/102476.html > > that hides the symlink target inside a 'special' file. That > should still work over SMB2, but it's tunnelling stuff inside > the protocol, not really protocol support. > > It's what the Linux CIFS client uses when it has to do > symlinks against a Windows server which doesnt' support > the UNIX extensions.This looks good - can I enable/force them on the server or must it be enabled by every client explicitly by the mount option?
On Fri, Jan 23, 2015 at 10:47:22PM +0100, Markus Doits wrote:> > Well there's a workaround called "Minshall/French" symlink format: > > > > https://lists.samba.org/archive/samba-technical/2014-September/102476.html > > > > that hides the symlink target inside a 'special' file. That > > should still work over SMB2, but it's tunnelling stuff inside > > the protocol, not really protocol support. > > > > It's what the Linux CIFS client uses when it has to do > > symlinks against a Windows server which doesnt' support > > the UNIX extensions. > This looks good - can I enable/force them on the server or must it be > enabled by every client explicitly by the mount option?It's all client controlled - otherwise it wouldn't work against a Windows server (which has no symlink knowledge).