X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=doc%2Ftar.texi;h=419999a9e669f122a659b812593654688d0c588f;hb=a1b1b7cc8aa3e3787834dccc96b516f467225b7b;hp=52b37258ebfa2cb72b7930c04fc23eb582ad927e;hpb=c8d4ceccc17ab5ce84e3c704569dbe22530a4aac;p=chaz%2Ftar diff --git a/doc/tar.texi b/doc/tar.texi index 52b3725..419999a 100644 --- a/doc/tar.texi +++ b/doc/tar.texi @@ -109,6 +109,7 @@ Appendices * Changes:: * Configuring Help Summary:: +* Fixing Snapshot Files:: * Tar Internals:: * Genfile:: * Free Software Needs Free Documentation:: @@ -315,11 +316,16 @@ Date input formats Controlling the Archive Format -* Portability:: Making @command{tar} Archives More Portable * Compression:: Using Less Space through Compression * Attributes:: Handling File Attributes +* Portability:: Making @command{tar} Archives More Portable * cpio:: Comparison of @command{tar} and @command{cpio} +Using Less Space through Compression + +* gzip:: Creating and Reading Compressed Archives +* sparse:: Archiving Sparse Files + Making @command{tar} Archives More Portable * Portable Names:: Portable Names @@ -342,11 +348,6 @@ How to Extract GNU-Specific Data Using Other @command{tar} Implementations * Split Recovery:: Members Split Between Volumes * Sparse Recovery:: Sparse Members -Using Less Space through Compression - -* gzip:: Creating and Reading Compressed Archives -* sparse:: Archiving Sparse Files - Tapes and Other Archive Media * Device:: Device selection and switching @@ -2539,6 +2540,14 @@ named @var{file}, but dump the directory node itself. @xref{exclude}. Exclude from dump any directory containing file named @var{file}. @xref{exclude}. +@opsummary{exclude-vcs} +@item --exclude-vcs + +Exclude from dump directories and files, that are internal for some +widely used version control systems. + +@xref{exclude}. + @opsummary{file} @item --file=@var{archive} @itemx -f @var{archive} @@ -5406,6 +5415,7 @@ unreliable if you modify a file's time stamps during dumping (e.g., with the @option{--atime-preserve=replace} option), or if you set the clock backwards. +@cindex Device numbers, using in incremental backups Metadata stored in snapshot files include device numbers, which, obviously is supposed to be a non-volatile value. However, it turns out that NFS devices have undependable values when an automounter @@ -5416,6 +5426,11 @@ is to considers all NFS devices as being equal when it comes to comparing directories; this is fairly gross, but there does not seem to be a better way to go. +If you are using the @i{Linux} kernel, the device numbers can also +change when upgrading to some newer versions of the kernel. This can +cause the next backup to be full backup on the affected filesystems. +@xref{Fixing Snapshot Files}, for the information on how to handle this case. + Note that incremental archives use @command{tar} extensions and may not be readable by non-@acronym{GNU} versions of the @command{tar} program. @@ -6499,6 +6514,42 @@ called as @w{@samp{tar -c -X foo .}} and the file @file{foo} contains a single line @file{*.o}, no files whose names end in @file{.o} will be added to the archive. +Notice, that lines from @var{file} are read verbatim. One of the +frequent errors is leaving some extra whitespace after a file name, +which is difficult to catch using text editors. + +However, empty lines are OK. + +@cindex version control system, excluding files +@cindex VCS, excluding files +@cindex SCCS, excluding files +@cindex RCS, excluding files +@cindex CVS, excluding files +@cindex SVN, excluding files +@cindex git, excluding files +@table @option +@opindex exclude-vcs +@item --exclude-vcs +Exclude files and directories used by some version control systems. +@end table + +As of version @value{VERSION}, the following files are excluded: + +@itemize @bullet +@item @file{CVS/}, and everything under it +@item @file{RCS/}, and everything under it +@item @file{SCCS/}, and everything under it +@item @file{.git/}, and everything under it +@item @file{.gitignore} +@item @file{.cvsignore} +@item @file{.svn/}, and everything under it +@item @file{.arch-ids/}, and everything under it +@item @file{@{arch@}/}, and everything under it +@item @file{=RELEASE-ID} +@item @file{=meta-update} +@item @file{=update} +@end itemize + @findex exclude-caches When creating an archive, the @option{--exclude-caches} option family causes @command{tar} to exclude all directories that contain a @dfn{cache @@ -6509,7 +6560,7 @@ Various applications write cache directory tags into directories they use to hold regenerable, non-precious data, so that such data can be more easily excluded from backups. -There are three @samp{exclude-caches} option, providing a different +There are three @samp{exclude-caches} options, each providing a different exclusion semantics: @table @option @@ -10272,7 +10323,7 @@ echo $@{name:-$TAR_ARCHIVE@}-$TAR_VOLUME >&$TAR_FD @end group @end smallexample -The same script cant be used while listing, comparing or extracting +The same script can be used while listing, comparing or extracting from the created archive. For example: @smallexample @@ -10914,6 +10965,10 @@ output. Default is 12. Right margin of the text output. Used for wrapping. @end deftypevr +@node Fixing Snapshot Files +@appendix Fixing Snapshot Files +@include tar-snapshot-edit.texi + @node Tar Internals @appendix Tar Internals @include intern.texi