Mac OS X has a built-in keyboard shortcut configuration tool in Preferences. You can set both global key bindings and application-specific key bindings.
I had used this to use Cmd key more often than Ctrl key. For example Google Chrome has default key mappings to go to the next tab by
<ctrl-tab> and to the previous tab by
<shift-ctrl-tab>. They break your left pinky easily. I mapped them ad
<Cmd-k>. That helped the finger.
But there is no such great built-in tool in the Linux world neither in Gnome nor KDE. There is a Keyboard Shortcuts in Preference of Gnome, but it's only for Gnome apps.
AutoKey is a similar tool to the Mac OS X built-in keybinding configuration tool. The differences are (1) AutoKey doesn't map a key to a function in the application's menu and (2) AutoKey enables you to run arbitrary scripts.
It's very easy to install on Debian family distributions such as Ubuntu. Gentoo, on the other hand, has an overlay that has autokey-gtk package, but it's broken. You have to get the source code and build it. It also requires you to install some dependencies manually, but it works.
(Added on Jan 24 2012)
There is an issue in autokey that you cannot exclude a window easily. See the end of this discussion to solve it.