[Samba] Locking issue with Lightroom and Photoshop
mike at oobak.org
Mon Dec 17 17:02:41 UTC 2018
I have an issue at a weird confluence of macOS Mojave's "nsmb" client,
Adobe Lightroom and Photoshop, and Samba 4.7.6-Ubuntu. Since I don't have
much control over Apple or Adobe software, I'm hoping there's some smb.conf
magic (or other sage advice) that might help me out of this jam. For
reference, Samba is configured for SMB2-only access (i.e. durable file
handles), with min/max client version set to SMB2_10; and the nsmb client
is configured with signing_required=no and protocol_vers_map=2.
In brief, the user starts in Lightroom, selects an image from the catalog,
and fires the "Edit in Photoshop" action. Lightroom takes out a DENY_NONE,
RDONLY lock (viewable via smbstatus -L) on the file and opens it in
Photoshop. Subsequently, when the user tries to save the file in-place in
Photoshop, she gets the following error message: *Could not save "foo.tif"
because write access was not granted.* To be clear, this is not a
permissions issue; when the user opens the file in a different way—e.g.
through Finder or Photoshop—she can edit and save it in-place just fine.
This issue appears to be at least somewhat prevalent and Adobe's official
troubleshooting recommendation is "don't use a network filesystem," which
of course is absolute bunk. Other people have had success using AFP or NFS
instead of SMB. We have a lot invested in our Samba configuration and I'd
sure like to get this working one way or another.
My understanding is that a DENY_NONE, RDONLY lock is merely advisory and
won't prevent another process from locking the file for writing and
modifying it. Is that correct? If so, what's preventing Photoshop from
doing so and allowing this write operation to proceed? Is there a way to
simulate this behavior from the command-line (e.g. with a small Perl
script) to produce an easier test case?
This is the DOS share modes locking scheme, correct? Is there a different
locking scheme that might work better, and if so how can I configure the
server and/or the client accordingly? Is there another way to influence
locking behavior on either the server or the client to be more
Thank you in advance,
More information about the samba