[Ubuntu18.04]ディスプレイの解像度がいきなり800x600になったお話


症状

ubuntu18.04とWindows10でデュアルブートしていて、使っていたディスプレイの解像度は1920×1080だった。
ある日起動してみると、ログイン画面から解像度がとても低く、設定画面をなんとか開くと 800x600 になってしまっていた。
しかも、設定画面からディスプレイの解像度は変更できず、800x600以外選べなくなっていた

とにかく操作がしにくい

Windows側からはディスプレイの解像度はおかしくなく、Ubuntu側の問題だと考えられる。

現状確認

とにかく現状を確認したい。
Ctrl+Alt+Tで端末を起動し、次のコマンドを叩いて認識している解像度の確認を行う。

端末
$ sudo apt-get install inxi
$ inxi -G

すると、以下のような情報が得られる。

確かに、Ubuntu側からは800x600になってしまっている。
ここで、ドライバーが違うものになっていることに気がついていればもう少し早く解決したのだが…

応急処置(無理やり直す方法)

とにかく、grubの設定を無理やり変えて解像度をかえることにした。
端末で以下のコマンドを叩いて、grubの設定を行う。
(エディターはvimでもgeditでもなんでもよいが、筆者はnanoが一番好きなのでnanoを使う)

端末
$ sudo nano /etc/default/grub

開いたファイルに以下の文を追加する。
すでにコメントアウトされている行があるのでそこを利用しても良い。

/etc/default/grub
GRUB_GFXMODE=1920x1080

grubを更新して、その後再起動をかける。

端末
$ sudo update-grub
$ reboot

ちゃんと、解像度が戻ってだいぶ操作がしやすくなった。

しかし、いまだ設定画面からディスプレイの解像度は変更できず、1920x1080以外選べない

原因とその解決法(ちゃんと直す方法)

解像度が認識できなくなった原因はなんだったのか色々探っていると、どうやらグラフィックボードのドライバが怪しいことがわかった。

グラフィックボードのドライバの確認は、「ソフトウェアとアップデート」というアプリケーションを左下の9つの点のアイコンの「アプリケーションを表示する」から開く。

「追加のドライバー」のタブを開くと、今使っているグラフィックボードのドライバを見ることができる。画像は修正した後なので検証済みの正しいドライバを選択しているが、もともとは別のドライバを選択していた。どうやら、何かの拍子にドライバが変更されていたことが原因のようだ。

こいつを正しく検証済みのやつを選択して、変更を適応してやると解像度も正しくなってくれるはずだ。
変更を適応する際、再起動したときの認証用パスワードの設定が英語で求められるが、適当に設定してやればよい。
あとは再起動すると、途中なにか出てくるが正しく解像度が認識される。

設定画面からディスプレイの解像度を選択できるようになっていた。めでたしめでたし。

参考記事

Ubuntu18.04で突然解像度がおかしくなったときの対処法