I recently installed Ubuntu 16.04 as a dual boot on my desktop. I have two monitors, a 1440p one which I use as my main and a secondary 1080p monitor hooked up through hdmi. Both are connected to my nvidia gtx970. Whenever I am at the login screen both monitors work however when I login and the desktop loads the 1080p monitor goes black and eventually goes to sleep. It is still detected in the system settings and I can move the mouse over to it. Oddly, I can mirror the displays and it will come back on and then if I revert back it stays on and acts normally. Is there something I'm missing so I wont have to mirror and revert the displays every time I boot linux?
Sounds like a problem with your Nvidia drivers. Nvidia drivers (especially ones downloaded from Nvidia website) are notorious for wreaking havoc on your GPU-enabled laptops. Have you checked your System settings -> Software & Updates -> Additional drivers? How many drivers do you see there? There should be Nvidia drivers (atleast one) and possibly an X-server Nouveau (open source).
1) If not try running
sudo apt-get install xorg xserver-xorg; sudo dpkg-reconfigure xorg or
sudo apt-get install xserver-xorg-video-nouveau
This should install the Nouveau. Try switching it to that driver in the Additional drivers menu and restart and see if that solves the problem.
2) If you have older Nvidia drivers try installing new version:
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update && sudo apt install nvidia-<number>. The
number I have is 390, but you can try 380, 387 etc.
3) Switching to Nvidia driver can cause you to run into a login loop in which case you need to press
Ctrl+Alt+F1 at login screen, and type:
sudo apt-get purge nvidia-* and
sudo dpkg-reconfigure lightdm and
sudo reboot -i to switch back to nouveau and get back to your desktop