web-dev-qa-db-ja.com

xrandrを使用して解像度を変更する際の問題:悪い一致

ディスプレイに移動しますが、最大解像度は1360x768(16:9)です。ただし、Windows 8.1では、1680x1050(16:10)の解像度で問題は発生しません。このため、xrandrを使用してカスタム解像度を追加しようとしました。

xrandr --newmode "1680x1050_60.00"  146.25  1680 1784 1960 2240  1050 1053 1059 1089 -hsync +vsync

xrandr --addmode DVI-I-0 "1680x1050_60.00"

ただし、最後のコマンドを入力すると、次のように表示されます。

X Error of failed request:  BadMatch (invalid parameter attributes)
 Major opcode of failed request:  140 (RANDR)
 Minor opcode of failed request:  18 (RRAddOutputMode)
 Serial number of failed request:  39
 Current serial number in output stream:  40

また、xrandrと入力し、DVI-I-0のみが接続されていることを確認しました。

Screen 0: minimum 8 x 8, current 1360 x 768, maximum 16384 x 16384
DVI-I-0 connected primary 1360x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x768      60.00 +
   1360x768      59.96*   59.80  
   1152x864      60.00  
   800x600       72.19    60.32    56.25  
   680x384       59.96    59.80  
   640x480       59.94  
   512x384       60.00  
   400x300       72.19  
   320x240       60.05  
DVI-I-1 disconnected (normal left inverted right x axis y axis)
HDMI-0 disconnected (normal left inverted right x axis y axis)
DP-0 disconnected (normal left inverted right x axis y axis)
DVI-D-0 disconnected (normal left inverted right x axis y axis)
DP-1 disconnected (normal left inverted right x axis y axis)
  1680x1050_60.00 (0x2ae) 146.250MHz
          h: width  1680 start 1784 end 1960 total 2240 skew    0 clock  65.29KHz
          v: height 1050 start 1053 end 1059 total 1089           clock  59.95Hz

また、Ubuntu 15.10を実行しています。

1680x1050(16:10)の解像度にするにはどうすればよいですか?助けてくれてありがとう。

編集:言うのを忘れた-Ubuntuの前に、私はLinux Mintを持っていたが、そこでも同じ問題があった。ただし、前に言ったように、Windowsではこの問題はありません。

EDIT2:次のリンクに/var/log/Xorg.0.logファイルがあります: http://Pastebin.com/sjSLScjK また、ASUSモニターがあります。

5
Jonphobos

この答えを書いている時点では、メニューバーはありません。xorg.confファイルはまだ見ていませんが、何をする必要があるかを十分に知っていると思います。メニューバーなしで通常のブートモードで実行できない場合、回復モードからxorg.confファイルに変更を加えることができます。

まず、[ 28.338] (WW) NVIDIA: GPU:0: Unable to read EDID for display device DVI-I-0警告は重要であると思いますが、何も「間違っている」とは思いません。それは、モニター、VGAケーブル、コンピューター、またはそれらの組み合わせの制限かもしれません。コンピューター、VGA、TVの組み合わせもEDIDを自動的に検出しません。

ウィキペディアには、有用なリファレンスを見つけることができるEDIDのエントリがあります。 https://en.wikipedia.org/wiki/Extended_Display_Identification_Data

Xorg.confファイルはすでに作成されていますが、完全を期すために、この回答に手順を含めます。 この質問 のAlexander Malakhovの答えに従います:

  1. コンソールモードに切り替えるには、Alt + Ctrl + F1
  2. ディスプレイマネージャーを停止してXサーバーを停止します:Sudo service gdm stop(またはLubuntuやLXDE環境がある場合はSudo service lightdm stop)。
  3. Sudo X -configurexorg.conf.newファイルを作成します
  4. Sudo mv xorg.conf.new /etc/X11/xorg.confは、ファイルの名前を変更し、xorg.confが移動する場所にファイルを移動します
  5. Sudo service gdm startまたはSudo service lightdm startは、ディスプレイマネージャーとXサーバーを再起動します。 Sudo start gdmおよびSudo start lightdmも機能します。

