I like using the Contagion R.A.T.7 mouse and to use it with Linux you must configure the mouse correctly in terms of buttons.
Essentially there are buttons (the mode change button are three buttons for Linux) and one of them is always pressed. You need to exclude them to have a working setup. http://www.gdargaud.net/Hack/LinuxMouse.html is a good tutorial on how to disable the buttons.
I have two of them and the product name has changed in between. So I had to double the section and my xorg.conf looks like this:
Section "InputClass"
Identifier "Mouse Remap"
MatchProduct "Saitek Cyborg R.A.T.7 Contagion"
MatchDevicePath "/dev/input/event*"
Option "ButtonMapping" "1 2 3 4 5 6 7 8 9 0 0 0 0 0 0"
EndSection
Section "InputClass"
Identifier "Mouse Remap"
MatchProduct "Mad Catz Mad Catz R.A.T.7 Contagion Mouse"
MatchDevicePath "/dev/input/event*"
Option "ButtonMapping" "1 2 3 4 5 6 7 8 9 0 0 0 0 0 0"
EndSection
As you can see, I have disabled most of the buttons there.
As there might be changed in future versions, you can type xinput
to get a list of input devices and adjust your configuration.