I can sympathise
I too have a Dell which refused to boot Vista. With nothing to lose, I installed Ubuntu 12 and Arduino 1.0.1
Everything worked from day one without any intervention (groups, dialout etc.).
I have just put together an Ubuntu PC using an old Asus motherboard and an i7 CPU etc..
Installing Ubuntu 16 LTS from a USB stick was fraught to say the least. It would get halfway through the name, location stuff then crash. Eventually, I traced that back to a poor memory (DIMM) stick.
The only change I made at the BIOS level was to change partial USB support to full. despite knowing very little about Linux and its file structures, I have added support for ATtiny *5 etc. and a load of libraries copied over from the Win 10 PC which I have to say, has always worked well with Arduino.
Both setups work well with Arduino Uno, obviously selecting Uno and dev/tty/ACM* in the Tools menu. I will test the Mega 2560 when I can find it.
Leonardo is a whole different kettle of fish. So far, trying a lot of changes, nothing has worked. I am pinning my hopes on Modem Manager and its deletion/disable to allow the Leonardo to accept uploads. The clue was in one of the error messages, something along the lines, "is not a modem".
There is documentation out there including Arduino Learning Getting started which does cover some of the Linux upload problems. I also found one reference to the Leonardo problem on the Freetronics site, but I have yet to make the changes in Ubuntu.
Stackoverflow and the Ubuntu Forum cover many port problems (none relevant to me) and remember that other USB devices have comms problems and Arduino is just one of many, so you may have to widen your search
What it is not, is a Windows Plug and Play setup.
I'll let you know if any progress is made