startx 提示 Arch Linux 上未找到监视器

startx 提示 Arch Linux 上未找到监视器

我昨天在笔记本电脑上安装了 Arch,从那时起我就无法打开 i3。我安装了 xorg、i3-gaps,并将我的 ~/.xinitrc 文件更改为:

xrandr --setprovideroutputsource modesetting NVIDIA-0
xrandr --auto

exec i3

但是,我无法打开 i3。每当我尝试执行 startx 时,它都会给我一个错误,说有一个致命的服务器错误,并且没有找到任何屏幕。有时它会显示以下内容:

xinit: giving up
xinit: unable to connect to X server: Connection refused
xinit: server error

但有时它不会这么说,只是在说没有找到屏幕后挂起。

这是 /var/log/Xorg.0.log 下的错误日志

[  1425.899] (WW) Failed to open protocol names file lib/xorg/protocol.txt
[  1425.900]
X.Org X Server 1.20.5
X Protocol Version 11, Revision 0
[  1425.904] Build Operating System: Linux Arch Linux
[  1425.905] Current Operating System: Linux mohammed-laptop 5.1.14-arch1-1-ARCH #1 SMP PREEMPT Sat Jun 22 16:28:48 UTC 2019 x86_64
[  1425.905] Kernel command line: BOOT_IMAGE=/vmlinuz-linux root=UUID=6557ebc3-02f1-4d88-a79d-1afb43df18c7 rw quiet
[  1425.906] Build Date: 30 May 2019  06:44:40PM
[  1425.907]  
[  1425.908] Current version of pixman: 0.38.4
[  1425.909]    Before reporting problems, check http://wiki.x.org
    to make sure that you have the latest version.
