在配备 nvidia gtx950M 和 intel 530 显卡的 MSI 笔记本电脑上安装 arch linux+XFCE4。当我打字时startx
找不到屏幕。显示错误。
满的/var/log/Xorg.0.log
和xorg.conf
。
的输出"lspci | grep -E "VGA|3D"
是
00:02.0 VGA compatible controller: Intel Corporation Skylake Integrated Graphics (rev 06)
01:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 950M] (rev a2)
我正在关注这些维基链接:
首先尝试使用第二个链接(bumblebee),然后尝试仅使用 nvidia 显卡或 intel。
如果我删除xorg.conf
文件并安装xf86-video-vesa
驱动程序,我可以执行startx
并进入 DE,但速度非常缓慢,每当鼠标悬停在应用程序图标或面板上时,它都会冻结几秒钟,这可能是由于现在的硬件加速所致。
注意:有一个问题在 Virtualbox 中安装 Nvidia 驱动程序后,使用 startx 启动 Xorg 时“未找到屏幕”已经没有可用的日志,也没有接受的答案。
答案1
我不知道这是否有帮助,但尝试添加
BusID "PCI:1:0:0"
或者类似的东西与你Section "Device"
的显卡相匹配/etc/X11/xorgs.conf
。我的笔记本电脑上没有显示外部显示器,只有在这样做后我的外部屏幕才出现。
下面的命令也可以帮助你
sudo lshw -c display
我的显示了bus info: pci@0000:01:00.0
,你PCI:1:0:0
在grub
配置中写的
我的显卡与你的不同,但我的xorg.conf
设备部分如下所示:
Section "Device"
Identifier "k1100m"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "Quadro K1100M"
BusID "PCI:1:0:0"
EndSection
Section "Device"
Identifier "intelhd4000"
Driver "intel"
BusID "PCI:2:0:0"
EndSection
该命令还可以为您提供一些信息:
nvidia-xconfig --query-gpu-info
祝你好运!
答案2
我也遇到同样的问题一段时间了,直到我发现了一个实用程序来完成这一切。您可以使用建筑维基百科了解 Optimus 笔记本电脑的工作原理。然后你有多种选择,但我建议运行Optimus 管理器 我使用 Gnome 运行 ArcoLinux,我的规格也是:NVIDIA GeForce GTX 1650 Ti Mobile。我必须说它运行完美。到目前为止,我还没有遇到任何问题——至少一年了。 该实用程序也适用于 AMD 显卡。所以也请随意尝试一下。
安装后nvtop
应该如下所示:
Device 0 [NVIDIA GeForce GTX 1650 Ti] PCIe GEN 1@ 8x RX: 0.000 KiB/s TX: 0.000 KiB/s
GPU 360MHz MEM 405MHz TEMP 43°C FAN N/A% POW 2 W
GPU[|| 5%] MEM[|||| 0.413Gi/3.820Gi]
┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
100│GPU0 % │
│GPU0 mem% │
│ │
│ │
│ │
75│ │
│ │
│ │
│ │
│ │
50│ │
│ │
│ │
│ ┌───┐ ┌───┐ │
│ ┌───┘ │ ┌───┐ │ │ │
25│ │ │ ┌───┐ ┌───┐ │ └───────┘ │ │
│ │ │ │ │ │ │ │ └─────┐ │
│────┐ ┌─────┘ │ ┌───────┘ └───┐ │ │ ┌───────┐ ┌───────────┐ │ │ │
│────┴─────┴─────────────┼───┼───────────────┴───┴───┴─┴───────┴───┴───────────┴───┴─────────────────────┴───────┬─│
│ └───┘ └─│
0│ │
└──────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
115254 me 0 Graphic 0% 104MiB 3% 1% 223MiB /usr/lib/brave-bin/brave --type=gpu-process --field-trial-
1827 me 0 Graphic 0% 43MiB 1% 1% 447MiB /usr/bin/gnome-shell
114827 me 0 Graphic 0% 32MiB 1% 0% 160MiB /usr/lib/slack/slack --type=gpu-process --field-trial-hand
123952 me 0 Graphic 0% 8MiB 0% 3% 62MiB alacritty
164054 me 0 Graphic 0% 8MiB 0% 0% 57MiB alacritty
我希望这有帮助! :)
optimus-manager --status
如果您完全在专用卡上运行,则应给出以下输出:
optimus-manager --status
Optimus Manager (Client) version 1.4
Current GPU mode : nvidia
GPU mode requested for next login : no change
GPU at startup : nvidia
Temporary config path: no
这是我的/etc/optimus-manager/optimus-manager.conf
[optimus]
# This parameter defines the method used to power switch the Nvidia card. See the documentation
# for a complete description of what each value does. Possible values :
#
# - nouveau : load the nouveau module on the Nvidia card.
# - bbswitch : power off the card using the bbswitch module (requires the bbswitch dependency).
# - acpi_call : try various ACPI method calls to power the card on and off (requires the acpi_call dependency)
# - custom: use custom scripts at /etc/optimus-manager/nvidia-enable.sh and /etc/optimus-manager/nvidia-disable.sh
# - none : do not use an external module for power management. For some laptop models it's preferable to
# use this option in combination with pci_power_control (see below).
switching=bbswitch
# Enable PCI power management in "integrated" mode.
# This option is incompatible with acpi_call and bbswitch, so it will be ignored in those cases.
pci_power_control=no
# Remove the Nvidia card from the PCI bus.
# May prevent crashes caused by power switching.
# Ignored if switching=nouveau or switching=bbswitch.
pci_remove=no
# Reset the Nvidia card at the PCI level before reloading the nvidia module.
# Ensures the card is in a fresh state before reloading the nvidia module.
# May fix some switching issues. Possible values :
#
# - no : does not perform any reset
# - function_level : perform a light "function-level" reset
# - hot_reset : perform a "hot reset" of the PCI bridge. ATTENTION : this method messes with the hardware
# directly, please read the online documentation of optimus-manager before using it.
# Also, it will perform a PCI remove even if pci_remove=no.
#
pci_reset=no
# Automatically log out the current desktop session when switching GPUs.
# This feature is currently supported for the following DE/WM :
# GNOME, KDE Plasma, LXDE, Deepin, Xfce, i3, Openbox, AwesomeWM, bspwm and dwm
# If this option is disabled or you use a different desktop environment,
# GPU switching only becomes effective at the next graphical session login.
auto_logout=yes
# GPU mode to use at computer startup.
# Possible values: nvidia, integrated, hybrid, auto, intel (deprecated, equivalent to integrated)
# "auto" is a special mode that auto-detects if the computer is running on battery
# and selects a proper GPU mode. See the other options below.
startup_mode=nvidia
# GPU mode to select when startup_mode=auto and the computer is running on battery.
# Possible values: nvidia, integrated, hybrid, intel (deprecated, equivalent to integrated)
startup_auto_battery_mode=nvidia
# GPU mode to select when startup_mode=auto and the computer is running on external power.
# Possible values: nvidia, integrated, hybrid, intel (deprecated, equivalent to integrated)
startup_auto_extpower_mode=nvidia
[intel]
# Driver to use for the Intel GPU. Possible values : modesetting, intel
# To use the intel driver, you need to install the package "xf86-video-intel".
driver=modesetting
# Acceleration method (corresponds to AccelMethod in the Xorg configuration).
# Only applies to the intel driver.
# Possible values : sna, xna, uxa
# Leave blank for the default (no option specified)
accel=
# Enable TearFree option in the Xorg configuration.
# Only applies to the intel driver.
# Possible values : yes, no
# Leave blank for the default (no option specified)
tearfree=
# DRI version. Possible values : 2, 3
DRI=3
# Whether or not to enable modesetting for the nouveau driver.
# Does not affect modesetting for the Intel GPU driver !
# This option only matters if you use nouveau as the switching backend.
modeset=yes
[amd]
# Driver to use for the AMD GPU. Possible values : modesetting, amdgpu
# To use the amdgpu driver, you need to install the package "xf86-video-amdgpu".
driver=modesetting
# Enable TearFree option in the Xorg configuration.
# Only applies to the amdgpu driver.
# Possible values : yes, no
# Leave blank for the default (no option specified)
tearfree=
# DRI version. Possible values : 2, 3
DRI=3
[nvidia]
# Whether or not to enable modesetting. Required for PRIME Synchronization (which prevents tearing).
modeset=yes
# Whether or not to enable the NVreg_UsePageAttributeTable option in the Nvidia driver.
# Recommended, can cause poor CPU performance otherwise.
PAT=yes
# DPI value. This will be set using the Xsetup script passed to your login manager.
# It will run the command
# xrandr --dpi <DPI>
# Leave blank for the default (the above command will not be run).
DPI=96
# If you're running an updated version of xorg-server (let's say to get PRIME Render offload enabled),
# the nvidia driver may not load because of an ABI version mismatch. Setting this flag to "yes"
# will allow the loading of the nvidia driver.
ignore_abi=no
# Set to yes if you want to use optimus-manager with external Nvidia GPUs (experimental)
allow_external_gpus=no
# Comma-separated list of Nvidia-specific options to apply.
# Available options :
# - overclocking : enable CoolBits in the Xorg configuration, which unlocks clocking options
# in the Nvidia control panel. Note: does not work in hybrid mode.
# - triple_buffer : enable triple buffering.
options=overclocking
# Enable Runtime D3 (RTD3) Power Management in the Nvidia driver. While in hybrid mode,
# this feature allows the Nvidia card to go into a low-power mode if it's not in use.
#
# IMPORTANT NOTES:
# - The feature is still experimental
# - It's only supported on laptops with a Turing GPU or above, and an Intel Coffee Lake CPU
# or above (not sure about the state of support for AMD CPUs).
# - if your Nvidia card also has an audio chip (for HDMI) or a USB port wired to it, they may not
# function properly while in low-power mode
#
# For more details, see
# https://download.nvidia.com/XFree86/Linux-x86_64/460.39/README/dynamicpowermanagement.html
#
# Available options:
# - no (the default): RTD3 power management is disabled.
# - coarse: the card only goes to low-power if no application is using it.
# - fine: the card is also allowed to go to low-power if applications are using it but have not
# actively submitted GPU work in some amount of time.
dynamic_power_management=no
# The Nvidia driver handles power to the video memory separately from the rest of GPU.
# When dynamic_power_management=fine, this options controls the threshold of memory utilization
# (in Megabytes) under which the memory is put in a low-power state.
# Values over 200MB are ignored. Leave blank for the default (200MB).
# Setting this value to 0 keeps the memory powered at all times.
dynamic_power_management_memory_threshold=
最后,这就是我所拥有的:
neofetch
/- me@machine
ooo: ----------
yoooo/ OS: ArcoLinux
yooooooo Kernel: 5.15.2-arch1-1
yooooooooo Uptime: 4 hours, 18 mins
yooooooooooo Packages: 1464 (pacman)
.yooooooooooooo Shell: zsh 5.8
.oooooooooooooooo Resolution: 1920x1080
.oooooooarcoooooooo DE: GNOME 40.4
.ooooooooo-oooooooooo WM: Mutter
.ooooooooo- oooooooooo WM Theme: Adwaita
:ooooooooo. :ooooooooo Theme: Arc-Dark [GTK2/3]
:ooooooooo. :ooooooooo Icons: Sardi-Arc [GTK2/3]
:oooarcooo .oooarcooo Terminal: alacritty
:ooooooooy .ooooooooo CPU: Intel i7-10750H (12) @ 5.000GHz
:ooooooooo /ooooooooooooooooooo GPU: Intel CometLake-H GT2 [UHD Graphics]
:ooooooooo .-ooooooooooooooooo. GPU: NVIDIA GeForce GTX 1650 Ti Mobile
ooooooooo- -ooooooooooooo. Memory: 5465MiB / 15762MiB (34%)
ooooooooo- .-oooooooooo.
ooooooooo. -ooooooooo
仔细遵循安装维基对于您的 Arch Linux 桌面环境,请务必检查常问问题在你进行切换之前,可能会在 tty 中不知道该怎么做。在 Linux 上处理显卡是最好的实用程序。
愿你的htop数值低,胡子长! :D