![Xserver は外部モニターを検出しますが、ラップトップの内蔵モニターは検出しません](https://rvso.com/image/1072172/Xserver%20%E3%81%AF%E5%A4%96%E9%83%A8%E3%83%A2%E3%83%8B%E3%82%BF%E3%83%BC%E3%82%92%E6%A4%9C%E5%87%BA%E3%81%97%E3%81%BE%E3%81%99%E3%81%8C%E3%80%81%E3%83%A9%E3%83%83%E3%83%97%E3%83%88%E3%83%83%E3%83%97%E3%81%AE%E5%86%85%E8%94%B5%E3%83%A2%E3%83%8B%E3%82%BF%E3%83%BC%E3%81%AF%E6%A4%9C%E5%87%BA%E3%81%97%E3%81%BE%E3%81%9B%E3%82%93.png)
私は Ubuntu 22.04 を搭載した Lenovo Legion 5 を使用しています (Ubuntu 20.04 でも同じ問題が発生し、22.04 にアップグレードすれば問題が解決することを期待していましたが、解決しませんでした)。外部モニター 2 台とラップトップの画面です。
ノームと一緒に。
コンピュータを起動すると、起動が gnome のログインに達するまで (つまり、X サーバーまで) 外部モニターは非アクティブになり、その後、ラップトップ モニターはログイン画面で「進行中のすべてのファイルシステム チェックをキャンセルするには、Ctrl + C を押してください」と表示されたまま停止し、外部モニターが検出されて gnome が表示されます。
Ctrl + Alt + F3 を押してターミナルを起動すると、ラップトップの画面にターミナルが表示され、Ctrl + Alt + F1 で X サーバーに戻ると、ターミナルが外部モニターに表示されます。
私はAMDとNVIDIAのグラフィックカード/GPUを持っています:
sudo lshw -C display
与える
*-display
description: VGA compatible controller
product: GA106M [GeForce RTX 3060 Mobile / Max-Q]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01:00.0
version: a1
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
configuration: driver=nvidia latency=0
resources: iomemory:fa0-f9f iomemory:fc0-fbf irq:93 memory:d0000000-d0ffffff memory:fa00000000-fbffffffff memory:fc00000000-fc01ffffff ioport:3000(size=128) memory:d1080000-d10fffff
*-display UNCLAIMED
description: VGA compatible controller
product: Cezanne
vendor: Advanced Micro Devices, Inc. [AMD/ATI]
physical id: 0
bus info: pci@0000:05:00.0
version: c6
width: 64 bits
clock: 33MHz
capabilities: pm pciexpress msi msix vga_controller bus_master cap_list
configuration: latency=0
resources: iomemory:fc0-fbf iomemory:fc0-fbf memory:fc10000000-fc1fffffff memory:fc20000000-fc201fffff ioport:1000(size=256) memory:d1500000-d157ffff
*-graphics
product: EFI VGA
physical id: 2
logical name: /dev/fb0
capabilities: fb
configuration: depth=32 resolution=1920,1080
興味深いことに、私がsudo X -configure
そうすると
X.Org X Server 1.21.1.3
X Protocol Version 11, Revision 0
Current Operating System: Linux ntb048 5.15.0-37-generic #39-Ubuntu SMP Wed Jun 1 19:16:45 UTC 2022 x86_64
Kernel command line: BOOT_IMAGE=/vmlinuz-5.15.0-37-generic root=/dev/mapper/vgubuntu-root ro quiet splash vt.handoff=7
xorg-server 2:21.1.3-2ubuntu2 (For technical support please see http://www.ubuntu.com/support)
Current version of pixman: 0.40.0
Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Fri Jun 10 18:32:04 2022
List of video drivers:
amdgpu
ati
intel
nouveau
qxl
radeon
vmware
modesetting
fbdev
vesa
(++) Using config file: "/root/xorg.conf.new"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
(II) AMDGPU(0): [KMS] Kernel modesetting enabled.
Number of created screens does not match number of detected devices.
Configuration failed.
(EE) Server terminated with error (2). Closing log file.
ファイルがありません/etc/X11/xorg.conf
。興味深いことに、/etc/X11/xorg.conf
次の内容のファイルを作成すると、
Section "ServerLayout"
Identifier "Layout0"
Option "AutoAddGPU" "false"
Screen 0 "IntelScreen"
EndSection
Section "Device"
Identifier "IntelDevice"
BusID "PCI:0:2:0"
Driver "intel" # or maybe "modesetting"?
EndSection
Section "Screen"
Identifier "IntelScreen"
Device "IntelDevice"
EndSection
その後、外部モニターは検出されなくなりますが、ラップトップの画面は動作し、xserver によって検出されます。
外部モニターが動作するには NVIDIA ドライバーが必要で、ラップトップ スクリーンが動作するには NVIDIA 以外のドライバーが必要であるような気がしますが、それを実現する方法がわかりません。
また、以下の内容も役に立つかもしれませ/root/xorg.conf.new
ん
Section "ServerLayout"
Identifier "X.org Configured"
Screen 0 "Screen0" 0 0
Screen 1 "Screen1" RightOf "Screen0"
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
EndSection
Section "Files"
ModulePath "/usr/lib/xorg/modules"
FontPath "/usr/share/fonts/X11/misc"
FontPath "/usr/share/fonts/X11/cyrillic"
FontPath "/usr/share/fonts/X11/100dpi/:unscaled"
FontPath "/usr/share/fonts/X11/75dpi/:unscaled"
FontPath "/usr/share/fonts/X11/Type1"
FontPath "/usr/share/fonts/X11/100dpi"
FontPath "/usr/share/fonts/X11/75dpi"
FontPath "built-ins"
EndSection
Section "Module"
Load "glx"
EndSection
Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/input/mice"
Option "ZAxisMapping" "4 5 6 7"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Monitor Model"
EndSection
Section "Monitor"
Identifier "Monitor1"
VendorName "Monitor Vendor"
ModelName "Monitor Model"
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 "Accel" # [<bool>]
#Option "SWcursor" # [<bool>]
#Option "EnablePageFlip" # [<bool>]
#Option "SubPixelOrder" # [<str>]
#Option "ZaphodHeads" # <str>
#Option "AccelMethod" # <str>
#Option "DRI3" # [<bool>]
#Option "DRI" # <i>
#Option "ShadowPrimary" # [<bool>]
#Option "TearFree" # [<bool>]
#Option "DeleteUnusedDP12Displays" # [<bool>]
#Option "VariableRefresh" # [<bool>]
#Option "AsyncFlipSecondaries" # [<bool>]
Identifier "Card0"
Driver "amdgpu"
BusID "PCI:5:0: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 "HWcursor" # [<bool>]
#Option "NoAccel" # [<bool>]
#Option "ShadowFB" # [<bool>]
#Option "VideoKey" # <i>
#Option "WrappedFB" # [<bool>]
#Option "GLXVBlank" # [<bool>]
#Option "ZaphodHeads" # <str>
#Option "PageFlip" # [<bool>]
#Option "SwapLimit" # <i>
#Option "AsyncUTSDFS" # [<bool>]
#Option "AccelMethod" # <str>
#Option "DRI" # <i>
Identifier "Card1"
Driver "nouveau"
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
EndSubSection
EndSection
Section "Screen"
Identifier "Screen1"
Device "Card1"
Monitor "Monitor1"
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
EndSubSection
EndSection
また、私が実行すると、sudo xrandr
2 つの画面しか検出されないようです。
Screen 0: minimum 8 x 8, current 4000 x 2560, maximum 32767 x 32767
DP-0 connected primary 1440x2560+2560+0 left (normal left inverted right x axis y axis) 597mm x 336mm
2560x1440 59.95*+
2048x1080 60.00 24.00
1920x1080 60.00 59.94 50.00
1600x1200 60.00
1280x1024 75.02 60.02
1280x720 60.00 59.94 50.00
1152x864 75.00
1024x768 75.03 60.00
800x600 75.00 60.32
720x576 50.00
720x480 59.94
640x480 75.00 59.94 59.93
DP-1 disconnected (normal left inverted right x axis y axis)
DP-2 disconnected (normal left inverted right x axis y axis)
DP-3 disconnected (normal left inverted right x axis y axis)
HDMI-0 connected 2560x1440+0+0 (normal left inverted right x axis y axis) 597mm x 336mm
2560x1440 59.95*+
2048x1080 60.00 24.00
1920x1080 60.00 59.94 50.00
1600x1200 60.00
1280x1024 75.02 60.02
1280x720 60.00 59.94 50.00
1152x864 75.00
1024x768 75.03 60.00
800x600 75.00 60.32
720x576 50.00
720x480 59.94
640x480 75.00 59.94 59.93
DP-4 disconnected (normal left inverted right x axis y axis)
あらゆる助けに大いに感謝します。
答え1
わかりました。私の Dell 外部モニターは NVIDIA グラフィック カードでのみ動作しますが、ラップトップの内蔵モニターは NVIDIA グラフィック カードなしでのみ動作するようです。
何が問題を解決したのかはわかりません。しかし、次の 3 つのことを行ったところ、問題は解決しました。
まず、私のドライバーはブラックリストに登録されていたようだったamdgpu
ので、次のようにブラックリストから外す必要がありました。
sudo rm /etc/modprobe.d/blacklist-amdgpu.conf
次に、NVIDIA カードを使用していることを確認する必要がありました。
sudo prime-select on-demand
次に、nvidia cuda ツールキットもインストールしました。
sudo apt install nvidia-cuda-toolkit
(理由は分かりませんし、必要だったかどうかも分かりません)。
/root/xorg.conf.new
変更されていないように見えますが、 の出力にsudo lshw -C display
はもうありませんUNCLAIMED
:
*-display
description: VGA compatible controller
product: GA106M [GeForce RTX 3060 Mobile / Max-Q]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01:00.0
logical name: /dev/fb0
version: a1
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress vga_controller bus_master cap_list rom fb
configuration: depth=32 driver=nvidia latency=0 mode=1920x1080 visual=truecolor xres=1920 yres=1080
resources: iomemory:fa0-f9f iomemory:fc0-fbf irq:77 memory:d0000000-d0ffffff memory:fa00000000-fbffffffff memory:fc00000000-fc01ffffff ioport:3000(size=128) memory:d1080000-d10fffff
*-display
description: VGA compatible controller
product: Cezanne
vendor: Advanced Micro Devices, Inc. [AMD/ATI]
physical id: 0
bus info: pci@0000:05:00.0
logical name: /dev/fb0
version: c6
width: 64 bits
clock: 33MHz
capabilities: pm pciexpress msi msix vga_controller bus_master cap_list fb
configuration: depth=32 driver=amdgpu latency=0 resolution=1920,1080
resources: iomemory:fc0-fbf iomemory:fc0-fbf irq:49 memory:fc10000000-fc1fffffff memory:fc20000000-fc201fffff ioport:1000(size=256) memory:d1500000-d157ffff
他に必要だったかもしれないものは以下のとおりです。
- 次の操作を約 50 万回実行します。
sudo apt purge 'nvidia*'
sudo ubuntu-drivers autoinstall
実行後に(ではなく)/lib/modprobe.d/nvidia-kms.conf
に編集するoptions nvidia-drm modeset=0
1
sudo prime-select nvidia/intel/on-demand
3)
amdgpuドライバがインストールされ、/etc/modules
またはとして
echo radeon > /etc/modules
追加 されるようにしますecho amdgpu > /etc/modules
関連する問題:
Ubuntu 20.04 は 2 番目のモニターを認識しません
https://www.reddit.com/r/Dell/comments/o6ivru/problem_with_dell_g15_ryzen_edition_when_running/