Hi,
Ubuntu 20.04 recently updated samba from 4.11 to 4.13. Since then the backup
script has started failing:
running backup on dirs: /var/lib/samba/private /var/lib/samba /etc/samba
ERROR(<class 'FileNotFoundError'>): uncaught exception - [Errno 2]
No such file or directory: '/var/lib/samba/dfs/netlogon'
File "/usr/lib/python3/dist-packages/samba/netcmd/__init__.py", line
186, in _run
return self.run(*args, **kwargs)
File "/usr/lib/python3/dist-packages/samba/netcmd/domain_backup.py",
line 1105, in run
if any(os.path.samefile(full_path, file) for file in all_files):
File "/usr/lib/python3/dist-packages/samba/netcmd/domain_backup.py",
line 1105, in <genexpr>
if any(os.path.samefile(full_path, file) for file in all_files):
File "/usr/lib/python3.8/genericpath.py", line 100, in samefile
s1 = os.stat(f1)
Assuming that I set my DFS up correctly I think the cause is that
'netlogon'
is a dangling link:
$ ls -l /var/lib/samba/dfs/netlogon
lrwxrwxrwx 1 root root 43 Mar 26 2021 /var/lib/samba/dfs/netlogon ->
msdfs:dc0\netlogon,dc1\netlogon
Should the directory backup script handle this case or should I move the [dfs]
share?
Thanks,
James
On Mon, 2021-11-22 at 08:36 +0000, James Dingwall via samba wrote:> Hi, > > Ubuntu 20.04 recently updated samba from 4.11 to 4.13. Since then > the backup > script has started failing: > > running backup on dirs: /var/lib/samba/private /var/lib/samba > /etc/samba > ERROR(<class 'FileNotFoundError'>): uncaught exception - [Errno 2] No > such file or directory: '/var/lib/samba/dfs/netlogon' > File "/usr/lib/python3/dist-packages/samba/netcmd/__init__.py", > line 186, in _run > return self.run(*args, **kwargs) > File "/usr/lib/python3/dist- > packages/samba/netcmd/domain_backup.py", line 1105, in run > if any(os.path.samefile(full_path, file) for file in all_files): > File "/usr/lib/python3/dist- > packages/samba/netcmd/domain_backup.py", line 1105, in <genexpr> > if any(os.path.samefile(full_path, file) for file in all_files): > File "/usr/lib/python3.8/genericpath.py", line 100, in samefile > s1 = os.stat(f1) > > Assuming that I set my DFS up correctly I think the cause is that > 'netlogon' > is a dangling link: > > $ ls -l /var/lib/samba/dfs/netlogon > lrwxrwxrwx 1 root root 43 Mar 26 2021 /var/lib/samba/dfs/netlogon -> > msdfs:dc0\netlogon,dc1\netlogon > > Should the directory backup script handle this case or should I move > the [dfs] > share?You appear to be using the old method of backup, it has been replaced by 'samba-tool domain backup' Try reading this: https://wiki.samba.org/index.php/Back_up_and_Restoring_a_Samba_AD_DC Rowland
Andrew Bartlett
2021-Nov-22 09:23 UTC
[Samba] samba 4.13: backup script: FileNotFoundError
On Mon, 2021-11-22 at 08:36 +0000, James Dingwall via samba wrote:> Hi, > > Ubuntu 20.04 recently updated samba from 4.11 to 4.13. Since then > the backup > script has started failing: > > running backup on dirs: /var/lib/samba/private /var/lib/samba > /etc/samba > ERROR(<class 'FileNotFoundError'>): uncaught exception - [Errno 2] No > such file or directory: '/var/lib/samba/dfs/netlogon' > File "/usr/lib/python3/dist-packages/samba/netcmd/__init__.py", > line 186, in _run > return self.run(*args, **kwargs) > File "/usr/lib/python3/dist- > packages/samba/netcmd/domain_backup.py", line 1105, in run > if any(os.path.samefile(full_path, file) for file in all_files): > File "/usr/lib/python3/dist- > packages/samba/netcmd/domain_backup.py", line 1105, in <genexpr> > if any(os.path.samefile(full_path, file) for file in all_files): > File "/usr/lib/python3.8/genericpath.py", line 100, in samefile > s1 = os.stat(f1) > > Assuming that I set my DFS up correctly I think the cause is that > 'netlogon' > is a dangling link: > > $ ls -l /var/lib/samba/dfs/netlogon > lrwxrwxrwx 1 root root 43 Mar 26 2021 /var/lib/samba/dfs/netlogon -> > msdfs:dc0\netlogon,dc1\netlogon > > Should the directory backup script handle this case or should I move > the [dfs] > share?Ideally it would handle this case. This regression was triggered by a fix for issues with hard links. However in general [sysvol] and [netlogon] should be real shares with the sync occouring server-side, not by forcing the client to a particular DC, as otherwise you don't have redundency. (However, the issue of how to sync and ensuring updates happen on the right DC is problemtatic). Andrew Bartlett -- Andrew Bartlett (he/him) https://samba.org/~abartlet/ Samba Team Member (since 2001) https://samba.org Samba Team Lead, Catalyst IT https://catalyst.net.nz/services/samba Samba Development and Support, Catalyst IT - Expert Open Source Solutions