私のUbuntu 18.04 LTSシステムでは、NVIDIAのGeForce 1050 Tiを搭載したグラフィックボードを使用している。ところがこの影響なのか、サスペンドから回復(レジューム)しようとすると、システムは動いているのだが画面が回復しないという症状が発生してしまっていた。
備忘録代わりとなるが、今回いろいろと組み合わせてうまく行ったので、その方法について書いてみることにする。
まず使用しているドライバーだが、nouveauと呼ばれるオープンソースのものではなく、NVIDIA提供のプロプライアタリなものを使っている(バージョンは390系)。これを最新のものにすることで、この問題が解決するケースもあるようだ。私の場合は残念ながらうまくいかなかった。
そこで取った手は以下の通り。
(1) /etc/default/grubを書き換える。起動時に読み込まれるコマンドを記した行、GRUB_CMDLINE_LINUX_DEFAULTにいくつか書き加えて、このような感じにする。書き換えたあとは、sudo update-grubコマンドの実行を忘れずに。
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nouveau.modeset=0"
(ただし、nouveauドライバは使っていないので、ここは意味がないかも知れない)
(2) /etc/X11/xorg.confを作る。rootで何らかのエディタ(例えばgedit)を開いて、以下のような内容を足す。
Section "Device"
Identifier "Screen0"
Driver "nvidia"
VendorName "NVIDIA"
BoardName "GeForce GTX 1050 Ti"
Option "NvAGP" "1"
EndSection
ポイントはDriverの行と、最後のOptionの行である。BoardNameは自身のボードに合わせて適当なものを記入すればよい。
(3) 続いて、/etc/modprobe.d/blacklist.confを編集する。同様にrootでエディタを開いて、以下を追加する。
blacklist intel_agp
この状態で再起動する。これで、サスペンド・レジュームが有効になる(正確には復帰しても画面が真っ暗のまま、ということがなくなる)はずだが、念のため、コマンドラインから一度サスペンドをテストしてみるとよいだろう。
sudo pm-suspend