aa72f9d97876fac89a67ecb188cd0f0af45a4eb0
Added a screenshot of a terminal session using dirdedupe.sh to
hard-link files while preserving the atime/mtime of the enclosing
directory of the newly-linked file.
Time Machine Utilities
Installation
Simply save the utilities in your path and mark them as executable.
If you don't know your system path, you can find it with this Terminal command:
echo "${PATH}"
To mark a utility as executable, use the chmod command:
chmod +x tmimport.sh
chmod +x tmbless.sh
chmod +x dirdedupe.sh
If you're still lost, do this:
-
In your Home folder, create a new folder called
.bin -
Download and save the utilities to your new
.binfolder -
Use a text editor to open
.zshrc(or.bash_profileon older Macs) from your Home folder and add the following line at the end:PATH=${PATH}:${HOME}/.bin -
In Terminal, run the following commands:
chmod +x ~/.bin/*.sh -
Quit (or restart) the Terminal.
tmimport
TIME MACHINE IMPORT
USAGE
tmimport.sh <backup drive>
DESCRIPTION
Time Machine Importer attempts to inherit the backup history of a backup
drive. If the backup drive is not paired to the current computer, Time
Machine Importer will attempt to pair the drive with the current computer
by modifying the model, MAC address, and UUID/UDID reflected in the
metadata of the backup drive.
The backup drive should be specified by disk or volume name (or path) or
the mount point of the backup drive. For example:
- ./tmimport.sh /dev/disk1s1
- ./tmimport.sh /Volumes/TMBACKUP
While some additional heuristics may assist in identifying a backup drive
that is specified in other ways, they are untested and not guaranteed
to work correctly.
tmbless
TIME MACHINE BLESS
USAGE
tmbless.sh <snapshot directory>
DESCRIPTION
Time Machine Bless marks a snapshot directory as valid and recognizable
by Time Machine.
It does this by modifying the metadata of the snapshot directory so that
the it accurately reflects the date the snapshot was created and the
metadata of the 'drive' subdirectory within that snapshot directory
matches the current drive.
These modifications should allow restoration of files within the Time
Machine restore UI.
dirdedupe
DIRECTORY DE-DUPLICATOR
USAGE
dirdedupe.sh [--execute] masterdir subjectdir
DESCRIPTION
For each file in subjectdir, replace it with a hard link to the matching
file (if any) in masterdir. A file will be considered a match if, and
only if, it shares the same file name, relative path, and contents.
OPTIONS
--execute Actually remove and link duplicate files. By default, this
program runs in test mode.
In the example below, you can see that running dirdedupe.sh results in the files being linked, while preserving the date and time stamps of the enclosing directories.
Languages
Shell
100%