[SOLVED] tar+/dev/null weirdness
T. Horsnell
tsh at mrc-lmb.cam.ac.uk
Fri May 6 11:57:48 UTC 2005
>On Thu, 2005-05-05 at 07:58, T. Horsnell wrote:
>
>> Oops, I spoke too soon...
>>
>> On my system:
>>
>> [root at ls1 ~]$ df -k /testnfs
>> Filesystem 1K-blocks Used Available Use% Mounted on
>> /dev/sdd1 35280616 11836988 21651476 36% /testnfs
>> [root at ls1 ~]$ time tar cf - -C /testnfs . > /dev/null
>> 0.074u 0.000s 0:00.07 100.0% 0+0k 0+0io 0pf+0w
>> [root at ls1 ~]$ time tar cf /dev/null -C /testnfs .
>> 0.075u 0.000s 0:00.07 100.0% 0+0k 0+0io 0pf+0w
>>
>> [root at ls1 ~]$ df -k /nfs/server1/www
>> Filesystem 1K-blocks Used Available Use% Mounted on
>> server1:/www 35278544 11923576 21562920 36% /nfs/server1/www
>> [root at ls1 ~]$ time tar cf - -C /nfs/server1/www . > /dev/null
>> 0.303u 1.739s 0:08.73 23.2% 0+0k 0+0io 0pf+0w
>> [root at ls1 ~]$ time tar cf /dev/null -C /nfs/server1/www .
>> 0.294u 1.333s 0:16.00 10.1% 0+0k 0+0io 0pf+0w
>>
>> [root at ls1 ~]$ tar --version
>> tar (GNU tar) 1.14
>> Copyright (C) 2004 Free Software Foundation, Inc.
>> This program comes with NO WARRANTY, to the extent permitted by law.
>> You may redistribute it under the terms of the GNU General Public License;
>> see the file named COPYING for details.
>> Written by John Gilmore and Jay Fenlason.
>>
>> Les, is this *meant* to work as you say, or is it something
>> which just happened to work (once upon a time)? If its meant
>> to work, perhaps I should contact the Gnutar maintainers...
>
>It's intended to let the --totals option work as quickly
>as possible, but now I remember it is even smarter. It
>is comparing it's output fd inode to that of /dev/null
>so even the redirection triggers the 'directory only'
>mode. If you look at your file access times you'll see
>that they weren't really read. You have to do something
>like 'tar cf - . |cat >/dev/null' to make it actually
>read the files and throw away the data.
That cracked it. Thanks very much.
Terry.
More information about the fedora-list
mailing list