2018Kali2.0安装NVIDIA显卡驱动

逛遍国内论坛都没解决kalilinux显卡驱动的痛,现在参考国外大神的文章完美解决了!

感谢此文章https://forums.kali.org/showthread.php?35748-TUTORIAL-Installing-official-NVIDIA-driver-in-Optimus-laptop

连续工作4天后,我终于能够在我的HP Envy 15笔记本电脑上安装并运行官方NVIDIA驱动程序。这是我的规格:

CPU: Intel core i7-4510U CPU

GPU #1: Intel HD Graphics 4400

GPU #2: NVIDIA GeForce GTX 850M

我的系统:

Code:

root@linux:~# uname -a

Linux linux 4.9.0-kali3-amd64 #1 SMP Debian 4.9.13-1kali3 (2017-03-13) x86_64 GNU/Linux

Code:

root@linux:~# cat /etc/*release*

DISTRIB_ID=Kali

DISTRIB_RELEASE=kali-rolling

DISTRIB_CODENAME=kali-rolling

DISTRIB_DESCRIPTION=”Kali GNU/Linux Rolling”

PRETTY_NAME=”Kali GNU/Linux Rolling”

NAME=”Kali GNU/Linux”

ID=kali

VERSION=”2016.2″

VERSION_ID=”2016.2″

ID_LIKE=debian

ANSI_COLOR=”1;31″

HOME_URL=”http://www.kali.org/”

SUPPORT_URL=”http://forums.kali.org/”

BUG_REPORT_URL=”http://bugs.kali.org/”

***使用有风险***

*本教程适用于官方NVIDIA驱动程序而非Bumblebee

*在Kali官方网站上找到的教程是不行!!!它永远不适用于支持集成显卡搭配独立显卡的笔记本电脑

1.确认您有混合图形

Code:

lspci | grep -E “VGA|3D”

00:02.0 VGA compatible controller: Intel Corporation Haswell-ULT Integrated Graphics Controller (rev 0b)

0a:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 850M] (rev a2)

2.屏蔽nouveau

Code:

echo -e “blacklist nouveau\noptions nouveau modeset=0\nalias nouveau off” > /etc/modprobe.d/blacklist-nouveau.conf

update-initramfs -u && reboot

3.system将重启并且nouveau应该被禁用。如果禁用nouveau,则验证:

Code:

lsmod |grep -i nouveau

如果没有显示,则表示已成功禁用nouveau。

4.从kali repo安装nvidia驱动程序:

Code:

apt-get install nvidia-driver nvidia-xconfig

You can also download latest .run file from nvidia website.execute and procceed with installation.whether its from kali repo or nvidia website,procedure is same.

5.现在我们必须找到我们的nvidia卡的总线ID:

Code:

nvidia-xconfig –query-gpu-info | grep ‘BusID : ‘ | cut -d ‘ ‘ -f6

它应该显示如下:

Code:

PCI:10:0:0

这是Bus ID.

6.现在我们根据nvidia指南http://us.download.nvidia.com/XFree8…E/randr14.html生成带有此总线ID的/etc/X11/xorg.conf文件:

Code:

vim /etc/X11/xorg.conf

复制以下代码进去

Section “ServerLayout”

Identifier “layout”

Screen 0 “nvidia”

Inactive “intel”

EndSection

Section “Device”

Identifier “nvidia”

Driver “nvidia”

BusID “PCI:10:0:0

EndSection

Section “Screen”

Identifier “nvidia”

Device “nvidia”

Option “AllowEmptyInitialConfiguration”

EndSection

Section “Device”

Identifier “intel”

Driver “modesetting”

EndSection

Section “Screen”

Identifier “intel”

Device “intel”

EndSection

用您的总线ID替换粗体字符串并将其保存到/etc/X11/xorg.conf

7.现在我们必须根据我们的显示管理器https://wiki.archlinux.org/index.php…splay_Managers创建一些脚本。因为我使用默认的Kali linux是GDM,我创建了两个文件:

vim /usr/share/gdm/greeter/autostart/optimus.desktop

vim /etc/xdg/autostart/optimus.desktop

2个具有以下内容:

Code:

[Desktop Entry]

Type=Application

Name=Optimus

Exec=sh -c “xrandr –setprovideroutputsource modesetting NVIDIA-0; xrandr –auto”

NoDisplay=true

X-GNOME-Autostart-Phase=DisplayServer

8.现在重新启动,你应该使用Nvidia Driver.Verify如果一切正常,检查硬件加速:启用基于硬件的 3D 加速可以在绘制 3D 图形时直接使用硬件进行处理,这大大加快了 3D 渲染的速度,要使用该功能,必需显卡支持硬件加速并安装了正确的驱动,可以使用 glxinfo 命令来获查看得 OpenGL 的详细信息:

root@kali:~# glxinfo | grep -i “direct rendering”

direct rendering: Yes

root@kali:~# glxinfo | grep OpenGL

OpenGL vendor string: NVIDIA Corporation

OpenGL renderer string: GeForce GT 720M/PCIe/SSE2

OpenGL core profile version string: 4.6.0 NVIDIA 390.87

OpenGL core profile shading language version string: 4.60 NVIDIA

OpenGL core profile context flags: (none)

OpenGL core profile profile mask: core profile

OpenGL core profile extensions:

OpenGL version string: 4.6.0 NVIDIA 390.87

OpenGL shading language version string: 4.60 NVIDIA

OpenGL context flags: (none)

OpenGL profile mask: (none)

OpenGL extensions:

OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 390.87

OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20

OpenGL ES profile extensions:

可选:您现在可以安装cuda工具包:cuda toolkits:

Code:

apt-get install ocl-icd-libopencl1 nvidia-cuda-toolkit

固定屏幕撕裂问题:

使用Nvidia Driver成功启动后,您很可能会遇到屏幕撕裂问题,例如:在VLC中播放视频,在Chrome / Firefox上播放YouTube视频等。幸运的是,我们可以通过启用PRIME Sync来解决此问题。

1.验证PRIME是否被禁用

Code:

xrandr –verbose|grep PRIME

显示如下:

PRIME Synchronization: 0

PRIME Synchronization: 1

第一个是我们连接的显示器。因此PRIME同步被禁用。

2.编辑/etc/default/grub在GRUB_CMDLINE_LINUX_DEFAULT中

并在quiet后在附加nvidia-drm.modeset = 1.如下所示:

Code:

….

GRUB_CMDLINE_LINUX_DEFAULT=”quiet nvidia-drm.modeset=1″

3.保存更改。更新grub

Code:

update-grub

4.重启系统.

5.验证PRIME开启:

Code:

xrandr –verbose|grep PRIME

现在应该输出:

PRIME Synchronization: 1

PRIME Synchronization: 1

如果它仍然为你显示0,那么你的系统配置/内核可能有问题。由于这仍然是Nvidia的实验性功能,你运气不好。

***如果你被困在起始黑屏***

恢复到目前为止我们所做的工作:

按CTRL + ALT + F2或CTRL + ALT + F3,使用您的密码登录。

Code:

apt-get remove –purge nvidia *

rm -rf /etc/X11/xorg.conf

删除我们之前创建的那些显示管理器文件(对于GDM):

Code:

rm -rf /usr/share/gdm/greeter/autostart/optimus.desktop

rm -rf /etc/xdg/autostart/optimus.desktop

现在重新启动。你应该能够回到旧系统。

创作不易,希望能帮助喜欢kali的玩家

    原文作者:wisp_lyon
    原文地址: https://www.jianshu.com/p/16856c8ff586
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