On Ubuntu 16.04 originally a Mono 4.2 is delivered, and this Mono works only with the most actual OpenSim versions. So what you can use on Ubuntu 16.04 is OpenSim 0.9.x, OpenSim Metro-Edition and OpenSim Arriba.
Another approach could be using Ubuntu 14.04 (end of support is 2019) and an older Mono from Xamarin. In my tests the original kernel has proven to be unstable with all Mono/OpenSim combinations, only with the "LTS Enablement Stack" it became stable with some combinations.
To activate the LTS Enablement stack resulting in a kernel 4.2, use the following commands: Simulation => apt-get -s install --install-recommends linux-generic-lts-wily If no problems found, activation => apt-get install --install-recommends linux-generic-lts-wily
With Ubuntu 14.04 originally comes Mono 3.2.8. This Mono together with the LTS Enablement Stack above ran stable on my server. Now my server runs stable with Ubuntu 16.04 and Mono 4.2.3.
https://hyperweb.eu => Server-Tutorial für Linux mit OpenSim, konfigurierter OpenSim Arriba Binärdownload!