Intuit doesn't support Quickbooks hosted on a Samba server, there are some workarounds available with Samba which may help. Edoceo has been assisting our clients with Samba/Quickbooks integration for many years, this document represents our experiences.
The filesystem of the host volume for the Samba share's that need to work with Quickbooks have to be set a specific way.
The directories that will be the root of the share must be owned by the group that the users who will access are in and they must be able to write.
Permissions for world is administrators choice.
In the example below the group name is users.
The share that quickbooks is on is server, which matches the directory /var/lib/samba/server/.
carbon ~ # cd /var/lib/samba/ carbon samba # stat server File: `server/' Size: 4096 Blocks: 8 IO Block: 4096 directory Device: 303h/771d Inode: 246703 Links: 36 Access: (0770/drwxrwx---) Uid: ( 0/ root) Gid: ( 100/ users) Access: 2005-11-05 21:45:24.000000000 -0800 Modify: 2007-02-01 10:45:08.000000000 -0800 Change: 2007-02-01 10:45:08.000000000 -0800
This will ensure minimal interference from the filesystem for Samba and Quickbooks quirks (Quirkbooks?)
To assist with Quickbooks files there are many configuration options that can found with a quick Google search.
It seems too many.
Below is a commented snip from a reference /etc/samba/smb.conf file.
An attempt has been made to only list the relevant configuration options.
Any setting not specifically listed is set to the Samba default value.
[global] # This seems to help a little socket options = IPTOS_LOWDELAY SO_SNDBUF=16384 SO_RCVBUF=16384 TCP_NODELAY [quickbooks] # Choose something clever! comment = Quickbooks Files # Have to add the read/execute on the Other force create mode = 0755 force directory mode = 0775 # Next two are root's choice follow symlinks = no wide links = no # This is very important for the QB function oplocks = no path = /var/lib/samba/server read only = no
There are also references to the veto opslocks
Sometimes on a dirty exit of Quickbooks, like when a workstation crashes, the file is then un-openable by the user.
The error message will state that The user "XXX" is already logged in on another machine, other users may still be able to open the file.
In this instance Quickbooks is confused by the dirty shutdown and Samba still has recorded locks for the files.
Look in the locking.tdb, brlocks.tdb and others. and others to validate/verify this (if you really want, use tdbtool, tdbdump).
The solution to this issue is below, it stems from some standard Microsoft models: Reboot.
brlocks.tdb, connections.tdb, gencache.tdb, locking.tdb, sessionid.tdb files.
rm /var/cache/samba/{brlocks,connections,gencache,locking,sessionid}.tdb
Starting and stopping the Samba services is distribution dependent, on Gentoo (and others) one says /etc/init.d/samba stop.
The location of the various .tdb files may vary, Gentoo keeps them in /var/cache/samba/.
It's not always necessary to remove the .tdb files but it does no harm, be careful to not remove the other .tdb files that are present.