AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 703021
Accepted
CaptAlgorithm
CaptAlgorithm
Asked: 2022-05-19 06:00:37 +0800 CST2022-05-19 06:00:37 +0800 CST 2022-05-19 06:00:37 +0800 CST

为所有用户设置特定的视频配置(RHEL 7.9 和 nVidia RTX4000 w/nvidia 驱动程序)

  • 772

前面的底线:我需要在 RHEL 中的哪个位置定义适用于工作站所有用户的视频配置?

我的硬件设置是驱动“标准”显示器和一些视频转换硬件的 nVidia RTX4000。我的工作站正在运行 RHEL 7.9 并使用 nvidia 专有驱动程序。每个“显示器”都由视频卡的 DisplayPort 输出之一驱动。我想以 1920x1200(面板的原始分辨率)驱动显示器,我需要以 1280x1024 驱动视频转换器,即使它的最大分辨率更高(这是不可协商的 - 下游的图像必须是 1280x1024加工)。我想要的设置是水平单桌面,左侧是 1920x1200 显示器,右侧是 1280x1024 视频转换器,顶部对齐。

此外,由于视频转换器输出并不总是可见的,因此任何 Gnome 之前的桌面显示(GRUB、LUKS 密码、X-windows 登录提示)都必须专门针对真实监视器进行显示,这一点很重要。

显示器插入“最上面”的 DP 端口(即离卡边缘最远的那个),而视频转换器插入“中间”DP 端口(即下一个向下)。剩下的DP口和USB-C口没有连接。

作为进一步的要求,此配置必须透明、自动且不费力地(甚至不是“一次性”的努力)应用于登录到此工作站的任何人。换句话说,它应该可以正常工作。

我试图使用 /etc/X11/xorg.conf 来实现这些目标:

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0"
EndSection

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "HP"
    ModelName      "Z24n G2"
    Option         "DPMS"
    Option         "PreferredMode" "1920x1200"
    Option         "Primary"
EndSection

Section "Monitor"
    Identifier     "Monitor1"
    VendorName     "VidCon"
    ModelName      "Video Converter"
    Option         "DPMS"
    Option         "PreferredMode" "1280x1024"
EndSection

Section "Device"
    Identifier     "nvidia0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    Screen         0
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "nvidia0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "MetaModes" "DFP-2: 1920x1200+0+0, DFP-0: 1280x1024+1920+0"
EndSection

(xrandr -q 输出列出了 DP-2 上的真实显示器,以及 DP-0 上的视频转换器,这似乎与所使用的物理端口相反。我发现我必须在 MetaModes 选项中使用 DFP 而不是 DP)

一旦用户登录,这似乎就可以工作。但是,对于 GRUB/LUKS/桌面登录提示是否会出现在监视器上,或者被定向到视频转换器,这有点麻烦。

我还尝试了 /var/lib/gdm/.config/monitors.xml 解决方案(使用交互式设置正确,然后将生成的 monitor.xml 复制到 GDM“主”位置),但这似乎没有有所作为。

所以,最终我的问题是,我需要在哪里设置 RHEL 以使其尊重和应用设置?

rhel nvidia
  • 1 1 个回答
  • 73 Views

1 个回答

  • Voted
  1. Best Answer
    CaptAlgorithm
    2022-06-11T07:00:05+08:002022-06-11T07:00:05+08:00

    上述问题陈述中省略了一个额外的限制,即视频转换硬件的输入需要处于 60 Hz 刷新率。默认情况下,驱动程序选择 85 Hz,因此也需要强制。

    对于我的设置,以下 xorg.conf 似乎有效:

    Section "ServerLayout"
        Identifier     "layout0"
        Screen         0  "screen0" 0 0
    EndSection
    
    Section "Monitor"
        Identifier     "monitor0"
        VendorName     "HP"
        ModelName      "Z24n G3"
        Option         "DPMS"
        Option         "Primary" "true"
    EndSection
    
    Section "Monitor"
        Identifier     "monitor1"
        VendorName     "Manufacturer"
        ModelName      "Video Converter"
        Option         "DPMS"
        Option         "Primary" "false"
    EndSection
    
    Section "Device"
        Identifier     "nvidia0"
        Driver         "nvidia"
        VendorName     "NVIDIA Corporation"
        # Note: PCI bus value in lspci result is in hex, BusID option seems to expect decimal
        #       My lspci showed 5e:0.0 for the video card, corresponding BusID option value is 94:0:0
        BusID          "PCI:94:0:0"
        # Note: xrandr -q output showed monitors named DP-0 and DP-2, but nvidia driver seems to want to use
        #       "DFP" instead of "DP", so if identifying monitors and availble modes with xrandr, use DFP.
        Option         "Monitor-DFP-2" "monitor0"
        Option         "Monitor-DFP-0" "monitor1"
        Option         "ConnectedMonitor" "DFP-2, DFP-0"
        Option         "VertRefresh" "DFP-2: 60; DFP-0: 60"
        Option         "MetaModes" "DFP-2: 1920x1200+0+0, DFP-0: 1280x1024+1920+0"
    EndSection
    
    Section "Screen"
        Identifier     "screen0"
        Device         "nvidia0"
        Monitor        "monitor0"
        DefaultDepth    24
    EndSection
    

    本质上,这是试图消除 X 的视频检测/分配中留下的任何机会。监视器部分中的“主要”选项强制将 DFP-2 监视器(真正的 LCD 屏幕)用作主要显示器。设备部分中的设置专门将显示器绑定到 nVidia 卡,并设置扩展桌面中显示器的分辨率、刷新率和相对位置。LUKS 和 GDM 登录提示现在出现在正确的显示器(LCD)上,桌面具有所需的几何形状,并且视频转换器正在获得正确的刷新率。

    • 0

相关问题

  • 为什么 Linux 会杀死我的进程?

  • linux redhat 7 ( 或 centos 7 ) + firewalld 屏蔽防火墙

  • systemctl 命令在 RHEL 6 中不起作用

  • 如何在 RHEL 7 上离线安装 docker?

  • 在 Gnome3 中禁用窗口的自动最大化

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve