コンピューター好きのブログ

主にコンピューター・ラズパイと電子工作・オーディオ関連の記事を書いています。

低解像度のモニターをLinuxで使う方法

いやー最近のLinuxは高解像度(XGA:1024x768以上)のモニターを使っていることを前提としていて困りますね。しかもシステム要件に書かれていないことが多い。

ま、我ながら今どき1024x768を高解像度と言うのもどうかと思いますが。。

 

今、手元に800x600でD-sub接続が可能なアナログ液晶テレビがあり、何とかLinuxから800x600の画面を出力することができたので、手順を以下に記したいと思います。

モニターの素性

TECO社製20インチアナログ液晶テレビ TL2004FM です。

大昔、ジャスコで買いました。確か7万円くらいしたかと。液晶テレビが出始めのころ、液晶テレビを使ってみたいという理由だけで衝動買いしました。

7万円出せば今なら4Kテレビが余裕で買えちゃいますね(^_^;)

接続するPC

EPSON AT970 です。スペックは以下です。

CPU:Intel Celeron E2200

メモリ:DDR2 2GB

HDD:2.5インチ 160GB(PS3についていたもの)

グラフィック:Intel GMA 3100

かなーりしょぼいですね。はい。

LinuxディストリビューションはDebianを選択

最初にインストールを試みたのはLubuntu 18.04 LTSでしたが、まったく画面が映らず。。

Lubuntuを速攻あきらめ、より素に近い方がよいかもと次に試したのはDebian 10(buster)です。

 

こちらはカーネルをロードするところまでは画面が表示されたので、「おっいけるかな?」と思いましたが、その後はダメでした。

でもインストール時にsshを追加しておいたら、他のPCからsshで入って操作できたので、いろいろやってみたところ何とかコンソール(CUI)と X Window(GUI)で表示できるようになりました。

CUIの解像度を変更する

まずはGUIの前に表示されるCUIの解像度を変更します。手順は以下です。

なお、以降の手順はすべてrootユーザーで行います。

/etc/default/grubを変更する

下記のように変更します。

変更前:

GRUB_CMDLINE_LINUX_DEFAULT="quiet"

変更後:

GRUB_CMDLINE_LINUX_DEFAULT="nomodeset"
GRUB_CMDLINE_LINUX="video=800x600"

grubを更新する

以下のコマンドでgrubを更新します。

update-grub2

 再起動する

以下のコマンドで再起動します。

shutdown -r now

再起動後、CUI画面は800x600で表示されます。

GUIの解像度を変更する

こちらはコマンドで変更する方法がわかりませんでした。しかし、なぜかコンソールの解像度を変更したら、かなり乱れているものの、画面が映りました。(1024x768で表示している模様)

このため、なんとかマウス操作で変更しました。やり方は以下です。ウィンドウマネージャーは MATE です。

  1. 画面上メニューの「システム」→「設定」→「ハードウェア」→「ディスプレイ」を起動
  2. 「解像度」から「800x600」を選択→「適用」を押下
  3. 問題なく表示されたら「この設定のままにする」を押下
  4. 「システム全体に適用」を押下して全ユーザーの設定に反映

ログイン画面の解像度を変更する

上のマウス操作で通常のGUI画面は問題なく表示されるようになりました。

FireFoxでAmazon Primeの動画を見ても問題ありません。

モニターに800x600で表示されたところ

モニターに800x600で表示されたところ

しかし、GUIで最初に表示されるログイン画面は通常のGUI画面とは別の設定らしく、画面が乱れたままです。調べたところ lightdm を使っているとのこと。

そこで以下のように設定することでログイン画面も800x600で表示されました。

解像度を変更するシェルファイルを作る

私は /etc/lightdm/lightdm_dspchg.sh という名前で下記内容のファイルを作りました。任意の場所に任意の名前で作って問題ありません。

#!/bin/sh

xrandr --output default --mode 800x600

シェルファイルに実行権をつける

以下のコマンドでシェルファイルに実行権をつけます。

chmod +x /etc/lightdm/lightdm_dspchg.sh

lightdm起動時にシェルファイルを実行させる

/etc/lightdm/lightdm.conf を下記のように変更します。

変更前:

#display-setup-script=

変更後:

display-setup-script=/etc/lightdm/lightdm_dspchg.sh

 これでマシンを再起動すると有効になります。

 

以上、低解像度のモニターをLinuxで使う方法でした。

今時、低解像度のモニターを使うことはあまりないと思いますが、誰かのお役に立てれば幸いです。

 

(c) 2018 toomath