Hi,
I am having a really strange problem with my Samba shares on Debian
Buster. None of the users can access any shares, which reside on
ZFS-filesystem. Any other share works just fine. For example, if I
create a normal folder to /home with same permissions and replace a
ZFS-share with that, it works fine.
When accessing any ZFS-shares the following error is recorded:
Jan 08 22:39:56 punishedkorppu smbd[27893]: [2018/01/08 22:39:56.075343,
0] ../source3/smbd/service.c:774(make_connection_snum)
Jan 08 22:39:56 punishedkorppu smbd[27893]: canonicalize_connect_path
failed for service rex, path /tank/rex
The system in use is Debian Buster with Samba 2:4.7.3+dfsg-1 and ZoL
0.7.4-1 from Debian repo. Selinux is disabled and apparmor too.
Any ideas what might be wrong with this setup?
--- information ---
The mountpoint really is /tank/rex according to zfs list. It can also be
accessed by any user locally.
NAME USED AVAIL REFER MOUNTPOINT
tank 7.74T 7.24T 222K /tank
tank/homedir 96.8G 7.24T 222K /tank/homedir
tank/mei 5.98G 7.24T 5.98G /tank/mei
tank/rex 7.64T 7.24T 11.1G /tank/rex
Folder permissions ls -hal /tank
drwxr-xr-x 7 root root 7 Jan 8 19:04 ./
drwxr-xr-x 1 root root 284 Jan 8 21:07 ../
drwx------ 2 rex root 2 Jul 30 06:22 davtmp/
drwx---r-x 13 root root 13 Sep 6 23:13 homedir/
drwxrwx--- 11 root mei 11 Dec 24 18:35 mei/
drwxrwxrwx 12 rex rex 20 Dec 24 19:09 rex/
smb.conf from testparm -s:
# Global parameters
[global]
async smb echo handler = Yes
dns proxy = No
log file = /var/log/samba/log.%m
map to guest = Bad User
max log size = 1000
obey pam restrictions = Yes
pam password change = Yes
panic action = /usr/share/samba/panic-action %d
passwd chat = *Enter\snew\s*\spassword:* %n\n
*Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
passwd program = /usr/bin/passwd %u
server role = standalone server
unix password sync = Yes
idmap config * : backend = tdb
aio read size = 1
aio write size = 1
use sendfile = Yes
[rex]
comment = REX
create mask = 0660
force create mode = 0660
force directory mode = 0770
force group = rex
path = /tank/rex
read only = No
valid users = @rex
[mei]
comment = MEI
create mask = 0660
force create mode = 0660
force directory mode = 0770
force group = mei
path = /tank/mei
read only = No
valid users = @mei
[homedir]
comment = Homedir
create mask = 0600
force directory mode = 0700
path = /tank/homedir
read only = No
On Mon, Jan 08, 2018 at 11:06:37PM +0200, John Doe via samba wrote:> Hi, > > I am having a really strange problem with my Samba shares on Debian > Buster. None of the users can access any shares, which reside on > ZFS-filesystem. Any other share works just fine. For example, if I > create a normal folder to /home with same permissions and replace a > ZFS-share with that, it works fine. > > When accessing any ZFS-shares the following error is recorded: > Jan 08 22:39:56 punishedkorppu smbd[27893]: [2018/01/08 22:39:56.075343, > 0] ../source3/smbd/service.c:774(make_connection_snum) > Jan 08 22:39:56 punishedkorppu smbd[27893]: canonicalize_connect_path > failed for service rex, path /tank/rex > > The system in use is Debian Buster with Samba 2:4.7.3+dfsg-1 and ZoL > 0.7.4-1 from Debian repo. Selinux is disabled and apparmor too. > > Any ideas what might be wrong with this setup?Do an strace. canonicalize_connect_path() is a very simple function, but my guess is the call to SMB_VFS_REALPATH() is failing for some reason on your ZFS filesystem.
I added one testshare /home/testijako and connected to it with the same
credentials as I would connect to ZFS-shares. Then I did the strace to
that particular PID and tried connecting to one ZFS-share. There was
indeed an error which might have something to do with this issue:
Line 2001: lstat("/tank/rex", 0x7fff1f6fb2c0) = -1 ENOENT (No
such
file or directory)
Im sure that folder exists (files have been omitted):
aurinko at punishedkorppu:~$ cd /tank/rex
aurinko at punishedkorppu:/tank/rex$ ls -hal
total 32M
drwxrwxrwx 12 rex rex 20 Dec 24 19:09 .
Full stracefile can be found here:
https://pastebin.com/raw/i5BpVPuY
Jeremy Allison via samba kirjoitti 9.1.2018 klo 0:57:> On Mon, Jan 08, 2018 at 11:06:37PM +0200, John Doe via samba wrote:
>> Hi,
>>
>> I am having a really strange problem with my Samba shares on Debian
>> Buster. None of the users can access any shares, which reside on
>> ZFS-filesystem. Any other share works just fine. For example, if I
>> create a normal folder to /home with same permissions and replace a
>> ZFS-share with that, it works fine.
>>
>> When accessing any ZFS-shares the following error is recorded:
>> Jan 08 22:39:56 punishedkorppu smbd[27893]: [2018/01/08
22:39:56.075343,
>> 0] ../source3/smbd/service.c:774(make_connection_snum)
>> Jan 08 22:39:56 punishedkorppu smbd[27893]: canonicalize_connect_path
>> failed for service rex, path /tank/rex
>>
>> The system in use is Debian Buster with Samba 2:4.7.3+dfsg-1 and ZoL
>> 0.7.4-1 from Debian repo. Selinux is disabled and apparmor too.
>>
>> Any ideas what might be wrong with this setup?
>
> Do an strace. canonicalize_connect_path() is a very simple
> function, but my guess is the call to SMB_VFS_REALPATH()
> is failing for some reason on your ZFS filesystem.
>