[  1425.909] Markers: (--) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[  1425.912] (==) Log file: "/var/log/Xorg.0.log", Time: Mon Jun 24 16:48:41 2019
[  1425.913] (==) Using config file: "/etc/X11/xorg.conf"
[  1425.914] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[  1425.914] (==) ServerLayout "Layout0"
[  1425.914] (**) |-->Screen "Screen0" (0)
[  1425.914] (**) |   |-->Monitor "Monitor0"
[  1425.914] (**) |   |-->Device "Device0"
[  1425.914] (**) |-->Input Device "Keyboard0"
[  1425.914] (**) |-->Input Device "Mouse0"
[  1425.914] (==) Automatically adding devices
[  1425.914] (==) Automatically enabling devices
[  1425.914] (==) Automatically adding GPU devices
[  1425.914] (==) Automatically binding GPU devices
[  1425.914] (==) Max clients allowed: 256, resource mask: 0x1fffff
[  1425.914] (WW) `fonts.dir' not found (or not valid) in "/usr/share/fonts/misc".
[  1425.914]    Entry deleted from font path.
[  1425.914]    (Run 'mkfontdir' on "/usr/share/fonts/misc").
[  1425.914] (WW) The directory "/usr/share/fonts/TTF" does not exist.
[  1425.914]    Entry deleted from font path.
[  1425.914] (WW) The directory "/usr/share/fonts/OTF" does not exist.
[  1425.914]    Entry deleted from font path.
[  1425.914] (WW) The directory "/usr/share/fonts/Type1" does not exist.
[  1425.914]    Entry deleted from font path.
[  1425.914] (==) FontPath set to:
    /usr/share/fonts/100dpi,
    /usr/share/fonts/75dpi
[  1425.914] (==) ModulePath set to "/usr/lib/xorg/modules"
[  1425.914] (WW) Hotplugging is on, devices using drivers 'kbd', 'mouse' or 'vmmouse' will be disabled.
[  1425.914] (WW) Disabling Keyboard0
[  1425.914] (WW) Disabling Mouse0
[  1425.914] (II) Module ABI versions:
[  1425.914]    X.Org ANSI C Emulation: 0.4
[  1425.914]    X.Org Video Driver: 24.0
[  1425.914]    X.Org XInput driver : 24.1
[  1425.914]    X.Org Server Extension : 10.0
[  1425.914] (++) using VT number 1

[  1425.915] (II) systemd-logind: took control of session /org/freedesktop/login1/session/_31
[  1425.916] (II) xfree86: Adding drm device (/dev/dri/card1)
[  1425.916] (II) systemd-logind: got fd for /dev/dri/card1 226:1 fd 10 paused 0
[  1425.917] (II) xfree86: Adding drm device (/dev/dri/card0)
[  1425.917] (II) systemd-logind: got fd for /dev/dri/card0 226:0 fd 11 paused 0
[  1425.919] (--) PCI:*(0@0:2:0) 8086:0416:17aa:221e rev 6, Mem @ 0xb1400000/4194304, 0xa0000000/268435456, I/O @ 0x00005000/64, BIOS @ 0x????????/131072
[  1425.919] (--) PCI: (1@0:0:0) 10de:11fc:17aa:221e rev 161, Mem @ 0xb0000000/16777216, 0x80000000/268435456, 0x90000000/33554432, I/O @ 0x00004000/128, BIOS @ 0x????????/524288
[  1425.919] (WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory)
[  1425.919] (II) LoadModule: "glx"
[  1425.919] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[  1425.920] (II) Module glx: vendor="X.Org Foundation"
[  1425.920]    compiled for 1.20.5, module version = 1.0.0
[  1425.920]    ABI class: X.Org Server Extension, version 10.0
[  1425.920] (II) LoadModule: "nvidia"
[  1425.920] (II) Loading /usr/lib/xorg/modules/drivers/nvidia_drv.so
[  1425.920] (II) Module nvidia: vendor="NVIDIA Corporation"
[  1425.920]    compiled for 1.6.99.901, module version = 1.0.0
[  1425.920]    Module class: X.Org Video Driver
[  1425.920] (II) NVIDIA dlloader X Driver  430.26  Tue Jun  4 17:52:10 CDT 2019
[  1425.920] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
[  1425.920] (II) systemd-logind: releasing fd for 226:1
[  1425.921] (II) Loading sub module "fb"
[  1425.921] (II) LoadModule: "fb"
[  1425.921] (II) Loading /usr/lib/xorg/modules/libfb.so
[  1425.921] (II) Module fb: vendor="X.Org Foundation"
[  1425.921]    compiled for 1.20.5, module version = 1.0.0
[  1425.921]    ABI class: X.Org ANSI C Emulation, version 0.4
[  1425.921] (II) Loading sub module "wfb"
[  1425.921] (II) LoadModule: "wfb"
[  1425.921] (II) Loading /usr/lib/xorg/modules/libwfb.so
[  1425.921] (II) Module wfb: vendor="X.Org Foundation"
[  1425.921]    compiled for 1.20.5, module version = 1.0.0
[  1425.921]    ABI class: X.Org ANSI C Emulation, version 0.4
[  1425.921] (II) Loading sub module "ramdac"
[  1425.921] (II) LoadModule: "ramdac"
[  1425.921] (II) Module "ramdac" already built-in
[  1425.921] (**) NVIDIA(0): Depth 24, (--) framebuffer bpp 32
[  1425.921] (==) NVIDIA(0): RGB weight 888
[  1425.921] (==) NVIDIA(0): Default visual is TrueColor
[  1425.921] (==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
[  1425.921] (**) NVIDIA(0): Enabling 2D acceleration
[  1425.921] (II) Loading sub module "glxserver_nvidia"
[  1425.921] (II) LoadModule: "glxserver_nvidia"
[  1425.921] (WW) Warning, couldn't open module glxserver_nvidia
[  1425.921] (EE) NVIDIA: Failed to load module "glxserver_nvidia" (module does not exist, 0)
[  1425.921] (EE) NVIDIA(0): Failed to initialize the GLX module; please check in your X
[  1425.921] (EE) NVIDIA(0):     log file that the GLX module has been loaded in your X
[  1425.921] (EE) NVIDIA(0):     server, and that the module is the NVIDIA GLX module.  If
[  1425.921] (EE) NVIDIA(0):     you continue to encounter problems, Please try
[  1425.921] (EE) NVIDIA(0):     reinstalling the NVIDIA driver.
[  1426.074] (--) NVIDIA(0): Valid display device(s) on GPU-0 at PCI:1:0:0
[  1426.074] (--) NVIDIA(0):     DFP-0
[  1426.074] (--) NVIDIA(0):     DFP-1
[  1426.075] (II) NVIDIA(0): NVIDIA GPU Quadro K2100M (GK106GL) at PCI:1:0:0 (GPU-0)
[  1426.075] (--) NVIDIA(0): Memory: 2097152 kBytes
[  1426.075] (--) NVIDIA(0): VideoBIOS: 80.06.63.00.1a
[  1426.075] (II) NVIDIA(0): Detected PCI Express Link width: 16X
[  1426.075] (--) NVIDIA(GPU-0): DFP-0: disconnected
[  1426.075] (--) NVIDIA(GPU-0): DFP-0: Internal TMDS
[  1426.075] (--) NVIDIA(GPU-0): DFP-0: 165.0 MHz maximum pixel clock
[  1426.075] (--) NVIDIA(GPU-0):
[  1426.075] (--) NVIDIA(GPU-0): DFP-1: disconnected
[  1426.075] (--) NVIDIA(GPU-0): DFP-1: Internal DisplayPort
[  1426.075] (--) NVIDIA(GPU-0): DFP-1: 960.0 MHz maximum pixel clock
[  1426.075] (--) NVIDIA(GPU-0):
[  1426.075] (EE) NVIDIA(0): Failed to assign any connected display devices to X screen 0.
[  1426.075] (EE) NVIDIA(0):     Set AllowEmptyInitialConfiguration if you want the server
[  1426.075] (EE) NVIDIA(0):     to start anyway
[  1426.075] (EE) NVIDIA(0): Failing initialization of X screen
[  1426.107] (II) UnloadModule: "nvidia"
[  1426.107] (II) UnloadSubModule: "wfb"
[  1426.107] (II) UnloadSubModule: "fb"
[  1426.107] (EE) Screen(s) found, but none have a usable configuration.
[  1426.107] (EE)
Fatal server error:
[  1426.107] (EE) no screens found(EE)
[  1426.107] (EE)
Please consult the The X.Org Foundation support
     at http://wiki.x.org
 for help.
[  1426.107] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[  1426.107] (EE)
[  1426.117] (EE) Server terminated with error (1). Closing log file.

我运行了 xrandr,但它告诉我无法打开显示。我猜想这可能是因为 xorg 没有自动配置,所以我重新安装了它,但仍然不起作用。所以我添加了:

Section "Device"
    Identifier             "Screen0"
    Driver                 "nouveau"
    BusID                  "PCI:0:12:0"
EndSection
Section "Monitor"
    Identifier             "dummy_monitor"
    HorizSync              28.0-80.0
    VertRefresh            60.0
    Modeline               "1920x1080" 172.80 1920 2040 2248 2576 1080 1081 1084 1118
EndSection

然后,我得到了另一个错误,提示“无法设置 I/O 的 IOPL(不允许操作)”,然后出现了相同的错误,提示未找到任何屏幕,日志文件位于不同的位置。这次它说的是以下内容:

[   240.358] (WW) Failed to open protocol names file lib/xorg/protocol.txt
[   240.358] 
X.Org X Server 1.20.5
X Protocol Version 11, Revision 0
[   240.359] Build Operating System: Linux Arch Linux
[   240.360] Current Operating System: Linux mohammed-laptop 5.1.14-arch1-1-ARCH #1 SMP PREEMPT Sat Jun 22 16:28:48 UTC 2019 x86_64
[   240.360] Kernel command line: BOOT_IMAGE=/vmlinuz-linux root=UUID=6557ebc3-02f1-4d88-a79d-1afb43df18c7 rw quiet
[   240.361] Build Date: 30 May 2019  06:44:40PM
[   240.361]  
[   240.362] Current version of pixman: 0.38.4
[   240.363]    Before reporting problems, check http://wiki.x.org
    to make sure that you have the latest version.
[   240.363] Markers: (--) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[   240.365] (==) Log file: "/home/mohammed/.local/share/xorg/Xorg.0.log", Time: Mon Jun 24 19:08:52 2019
[   240.366] (==) Using config file: "/etc/X11/xorg.conf"
[   240.367] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[   240.367] (==) ServerLayout "Layout0"
[   240.367] (**) |-->Screen "Screen0" (0)
[   240.367] (**) |   |-->Monitor "Monitor0"
[   240.367] (**) |   |-->Device "Device0"
[   240.367] (**) |   |-->GPUDevice "Device0"
[   240.367] (**) |-->Input Device "Keyboard0"
[   240.367] (**) |-->Input Device "Mouse0"
[   240.367] (==) Automatically adding devices
[   240.367] (==) Automatically enabling devices
[   240.367] (==) Automatically adding GPU devices
[   240.367] (==) Automatically binding GPU devices
[   240.367] (==) Max clients allowed: 256, resource mask: 0x1fffff
[   240.367] (WW) `fonts.dir' not found (or not valid) in "/usr/share/fonts/misc".
[   240.367]    Entry deleted from font path.
[   240.367]    (Run 'mkfontdir' on "/usr/share/fonts/misc").
[   240.367] (WW) The directory "/usr/share/fonts/TTF" does not exist.
[   240.367]    Entry deleted from font path.
[   240.367] (WW) The directory "/usr/share/fonts/OTF" does not exist.
[   240.367]    Entry deleted from font path.
[   240.367] (WW) The directory "/usr/share/fonts/Type1" does not exist.
[   240.367]    Entry deleted from font path.
[   240.367] (==) FontPath set to:
    /usr/share/fonts/100dpi,
    /usr/share/fonts/75dpi
