The long and short is: on most OS (windows[xp|2k|v|7], Linux, etc), yes, as long as your motherboard has enough slots.
I've done this with completely different cards (matrox, ati, nvidia, trident, intel, cirrus, etc) in various linux distros and windows versions.
Linux handles it pretty seamlessly, whether it's different cards from the same vendor, or completely different vendors. When you boot up it will probably clone your screen. Head to the system settings menu, then the monitors control panel. It should be straightforward (the gnome/ubuntu control panels are pretty easy), but search ubuntu's website if you need help.
You said ubuntu, but in case you're dual-booting, windows will be fine with different cards from the same vendor, or different cards from different vendors. BUT, many people report stability issues with mixing card types in windows. I never had stability issues under windows (for multiple cards that is;), but I suspect that was because they were work PCs used for business applications, and not 3d games.