Hello,
GNU tar 1.23: --verify used with --listed-incremental (-g) when tarring an NFS
filesystem (Linux 2.6.18) results in a "Contents differ" error. Either option
can be used alone successfully. Together they result in an error and a non-zero
exit status.
In this test, machine1:/home is mounted on server1:/n/machine1/home. The
blocksizes for the two filesystems are 4096, and the kernels are CentOS:
2.6.18-164.11.1 and 2.6.18-164.15.1, respectively. Default NFS export
parameters were used.
[us...@server1 TEST]$ pwd
/home/user1/TEST
[us...@server1 TEST]$ ls
list
[us...@server1 TEST]$ cat list
/n/machine1/home/user1/IDLWorkspace
[us...@server1 TEST]$ tar -cvf foo.tar -g snap --verify --files-from=list -P
--no-check-device
tar: /n/machine1/home/user1/IDLWorkspace: Directory is new
tar: /n/machine1/home/user1/IDLWorkspace/.metadata: Directory is new
tar: /n/machine1/home/user1/IDLWorkspace/Default: Directory is new
tar: /n/machine1/home/user1/IDLWorkspace/.metadata/.plugins: Directory is new
tar:
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.core.resources:
Directory is new
tar:
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.debug.core:
Directory is new
tar:
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.ui.workbench:
Directory is new
tar:
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.core.resources/.projects:
Directory is new
tar:
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.core.resources/.root:
Directory is new
tar:
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.core.resources/.safetable:
Directory is new
tar:
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Default:
Directory is new
/n/machine1/home/user1/IDLWorkspace/
/n/machine1/home/user1/IDLWorkspace/.metadata/
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.core.resources/
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.core.resources/.projects/
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Default/
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.core.resources/.root/
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.core.resources/.safetable/
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.debug.core/
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.ui.workbench/
/n/machine1/home/user1/IDLWorkspace/Default/
/n/machine1/home/user1/IDLWorkspace/install.log
/n/machine1/home/user1/IDLWorkspace/install.log.syslog
/n/machine1/home/user1/IDLWorkspace/.metadata/.lock
/n/machine1/home/user1/IDLWorkspace/.metadata/.log
/n/machine1/home/user1/IDLWorkspace/.metadata/version.ini
/n/machine1/home/user1/IDLWorkspace/Default/.project
Verify /n/machine1/home/user1/IDLWorkspace/
/n/machine1/home/user1/IDLWorkspace: Contents differ
Verify /n/machine1/home/user1/IDLWorkspace/.metadata/
/n/machine1/home/user1/IDLWorkspace/.metadata: Contents differ
Verify /n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins: Contents differ
Verify
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.core.resources/
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.core.resources:
Contents differ
Verify
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.core.resources/.projects/
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.core.resources/.projects:
Contents differ
Verify
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Default/
Verify
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.core.resources/.root/
Verify
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.core.resources/.safetable/
Verify
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.debug.core/
Verify
/n/machine1/home/user1/IDLWorkspace/.metadata/.plugins/org.eclipse.ui.workbench/
Verify /n/machine1/home/user1/IDLWorkspace/Default/
Verify /n/machine1/home/user1/IDLWorkspace/install.log
Verify /n/machine1/home/user1/IDLWorkspace/install.log.syslog
Verify /n/machine1/home/user1/IDLWorkspace/.metadata/.lock
Verify /n/machine1/home/user1/IDLWorkspace/.metadata/.log
Verify /n/machine1/home/user1/IDLWorkspace/.metadata/version.ini
Verify /n/machine1/home/user1/IDLWorkspace/Default/.project
[us...@server1 TEST]$ echo $?
1
[us...@server1 TEST]$
(I don't use this directory.) This error vanishes if either -g or --verify (or
both) is removed.