[   240.367] (==) ModulePath set to "/usr/lib/xorg/modules"
[   240.367] (WW) Hotplugging is on, devices using drivers 'kbd', 'mouse' or 'vmmouse' will be disabled.
[   240.367] (WW) Disabling Keyboard0
[   240.367] (WW) Disabling Mouse0
[   240.367] (II) Module ABI versions:
[   240.367]    X.Org ANSI C Emulation: 0.4
[   240.367]    X.Org Video Driver: 24.0
[   240.367]    X.Org XInput driver : 24.1
[   240.367]    X.Org Server Extension : 10.0
[   240.368] (++) using VT number 1

[   240.369] (II) systemd-logind: took control of session /org/freedesktop/login1/session/_31
[   240.370] (II) xfree86: Adding drm device (/dev/dri/card0)
[   240.371] (II) systemd-logind: got fd for /dev/dri/card0 226:0 fd 10 paused 0
[   240.372] (--) PCI:*(0@0:2:0) 8086:0416:17aa:221e rev 6, Mem @ 0xb1400000/4194304, 0xa0000000/268435456, I/O @ 0x00005000/64, BIOS @ 0x????????/131072
[   240.372] (--) PCI: (1@0:0:0) 10de:11fc:17aa:221e rev 161, Mem @ 0xb0000000/16777216, 0x80000000/268435456, 0x90000000/33554432, I/O @ 0x00004000/128, BIOS @ 0x????????/524288
[   240.372] (WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory)
[   240.372] (II) LoadModule: "glx"
[   240.372] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[   240.373] (II) Module glx: vendor="X.Org Foundation"
[   240.373]    compiled for 1.20.5, module version = 1.0.0
[   240.373]    ABI class: X.Org Server Extension, version 10.0
[   240.373] (II) LoadModule: "nvidia"
[   240.373] (II) Loading /usr/lib/xorg/modules/drivers/nvidia_drv.so
[   240.374] (II) Module nvidia: vendor="NVIDIA Corporation"
[   240.374]    compiled for 1.6.99.901, module version = 1.0.0
[   240.374]    Module class: X.Org Video Driver
[   240.374] (II) NVIDIA dlloader X Driver  430.26  Tue Jun  4 17:52:10 CDT 2019
[   240.374] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
[   240.374] xf86EnableIOPorts: failed to set IOPL for I/O (Operation not permitted)
[   240.374] (EE) No devices detected.
[   240.374] (EE) 
Fatal server error:
[   240.374] (EE) no screens found(EE) 
[   240.374] (EE) 
Please consult the The X.Org Foundation support 
     at http://wiki.x.org
 for help. 
