如果一台显示器接入多个信号源,在 Linux 中如何彻底屏蔽掉其中一个信号源? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
nozer
V2EX    Linux

如果一台显示器接入多个信号源,在 Linux 中如何彻底屏蔽掉其中一个信号源?

  •  
  •   nozer 2024-06-22 18:24:14 +08:00 1707 次点击
    这是一个创建于 477 天前的主题,其中的信息可能已经有所发展或是发生改变。

    情况是这样: 我台式机电脑,intel cpu + nvidia 独显。

    上面安装了 hackintosh 和 Linux 双系统。

    因为 hackintosh 无法使用 nvidia 显卡,所以我选择用 intel 核显驱动。 但是 Linux 还是正常使用 Nvidia 显卡。

    为了不在每次启动的时候都跑到主板里面去切换显卡,我选择核显作为第一显卡,独显同时启用。

    很不错,hackintosh 和 Linux 都能正常引导和显示。

    现在的情况是这样: 我的显示器接了两条输入线,一条接核显、一条接独显。 在 Hackintosh 上面,独显不工作,所以 ok 。

    但是在 Linux 上面,独显和核显都可以工作,这样的在我的显示器设置里面就可以看到两个屏幕。 本来这也没有啥关系,我可以将连接核显的监视器禁用掉。 但是,就算我禁用之后也总会有这里那里小问题,有点烦。

    所以来问问,有没有大佬知道: 如何在 Linux 上面彻底屏蔽掉那个连接核显的监视器(不止禁用,我想的是让 xrandr 和系统设置都无法感知他的存在)?

    5 条回复    2024-08-28 20:13:55 +08:00
    chenxytw
        1
    chenxytw  
       2024-06-22 22:35:25 +08:00
    彻底无感知,不从 BIOS 屏蔽的话,最多就是做到卸载驱动,intel 核显驱动是 i915 这个内核模块。
    povsister
        2
    povsister  
       2024-06-23 12:17:54 +08:00
    核显本质也是 pcie 设备,理论上你可以从内核屏蔽掉。搜一下如何屏蔽指定 pcie 设备吧
    liyafe1997
        3
    liyafe1997  
       2024-06-24 09:15:18 +08:00 via Android
    NVIDIA 驱动的那个 prime 不是可以设置 nvidia only 吗?
    liyafe1997
        4
    liyafe1997  
       2024-06-24 09:18:14 +08:00 via Android
    噢不对,那个应该屏蔽不了 INTEL 核显输出。可以尝试把 intel 核显驱动彻底干掉,加到 blacklist 里面,或者甚至彻底屏蔽掉核显的 PCIE 设备,问了下 ChatGPT:

    是的,Linux 可以通过加内核参数来屏蔽某个 PCIe 设备,使其在启动时不加载相应的驱动程序。具体操作步骤如下:

    1. **获取 PCI 设备的 ID**:
    使用`lspci`命令来查看系统中的 PCI 设备列表,并找到你想屏蔽的设备的 ID (一般包括厂商 ID 和设备 ID )。

    ```sh
    lspci -nn
    ```

    输出示例:
    ```
    00:1f.6 Ethernet controller [0200]: Intel Corporation Ethernet Connection (7) I219-V [8086:15be] (rev 10)
    ```

    在这个示例中,设备 ID 为`8086:15be`。

    2. **编辑 Grub 配置文件**:
    编辑 Grub 配置文件,添加内核参数来屏蔽设备。具体操作步骤如下:

    - 打开 Grub 配置文件:
    ```sh
    sudo nano /etc/default/grub
    ```

    - 在`GRUB_CMDLINE_LINUX`行中添加`pci-stub.ids=厂商 ID:设备 ID`参数。例如:
    ```sh
    GRUB_CMDLINE_LINUX="... pci-stub.ids=8086:15be ..."
    ```

    3. **更新 Grub 配置**:
    保存并关闭文件后,更新 Grub 配置以应用更改。

    ```sh
    sudo update-grub
    ```

    4. **重启系统**:
    重启系统使更改生效。

    ```sh
    sudo reboot
    ```

    通过上述步骤,系统在启动时会将指定的 PCI 设备分配给`pci-stub`驱动程序,而不是加载其特定的驱动程序。这 effectively 使该设备在系统中不可用。
    nozer
        5
    nozer  
    OP
       2024-08-28 20:13:55 +08:00
    感谢楼上。 屏蔽 pci 设备是可以的。 但是屏蔽了核显的 PCI 后,独显也不工作了。 只在 TTY 时有画面输出。到启动 SDDM 的时候,画面一直是卡在 TTY 上面。

    感觉这跟系统没关系了可能。

    因该是双显卡工作模式需要核显去做某些特殊工作导致的。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     913 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 21ms UTC 18:52 PVG 02:52 LAX 11:52 JFK 14:52
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86