Samba-2.2.x has a recycle bin option. It is implemented through a loadable module mechnism. Check the smb.conf man page for "vfs object". There is no 'salvage' command as such in Samba. However, if you use the recycle facility, then all deleted files will be placed in a directory structure that mirrors the location in the share from which it was deleted. The root of the recycle bin is called .recycle and all files within it are preserved in tact.
There is a facility for clearing out the .recycle directories, that scripts is provided in the Samba source tarball in ~samba/example/VFS/recycle and is called cleanup_recycle.pl.
This was first published in May 2003