[   240.374] (EE) Please also check the log file at "/home/mohammed/.local/share/xorg/Xorg.0.log" for additional information.
[   240.374] (EE) 
[   240.397] (EE) Server terminated with error (1). Closing log file.

我应该怎么办?

答案1

你遇到的问题是由于X识别卡 (显然) 位于 2 个不同的插槽中。您似乎得到不同结果的原因是X探测器正在选择一张卡或另一张卡。

你可以选择几个不同的方向;

  • 删除(注释)您选择的插槽,并查看X[1] 是否选择了通过活动端口探测的卡(连接到您的显示器)
  • 注释掉配置中的插槽,并声明另一个

这是你的日志中的条目,表明了我正在谈论的内容

[  1425.919] (--) PCI:*(0@0:2:0) 8086:0416:17aa:221e rev 6, Mem @ 0xb1400000/4194304, 0xa0000000/268435456, I/O @ 0x00005000/64, BIOS @ 0x????????/131072
[  1425.919] (--) PCI: (1@0:0:0) 10de:11fc:17aa:221e rev 161, Mem @ 0xb0000000/16777216, 0x80000000/268435456, 0x90000000/33554432, I/O @ 0x00004000/128, BIOS @ 0x????????/524288

最后,你应该尝试在配置文件中放入尽可能少的东西。AsX已经非常擅长做出所有正确的选择。

换句话说,只有当结果不尽如人意时才进行添加。:)

1)之前

    BusID                  "PCI:0:12:0"

#    BusID                  "PCI:0:12:0"

答案2

您已将 Xorg 配置为使用,但你的启动日志显示它正在尝试使用专有英伟达驱动程序。您不能将两者混为一谈。

卸载英伟达驱动程序,删除所有 Xorg 配置,然后重试。(如果您使用 nvidia,它将提供自己的配置。如果您使用 nouveau,Xorg 将自动检测设备而无需任何手动配置。)

相关内容