Sono all'incirca nella stessa situazione. Io uso un laptop che a volte è collegato al mio monitor esterno. Quando lo è, di solito voglio usare solo questo monitor (perché l'ho collegato a una tastiera esterna e anche a un mouse).
Quello che ho trovato, è che se hai un file chiamato .xprofile , viene chiamato ogni volta che il display viene inizializzato (da X.org?). Qui è il contenuto del mio file. Come puoi vedere, l'ho adattato da qui .
Quello che dovresti fare è salvarlo in ~ / .xprofile e renderlo eseguibile ( chmod + x .xprofile ). Controlla come vengono richiamati i tuoi monitor interni e quelli esterni - fai ciò eseguendo xrandr senza argomenti. I miei sono VGA1 e LVDS1 rispettivamente. L'ultima cosa è impostare la variabile EXTERNAL_RES sulla risoluzione nativa del tuo monitor esterno.
Ora all'avvio, il monitor collegato verrà utilizzato se è connesso. La parte difficile è l'automazione (come la rimozione del cavo mentre Ubuntu è in esecuzione). Non ho trovato una buona soluzione per questo, ma sembra che il passaggio a una console virtuale e viceversa faccia il trucco (Ctrl-Alt-F1 e poi Ctrl-Alt-F7). È un po 'più veloce di andare in bicicletta attraverso tutte le possibilità con il tasto Fn (che a volte può anche incasinare il display).