dos archive bit emulation
allan at ostenfeld.dk
Mon Apr 2 19:40:39 GMT 2001
I have a linux server that is used by both windows (samba) and linux (nfs)
users. The server has to be backed up from a NT server running Backup Exec.
Since this backup program can only do incremental backups based on the
archive bit being set or not, I have emulate the archive bit in samba.
I know about the 'map archive = yes' setting, but I think this is different
in two areas:
1. The x bit is not set when a linux user changes a file and therefore it is
not backed up anew.
2. It annoys my linux users that the x bit is set where its not supposed to.
(And I like my linux users) :)
I have tried hacking something into the dosmode.c file in unix_mode() and
dos_mode(), using simple db-functions in this testing fase. This almost
works except when i use right-click, properties and deselect the archive
tick. The archive bit is cleared in my database, but at the next
right-click+properties the tick is there again!
I have traced the problem to the unix_mode() function is called with the
archive bit set (when the explorer reads the archive state!) and therefore
it is cleared in my database.
Is there any way of finding out if the explorer is only reading the state?
Are there any more functions I need to look at for catching archive bit
Thanks for whatever help you might have. If I'm nuts for doing this project,
please tell me. I havent seen any alternatives, but if there are any, I'd
very much like to know!
More information about the samba-technical