MacOS – Monitor hard drive usage history

hard drivemacosmonitoring

On Mavericks, is there a way to monitor hard drive use history?

To be clear, I do not only want to know how much space I am using on my hard drive. I would like a history of my hard drive space usage over time.

  • Is there a feature built into Maverick that would allow me to do that? Or any additional app?

  • If there is, will this built-in feature/app be able to recover information from my past use, or will it only start to record my usage once I set it up?

I know that I could record my usage manually, but I'd rather have it done automatically.

EDIT : as far as the frequency of observations is concerned, I'd be satisfied with something ranging from every day to once a week.

Best Answer

How about something simple in your crontab?

@daily (date; df)>> ~/drive_usage.log

Which will, on a daily basis, append to the file drive_usage.log in your home directory with the date and time the job ran. Change @daily to @hourly or @weekly if you want different sampling rates.

Sample output:

Thu 13 Feb 2014 22:15:22 GMT
Filesystem                                             512-blocks       Used  Available Capacity   iused      ifree %iused  Mounted on
/dev/disk1                                              487900160  332696088  154692072    69%  41651009   19336509   68%   /
devfs                                                         382        382          0   100%       661          0  100%   /dev
map -hosts                                                      0          0          0   100%         0          0  100%   /net
map auto_home                                                   0          0          0   100%         0          0  100%   /home
/dev/disk4                                             1952177496  322984856 1629192640    17%  40373105  203649080   17%   /Volumes/Samsung Time Machine
//paul@calliope._afpovertcp._tcp.local/paul%60s%20home 7689113744 6353779112 1335334632    83% 794222387  166916829   83%   /Volumes/paul's home
//paul@pollux/paul                                      125522808   65564368   59958440    53%         0 18446744073709551615    0%   /Volumes/paul

If you want more information you might want to use something like fs_usage(1) which provides a truly astonishing amount of detail and must be run as root.