Is there an application that is like "Time Machine" on the Mac OSX?
You could give a try to Back in Time. It is in repository.
In documentation he explains why he do it.
Why did I write the application ? When I read about Apple’s TimeMachine I thought it’s nice tool to have. I searched for equivalent applications for Linux and I find TimeValut and FlyBack.
Since February I'm making backups with it, but never had tried a full or partial restore.
It uses rsync and not the mechanism like inotify used by Time Machine. So it is running every x time and not each time the file is wrote.
You could do a full backup of the root folder "/" with Déjà dup, the default backup client of ubuntu. When restoring you can use a live cd to avoid your system entering in a weird state.