For quite a while I worked under the assumption that you could do the following with directives in NetWorker:
<< /path >> +skip: *.mp3 << /path/subpath/criticalpath >> forget
The logic of this is that it should be possible to skip files in one directory, but forget that directive in a lower directory and thus be able to still backup files matching a particular criteria in a subpath.
Recent discussions on the NetWorker mailing list left me questioning whether I was correct in my assumption. I thought I’d tested it long ago, but the discussions on the list (and the tests that I did) seemed to indicate this wasn’t the way NetWorker worked.
It turns out I was testing incorrectly. Instead of testing with an exact specification such as the above, I was testing “lazily”:
<< /path >> +skip: * << /path/subpath/criticalpath >> forget
The mistake that I made was in the “*” vs the “*.mp3” I should have been testing my use case scenario. In short:
- Obviously skipping “*” will result in NetWorker determining that everything is being skipped, at which point there is no need to continue to traverse any directory path beneath the point in which the “skip *” is encountered.
- However, if just skipping a particular pattern, then NetWorker will have to continue to traverse all subdirectories from the path it encounters the skip command, meaning that the forget directive will still be honoured at a deeper directory path.
So I wasn’t wrong about my long-term belief, I just tested incorrectly.
This does mean that you can use skip, followed by forget, so long as your skip isn’t too open in its selection criteria.