[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: DST bug in touch utility
From: |
Eric Blake |
Subject: |
Re: DST bug in touch utility |
Date: |
Fri, 04 Dec 2009 06:02:39 -0700 |
User-agent: |
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.23) Gecko/20090812 Thunderbird/2.0.0.23 Mnenhy/0.7.6.666 |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
[please keep the list in the loop so that others may learn from your
findings; also, don't top-post on technical lists]
According to Cesar Mugnatto on 12/3/2009 10:30 PM:
> Hi Eric,
>
> Thanks for taking the time to respond. Here is a dump of the command
> line I just ran:
>
> ==========================================================
> C:\Documents and Settings\Cesar>fsutil fsinfo volumeinfo c:\
> Volume Name :
> Volume Serial Number : 0x88576b5c
> Max Component Length : 255
> File System Name : NTFS
>>
>> More importantly, what filesystem are you using? Microsoft's
>> implementation of FAT is notoriously limited in that it stores a local
>> timestamps based on the timezone that was in effect when the timestamp was
>> written, and reads timestamps back according to the timezone in effect
>> during the read. As a result, you are VERY prone to seeing these
>> mysterious one hour jumps in timestamps on files stored on FAT. You get
>> much more consistent results when using a better filesystem, like NTFS,
>> where timestamps are stored relative to UTC rather than as a local
>>> timestamp.
Well, given that you were testing on NTFS, and that your complaint was
that the time was off one hour in the wrong direction from your
expectations, it looks like your particular port of the coreutils attempts
to compensate for FAT timestamp drift, and as a result ends up corrupting
NTFS timestamps in the opposite direction. But as has already been
pointed out to you, this is an issue for whoever ported your version of
coreutils to run on Windows, and not an upstream problem.
At any rate, I don't see the problem when using cygwin, so I would
recommend that you consider changing to a different port of GNU tools
compiled for Windows.
$ uname
CYGWIN_NT-5.1
$ touch.exe -c -t 200910030001 "filename.ext"
$ stat -c %y filename.ext
2009-10-03 00:01:00.000000000 -0600
$ df -T . | cut -c15-20
Type
ntfs
- --
Don't work too hard, make some time for fun as well!
Eric Blake address@hidden
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Public key at home.comcast.net/~ericblake/eblake.gpg
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iEYEARECAAYFAksZCG8ACgkQ84KuGfSFAYA1YgCghfWnIv72OlQfx6cjrGduSMDa
7wYAnRK+d/NdubHFtXiu4JmRzTjacBHR
=8CV1
-----END PGP SIGNATURE-----