Clear, practical technology insights BSOD Code Lookup · Windows Error Code Lookup · Wi-Fi Troubleshooting · PC Troubleshooting Checklist

How to Install NVIDIA Drivers on Kali Linux

Learn how to install NVIDIA Drivers on Kali Linux with clear steps, practical examples, and troubleshooting tips for safer, more reliable results.

Table of Contents

How to Install NVIDIA Drivers on Kali Linux is easier to understand when the core ideas are paired with practical examples. The sections below explain the topic clearly, highlight useful steps, and point out details that can prevent common errors.

This document explains how to install NVIDIA drivers on Kali Linux and supports CUDA, allowing integration with popular intrusion testing tools.

Prerequisites

First, you'll need to make sure your system is completely upgraded and your card supports CUDA.

Note : GPUs with CUDA calculation capability> 5.0 are recommended, but GPUs with lower capacity will still work.

 apt update && apt dist-upgrade -y && reboot 

Determine exactly which GPU is installed and check the kernel modules in use.

 root @ potassium: ~ # lspci -v 
 01: 00.0 VGA compatible controller: NVIDIA Corporation GM204 [GeForce GTX 970] (rev a1) (prog-if 00 [VGA controller]) 
 Subsystem: ZOTAC International (MCO) Ltd. GM204 [GeForce GTX 970] 
 Region 1: Memory at e0000000 (64-bit, prefetchable) [size = 256M] 
 Capabilities: [60] Power Management version 3 
 Capabilities: [68] MSI: Enable + Count = 1/1 Maskable- 64bit + 
 Capabilities: [78] Express (v2) Legacy Endpoint, MSI 00 
 Ability: [600 v1] Vendor Specific Information: ID = 0001 Rev = 1 Len = 024 
 Kernel driver in use: nouveau 
 Module kernel: nouveau 

Setting

Once the system has restarted, please install OpenCL ICD Loader, Drivers and CUDA toolkit.

 apt install -y ocl-icd-libopencl1 nvidia-driver nvidia-cuda-toolkit 

While installing drivers, the system has created new kernel modules, so need to reboot again.

Verify driver installation

Now that the system is ready to work, the next step is to verify that the drivers are loaded correctly, by running the nvidia-smi tool.

 root @ potassium: ~ # nvidia-smi 
 + ------------------------------------------------- ---------------------------- + 
 | NVIDIA-SMI 375.26 Driver Version: 375.26 | 
 | ------------------------------- + ----------------- ----- + ---------------------- + 
 | GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC | 
 | Fan Temp Perf Pwr: Usage / Cap | Memory-Usage | GPU-Util Compute M. | 
 | =============================== + ================= ===== + ====================== | 
 | 0 GeForce GTX 970 Off | 0000: 01: 00.0 On | N / A | 
 | 36% 46C P0 47W / 325W | 200MiB / 4036MiB | 0% Default | 
 + ------------------------------- + ----------------- ----- + ---------------------- + 
 + ------------------------------------------------- ---------------------------- + 
 | Processes: GPU Memory | 
 | GPU PID Type Process name Usage | 
 | ================================================= ============================ | 
 | 0 692 G / usr / lib / xorg / Xorg 198MiB | 
 + ------------------------------------------------- ---------------------------- + 

With the correct display of drivers and GPUs, we can now go into benchmarking. Before continuing, check carefully to make sure that hashcat and CUDA are working at the same time.

 root @ potassium: ~ # hashcat -I 
 OpenCL Info: 
 Platform ID # 1 
 Vendor: NVIDIA Corporation 
 Name: NVIDIA CUDA 
 Version: OpenCL 1.2 CUDA 8.0.0 
 Device ID # 1 
 Type: GPU 
 Vendor ID: 32 
 Vendor: NVIDIA Corporation 
 Name: GeForce GTX 970 
 Version: OpenCL 1.2 CUDA 
 Processor (s): 13 
 Clock: 1240 
 Memory: 1009/4036 MB allocatable 
 OpenCL Version: OpenCL C 1.2 
 Driver Version: 375.26 

It looks like everything is working, go ahead and run the benchmark test.

Benchmarking

 root @ potassium: ~ # hashcat -b 
 OpenCL Platform # 1: NVIDIA Corporation 
 ====================================== 
 * Device # 1: Geforce GTX 970, 1009/4095 MB allocatable, 13MCU 

 Hashtype: MD5 
 Speed.Dev. # 1 .: 10443.1 MH / s 
 Hashtype: SHA1 
 Speed.Dev. # 1 .: 3349.8 MH / s 
 Hashtype: SHA256 
 Speed.Dev. # 1 .: 1321.8 MH / s 

Resovle problem

During setup, everything can go according to plan, we will install clinfo for detailed troubleshooting information.

 apt install -y clinfo 

OpenCL Loader downloader

You may need to check for additional packages that may conflict with your settings. First, check if OpenCL Loader is installed. The NVIDIA OpenCL Loader and OpenCL Loader will all work on the system.

 root @ potassium: ~ # dpkg -l | grep -i icd 
 ii nvidia-egl-icd: amd64 375.26-2 amd64 NVIDIA EGL installable client driver (ICD) 
 ii nvidia-opencl-icd: amd64 375.26-2 amd64 NVIDIA OpenCL installable client driver (ICD) 
 ii nvidia-vulkan-icd: amd64 375.26-2 amd64 NVIDIA Vulkan installable client driver (ICD) 
 ii ocl-icd-libopencl1: amd64 2.2.11-1 

If mesa-opencl-icd is installed, run:

 apt remove mesa-opencl-icd 

Since the installation of the ICD loader is validated, we can easily determine which loader is currently being used.

 root @ potassium: ~ # clinfo | grep -i "icd loader" 
 ICD loader properties 
 ICD loader Name OpenCL ICD Loader 
 ICD loader Vendor OCL Icd free software 
 ICD loader Version 2.2.11 
 ICD loader Profile OpenCL 2.1 

As expected, the setup is using the previously installed open source loader. Now, get some details about the system.

Query GPU information

We will use nvidia-smi again, but with a much more detailed result.

 root @ potassium: ~ # nvidia-smi -i 0 -q 
 Driver Version: 375.26 
 Attached GPUs: 1 
 GPU 0000: 01: 00.0 
 Product Name: GeForce GTX 970 
 Product Brand: GeForce 
 Display Mode: Enabled 
 Display Active: Enabled 
 Persistence Mode: Disabled 
 Accounting Mode: Disabled 
 Accounting Mode Buffer Size: 1920 
 Temperature 
 GPU Current Temp: 47 C 
 GPU Shutdown Temp: 96 C 
 GPU Slowdown Temp: 91 C 
 Clocks 
 Graphics: 1101 MHz 
 SM: 1101 MHz 
 Memory: 3523 MHz 
 Video: 1012 MHz 
 Processes 
 Process ID: 692 
 Type: G 
 Name: / usr / lib / xorg / Xorg 
 Used GPU Memory: 198 MiB 
  • How to install Kali Linux on Android using Linux Deploy
  • How to install Kali Linux dual boot on macOS
  • How to install VmWare Tools on Kali Linux

FAQ

What should you know about prerequisites?

First, you'll need to make sure your system is completely upgraded and your card supports CUDA.

What should you know about setting?

Once the system has restarted, please install OpenCL ICD Loader, Drivers and CUDA toolkit.

What should you know about verify driver installation?

Now that the system is ready to work, the next step is to verify that the drivers are loaded correctly, by running the nvidia-smi tool.

Discussion

Reader Comments 0

Sign in with email or Google to join the discussion.