Correcting for DST with FreeFileSync

Synchronizing my dedicated data partition with my external USB backup drive has always been problematic when daylight saving time (DST) comes and goes. The problem is that – instantly – all the files on the external (FAT) drive appear to become one hour older (or younger) than the same files on the hard drive. Some versions of FreeFileSync have a fix for this issue. An alternative is to reset the time stamp on the files on the external drive.

The DST issue was fixed in Version 6.8 of FreeFileSync. Essentially, on newer versions of the software, one can opt-in to ignore a shift in file modification times of one hour (or more).

My particular problem is that I am currently running Linux Mint Version 13 (Nadia), a long-term support (LTS) version that will be supported until April, 2017. Unfortunately, any attempt to run the current release of FreeFileSync (Version 6.11), produces the error message: “/usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.18′ not found (required by ./FreeFileSync)”. The problem seems to be that Nadia only supports FreeFileSync up to Version 5.21 (the release available in Software Manager).

Now, since I’m not yet ready to update my version of Linux Mint (even though Version 17 – Qiana – is also an LTS version, supported until April, 2019), I needed another method to work around the DST problem. My solution was to change the time stamp on all the files on my external USB drive by one hour in order to bring them into line with the files on my hard drive. Since, the two drives were synchronized before the change in time occurred, this was a simple fix to FreeFileSync’s issue with DST on external drives.

However, since there are quite a number of files to be processed, an automatic method seems preferable. Fortunately, we can bring the power of the Linux command line to bear on the problem. From the root of the Linux file system, the following command (in my specific case) has the desired effect:

find /media/SILICON16GB -type f -exec touch -r '{}' -d '-1 hour' '{}' \;

Effectively, the command locates and touches each file on the external USB drive (SILICON16GB) and sets the time stamp one hour earlier, thus mimicking the effect of DST.

References:

Problem with saving time again?
http://sourceforge.net/p/freefilesync/discussion/help/thread/33079e91

Linux Mint Releases
http://www.linuxmint.com/oldreleases.php

How to loop through directories to touch files
http://www.unix.com/shell-programming-scripting/94751-how-loop-through-directories-touch-files.html

linux/shell: change a file’s modify timestamp relatively?
http://superuser.com/questions/122863/linux-shell-change-a-files-modify-timestamp-relatively

Advertisements
This entry was posted in Applications, Commands, Mint, Tweaks and tagged . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s