Keepass (and LastPass, etc) is vulnerable to the same problem -- if you forget the master password, you can get locked out of everything. While it is useful, it is not the only answer. If the encrypted information is mission critical, then you must have a paper backup of the password stored somewhere safe.
Then again, if you don't, there is also a keepass2john [1].
Is it just me, or is john very very slow? I remember trying MD5 once, but the tries per second were in the thousands (whereas GPU-accelerated crackers do billions).
Maybe I'm misunderstanding and it was a few thousand rounds of MD5, though.
John isn't always the fastest anymore, but it's definitely not very, very slow. It also provides the widest support by far. (And most of the formats are GPU accelerated, OpenMP threaded, or SSE parallelized. John itself also supports MPI. Make sure you've configured the makefile right.) If there's a format you're trying to crack, chances are john provides a convenient and reasonably fast way to crack it.
Not sure which one is in the Ubuntu repository. Although John the Ripper is Solar Designer's baby, most of the current development (under Solar's guidance) occurs in the "jumbo" version led by another developer named magnum.
Then again, if you don't, there is also a keepass2john [1].
[1] https://github.com/magnumripper/JohnTheRipper/blob/unstable-...