Re: star and /dev/watchdog (exclusion of files)
[email protected] (Joerg Schilling) Fri, 14 Mar 2008 11:30:52 +0100
| Newsgroups | gmane.comp.archivers.star.user |
|---|---|
| Message-ID | <47da53dc.lKb5VG4a65aP0v9J%[email protected]> |
Wolfram Schlich <[email protected]> wrote: > Hi, > > some time ago (I don't remember the version of star I was using back > then) I stumbled over an issue regarding the exclusion of files from > being backed up by star. > > I am using the following command line arguments to exclude files from > the backup: > > -not pattern=3D'^/some/path/here/{%!/*}' > > This excludes everything *beyond* /some/path/here (the path itself > is being backed up, but empty). What you create here are two patterns: /some/path/here/% (where % refers to an empty string) and /some/path/here//* What do you expect from the double slash? The pattern "/some/path/here/*" would include "/some/path/here/" and any nonempty replacement for "*". Is this not what you intend? > So far, so good. Back then I tried this to exclude /dev/* like this: > > -not pattern=3D'^/dev/{%!/*}' > > The problem with this was that star did in some way fiddle with the > files beyond /dev/ -- the watchdog came alive because star somehow > touched/opened it and thus it resetted the machine after the > write-timeout expired (no write to the watchdog device after N > seconds) :( > Is there a way to *safely* exclude everything *beyond* a given > directory but not the directory itself? By 'safely' I mean making > star NOT touch anything beyond at all. If this is on Linux, you basically are a victim of bad Linux kernel interfa= ce = definitions. See e.g. the paragraph for -xfflags in the section NOTES of the star man page. Do you use -xfflags? In general: star (the upper layer) does not understand the patterns and for = this reason cannot know whether a pattern that excludes a directory _also_ = excludes all files under that directory. For this reason, star still scans = the = whole directory tree. Star however will only _open(2)_ _directories_ for th= is purpose except when you are on Linux and you did specify -xfflags. If you hit a driver with side-effects on open(2) (like a tape driver that = rewinds on open(2) or close(2)), you are lost on Linux. If a driver does no= t = honor O_NDELAY, other problems may occur. Where is your problem? J=F6rg -- = EMail:[email protected] (home) J=F6rg Schilling D-13353 Be= rlin [email protected] (uni) = [email protected] (work) Blog: http://schily.blogspo= t.com/ URL: http://cdrecord.berlios.de/old/private/ ftp://ftp.berlios.de/pub/sch= ily