これで/etc/X11/xorg.confファイルが作成されました。それが今言っていることと言うべきことはあなた自身のシステムに依存します。ここで自分のxorg.confファイルの関連部分(システムに正しく構成されている)をここで共有し、それについて説明します。

しかし、最初に、それを編集する方法は?すべてが正常に機能している場合は、ターミナルを開いてSudo nano /etc/X11/xorg.confと入力して編集できます。通常のブートモードでの編集に問題がある場合は、リカバリモードで編集できます。コンピュータを起動し、grubブートメニューから[詳細オプション]を選択してから、最新のカーネルのリカバリモードを選択し、ルートシェルプロンプト。コマンドmount -o remount,rw /を入力して、すべてを読み取り/書き込み可能にする必要があります。その後、コマンドnano /etc/X11/xorg.confを使用してxorg.confファイルを編集できます(ルートシェルプロンプトモードではSudoは不要です)。 (ルートシェルプロンプトで完了したら、exitと入力し、[通常のブートを再開]を選択します。変更が有効になったかどうかを確認するには、再起動が必要になる場合があります。

このリンク は、復旧モードに関する役立つ情報を提供します。

ここに私のxorg.confファイルの関連部分がありますが、あなたのものは異なるかもしれません。ターミナルにman xorg.confと入力してxorg.confマニュアルにアクセスできます。または、 here のように、インターネット上の複数の場所で見つけることができます。 Ubuntu wikiもあります here

Section "Monitor"
    Identifier   "Monitor0"
    VendorName   "Monitor Vendor"
    ModelName    "Monitor Model"
        HorizSync       28.0 - 83.0
        VertRefresh     56.0 - 75.0
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option     "SWcursor"              # [<bool>]
        #Option     "kmsdev"                # <str>
        #Option     "ShadowFB"              # [<bool>]
    Identifier  "Card0"
    Driver      "sis"
    BusID       "PCI:1:0:0"
EndSection

Section "Screen"
    Identifier "Screen0"
    Device     "Card0"
    Monitor    "Monitor0"
    SubSection "Display"
        Viewport   0 0
        Depth     1
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     4
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     8
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     15
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     16
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     24
                 Modes     "1360x768"
    EndSubSection
EndSection

Section "Device"に正しいDriverがあると思いますが、nvidiaのようなものでなければなりません。

次に、Section "Screen"を見てみましょう。あなたは、私のように、いくつかのサブセクションを持つことができます。その場合、心配する必要があるのはDepth 24サブセクションだけです。次の行を挿入します。

Modes "1680x1050"

そのサブセクションに。お使いのコンピューターは、EDIDを使用して画面サイズを決定できなかったため、画面サイズをコンピューターに手動で通知しています。

これが機能するために必要な変更だと思います。マシンを再起動し、解像度が修正されているかどうかを確認します。

さらに変更が必要になる可能性があります。Section "Monitor"セクションでは、xorg.confのHorizSyncおよびVertRefresh行を確認できます。これらの行も必要になる場合があります。ただし、両方の行に指定する必要がある範囲は、モニターによって異なります。モニターのマニュアルをお持ちの場合は、マニュアルの裏にある「仕様」をご覧ください。マニュアルがない場合、ASUSはWebサイトでそれらを提供しているように見えますが、モニターのモデル名/番号はわかりません。モニターの背面にあるステッカーからモデル名/モデルを取得できる場合があります。

マニュアルの「仕様」セクションのどこかに、解像度と対応する水平および垂直値の一覧表があります。 HorizSyncの範囲には、使用する可能性のあるすべての解像度のすべての水平値を含める必要があります。リスト内の最小値を見つけて下限を設定し、上限をリスト内の最大値と同じにします。同様に、VertRefreshでは、垂直列の最低値と最高値を使用します(ランダムに選択したASUSマニュアルでは、これを「リフレッシュレート」と呼んでいます)。 HorizSync行とVertRefresh行を追加した場合は、保存して再起動し、問題が解決するかどうかを確認してください。

コメントで共有してください。この時点で、解決の問題が修正されます。それでも修正されない場合は、/ etc/X11/xorg.confおよび/var/log/Xorg.0.logファイルを再度確認する必要があります。

2
Jeffrey Lam