ウェブサイト検索

Ubuntu Wayland および Xorg でカスタムスクリーン解像度を設定する方法


Ubuntu 21.04はWaylandをデフォルトのディスプレイサーバーとして使用しているため、カスタムスクリーン解像度を追加するための以前のxrandrを使用した方法はもはや機能しません。

このチュートリアルでは、表示設定にお気に入りの画面解像度がない場合にそれを追加する別の方法を示します。

その場合、私はデフォルトの1920X1080(16:9)の解像度を使用しています。ただし、設定にはない1600X900(16:9)の方が少し好みです。

始める前に:

このチュートリアルでは、カーネルパラメータとしてビデオモードオプションを追加します。良い点は、WaylandとXorgの両方で機能することです。

欠点には以下が含まれます:

  • ディスプレイ設定で最大解像度より高いカスタム解像度を設定することはできません。私の場合(上の画像を参照)、X解像度は1920未満でなければならず、Y解像度は1080未満でなければなりません。
  • デュアルブートまたはマルチブートシステムがある場合、以下の手順はGrubブートメニューの「他のLinux」には適用されない可能性があります。例えば、私のラップトップにはUbuntu 21.04とUbuntu 20.04がデュアルブートされていますが、起動ブートメニューはUbuntu 21.04のためにGrubによって処理されています。Ubuntu 21.04は最初のメニューエントリとしてリストされており、カスタムカーネルパラメータは私のケースではUbuntu 20.04では機能しません。

パラメーターを追加した後、カスタム解像度が表示設定に表示されるはずです。例えば、1600×900のように:

Ubuntuで表示デバイス名を確認する方法:

まず最初に、現在の表示名を確認する必要があります。そのためには、システムアプリケーションランチャーからターミナルを開いてください。

ターミナルが開いたら、コマンドを実行します:

for p in /sys/class/drm/*/status; do con=$ {p%/status}; \
echo -n "$ {con#*/card?-}: "; cat $p; done

これは2行に分かれた単一のコマンドです。 /sys/class/drmディレクトリのすべてのサブフォルダーをチェックします。サブフォルダーにstatusファイルが含まれ、その内容がconnectedである場合、'card?-'部分を除いたフォルダー名は我々が必要とするデバイス名です。

画像が示すように、私のケースでは eDP-1 です。

ファイルを編集しないでください

ビデオモードカーネルパラメーターの追加方法:

オプション 1.) Grub 設定ファイルを編集します。

a.) システムアプリランチャーからターミナルを開きます。開いたら、設定ファイルを編集するためのコマンドを実行します:

sudo gedit /etc/default/grub

Ubuntuベースのシステムでは、geditを他のテキストエディタに置き換えることができます。

開いたら、私の場合は「GRUB_CMDLINE_LINUX_DEFAULT」の値としてvideo=eDP-1:1600×900@60を追加します。

重要: あなたはvideo=eDP-1:1600×900@60を置き換えなければなりません:

  • eDP-1はディスプレイデバイス名です。前のステップで見つけることができます。
  • 1600×900は望ましい画面解像度です。自分のものに置き換えてください。
  • 60はリフレッシュレートです。スキップしても大丈夫なので、video=eDP-1:1600×900になります。

ビデオモードのカーネルパラメータには、さらに多くのフラグがあります。詳細についてはドキュメントを参照してください。

b.) 最後に、コマンドを実行して変更を適用します:

sudo update-grub

再起動してください。

オプション 2.) Grub Customizerを使用する:

Grub-Customizer、この人気のあるグラフィカルツールは、カーネルパラメータを追加するオプションを提供します。

まだインストールしていない場合は、Ubuntu Softwareからインストールしてください。それから、起動して一般設定タブに移動します。最後に、値を追加して保存ボタンをクリックします。

複数のディスプレイのカスタム解像度を設定する:

Ubuntuマシンに複数のモニターが接続されている場合、すべてのディスプレイに同じ画面解像度を設定することは問題ありません。または、各ディスプレイ用に複数の「video=」パラメータを使用することもできます。

a.) すべてのディスプレイに同じ画面解像度を設定するには、デバイス名を省略してください。例えば:

video=1600x900@60

すべての接続されたディスプレイに対して、60 Hzのリフレッシュレートで1600×900の画面解像度が追加されます。

b.) より多くの「video=」パラメーターを追加します。例えば、私には二つのディスプレイ、eDP-1とDP-1が接続されています。そして、eDP-1に1360×700、DP-1に1600×900を追加するには、次のようにします:

video=eDP-1:1360x700@60 video=DP-1:1600x900@60

それだけです。楽しんでください!

関連記事: