読者です 読者をやめる 読者になる 読者になる

Ubuntu 14.04 LTSでディスプレイの解像度を変えるために行ったこと

筆者のディスプレイの正しい解像度は1366*768(16:9)なのですが、先日、何かの拍子で解像度の設定がおかしくなってしまったらしく、Ubuntu(14.04 LTS, 32bit)の画面が横方向に引き伸ばされて表示されるようになってしまいました。
解像度を1366*768に戻すべく、「システムの設定」から「ディスプレイ」をクリックしてディスプレイの設定ウィンドウを開いてみると、解像度(R)と書かれている箇所に1366*768(16:9)という正しい解像度が表示されなくなっていますし、ディスプレイの名前は「不明」と表示されている。解像度(R)の欄で選択できるのは1024*768(4:3)と800*600(4:3)という2つだけになっていました。
どうしてそうなってしまったのか、という技術的な背景はよく分かりませんでしたが、色々と対策を練った結果、最終的には解像度を1366*768(16:9)という正しい値に戻すことができましたので、その方法をメモ的に掲載しておきます。
※この方法を実行して必ず解像度の問題が解決する保証はありませんし、新たな不具合が起こることもあるかもしれませんので、もしも実行される場合は充分にご注意ください。筆者は、この方法の技術的な正しさを確認できているわけではありません。

 

gedit(テキストエディタ)で下記の3行を入力し、ファイル名を .xprofile としてホームフォルダに保存。

xrandr --newmode "1366x768_60.00" 85.25 1366 1440 1576 1784 768 771 781 798 -hsync +vsync
xrandr --addmode VGA1 1366x768_60.00
xrandr --output VGA1 --mode 1366x768_60.00

これで再起動すると、Ubuntuにログインしている間は1366*768という正しい解像度で表示されます。

ただし、Ubuntuにログインする前とログアウト後は1366*768(16:9)にならず、1024*768(4:3)という解像度のままです。GRUBも1024*768で表示されます。

上記のgeditで入力すべき内容は、PCの環境ごとに違うようです。geditで入力すべき内容や.xprofileというファイルについての解説は、下記のようなページを参照してみてください。

筆者のPCはeMachines EL1850-H22C/Tという機種で、詳しい仕様

こちらに書いてあります。ディスプレイはemachines LCD MonitorのE192HQという型番のもの。Ubuntuのバージョンは14.04 LTSです。

 

ここからは、やや一般性のない話。

上記のUbuntu Japanese Wikiのページに挙げられているcvtというコマンドを使って、筆者のUbuntuの端末で

cvt 1366 768 

と入力すると、端末は

# 1368x768 59.88 Hz (CVT) hsync: 47.79 khz; pick:85.25 Mhz

Modeline "1368x768_60.00" 85.25 1368 1440 1576 1784 768 771 781 798 -hsync +vsync

という値を表示します。1366と入力したのに1368という値が返ってくる。

ここの数値を1368としたままで、端末に

xrandr --addmode VGA1 1368x768_60.00 

などと入力すると、16:9という縦横比はディスプレイで実現するのですが、筆者のPCではフォントが滲んだように見えて読みにくい。1366と1368の違いが関係しているのでしょう、おそらく。

 それが、上記のgeditを用いた3行の.xprofile作成で解決しました。

 

後日談。

上記の状態でUbuntuをしばらく使った後、筆者のUbuntuにアップデートが適用されました。すると、

  • Ubuntuにログインする前・ログアウト後も、1366*768(16:9)という正しい解像度が維持される。
  • 上記の.xprofileをホームフォルダから削除してPCを起動しても、1366*768(16:9)という解像度が維持される。
  • ディスプレイの設定ウィンドウも、正しい解像度・ディスプレイの名前を示している。(下記の画像参照)

という具合に、総じて無問題となりました。

アップデート適用後のUbuntuのバージョンは14.04.3 LTSとなっています。

f:id:ichbin:20150929113332p:plain

アップデートが適用された後の、ディスプレイの設定ウィンドウ。

 

なにぶんにも、筆者にLinuxやドライバの知識が欠けているので、技術的な解説はできません。この記事は、ただ手順をメモ的に書いただけですから、この手順が技術的に正しいのかどうか、という裏付けの有無に関してはご自身で調べてみてください。