How to Install NVIDIA Drivers on a Linux Desktop
Aug 01, 2025 am 06:30 AM首先使用lspci和nvidia-smi命令確認(rèn)GPU型號(hào)及驅(qū)動(dòng)狀態(tài),若顯示nouveau或命令未找到,則需安裝NVIDIA驅(qū)動(dòng);2. 根據(jù)發(fā)行版選擇安裝方法:Ubuntu用戶可使用“附加驅(qū)動(dòng)”工具或命令行安裝指定版本驅(qū)動(dòng),F(xiàn)edora需啟用RPM Fusion后安裝akmod-nvidia,openSUSE通過zypper安裝nvidia-driver包,Arch系使用pacman安裝nvidia及nvidia-utils;3. 遇到黑屏問題時(shí)應(yīng)檢查日志、禁用Secure Boot并考慮黑屏原因是否為nouveau沖突,必要時(shí)屏蔽nouveau并重建initramfs;4. 安裝后通過nvidia-smi和nvidia-settings驗(yàn)證驅(qū)動(dòng)是否正常運(yùn)行,確保GPU信息正確顯示且控制面板可打開,從而完成驅(qū)動(dòng)安裝并獲得完整功能支持。
Installing NVIDIA drivers on a Linux desktop can be a bit tricky if you're not familiar with the process, but it's usually straightforward if you follow the right steps. The exact method depends on your Linux distribution, but the general approach is similar across most systems. Here’s how to do it properly.

1. Check Your GPU and Current Driver Status
Before installing anything, confirm that you have an NVIDIA GPU and check whether a driver is already loaded.
Open a terminal and run:

lspci | grep -i nvidia
This should show your NVIDIA graphics card.
Next, check if a driver is currently in use:

lspci -k | grep -A 2 -i "nvidia"
Look for a line like Kernel driver in use: nvidia
or Kernel driver in use: nouveau
.
If it says nouveau
, that’s the open-source driver — you’ll want to replace it with the official NVIDIA driver.
You can also check with:
nvidia-smi
If this command works, you already have the NVIDIA driver installed. If it says "command not found" or fails, you need to install it.
2. Choose the Right Installation Method (by Distro)
Ubuntu / Debian-based Systems
Option A: Use the “Additional Drivers” Tool (Recommended for Beginners)
- Open Software & Updates.
- Go to the Additional Drivers tab.
- Wait for it to scan your hardware.
- Select the recommended NVIDIA driver (usually labeled “proprietary, tested”).
- Click Apply Changes and wait for installation.
- Reboot.
This is the easiest and safest method for most users.
Option B: Install via Command Line (More Control)
First, find the correct driver:
ubuntu-drivers devices
It will list recommended drivers. Then install automatically:
sudo ubuntu-drivers autoinstall
Or install a specific version:
sudo apt install nvidia-driver-535 # Replace 535 with your version
Reboot after installation.
Fedora
Use RPM Fusion repositories:
- Enable RPM Fusion:
sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm sudo dnf install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
- Install the driver:
sudo dnf install akmod-nvidia
- Reboot.
The akmod
package will automatically build the kernel module for your current and future kernels.
openSUSE
Use YaST or the terminal:
sudo zypper install nvidia-driver-G06 # or G05 for older cards sudo zypper install nvidia-driver-G06-kmp-default
Then reboot.
You can also use YaST > Software > Software Repositories to add the NVIDIA repo and install from there.
Arch Linux / Manjaro
Install from official repos:
sudo pacman -S nvidia nvidia-utils nvidia-settings
For newer kernels, you might need nvidia-dkms
:
sudo pacman -S nvidia-dkms nvidia-utils nvidia-settings
Reboot.
3. Handle Common Issues
Black screen after reboot?
This often happens if the display manager fails to start. Boot into recovery mode or a TTY (Ctrl+Alt+F2), then:- Check logs:
journalctl -b | grep -i nvidia
- Make sure Secure Boot is disabled in BIOS (it can block unsigned drivers).
- Try reinstalling or removing conflicting drivers.
- Check logs:
Nouveau is blocking the NVIDIA driver?
You may need to blacklist it:sudo bash -c 'echo "blacklist nouveau" >> /etc/modprobe.d/blacklist-nvidia-nouveau.conf' sudo bash -c 'echo "options nouveau modeset=0" >> /etc/modprobe.d/blacklist-nvidia-nouveau.conf'
Then regenerate initramfs:
sudo update-initramfs -u # Ubuntu/Debian sudo dracut --force # Fedora/RHEL
Driver not loading after kernel update?
This is common with DKMS. Ensurenvidia-dkms
is installed so the module rebuilds automatically.
4. Verify the Installation
After rebooting, run:
nvidia-smi
You should see your GPU, driver version, and temperature info.
Also try:
nvidia-settings
This opens the NVIDIA control panel (GUI tool for tweaking settings).
That’s it. With the right driver installed, you’ll get better performance, support for CUDA, and proper display scaling — especially useful for gaming, video editing, or AI work. Just remember to keep your system updated and watch for driver conflicts after kernel upgrades.
Basically, stick to your distro’s recommended method, avoid mixing driver sources, and you should be fine.
The above is the detailed content of How to Install NVIDIA Drivers on a Linux Desktop. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

I have a lot of experience in participating in VSCode offline technology exchange activities, and my main gains include sharing of plug-in development, practical demonstrations and communication with other developers. 1. Sharing of plug-in development: I learned how to use VSCode's plug-in API to improve development efficiency, such as automatic formatting and static analysis plug-ins. 2. Practical demonstration: I learned how to use VSCode for remote development and realized its flexibility and scalability. 3. Communicate with developers: I have obtained skills to optimize VSCode startup speed, such as reducing the number of plug-ins loaded at startup and managing the plug-in loading order. In short, this event has benefited me a lot and I highly recommend those who are interested in VSCode to participate.

Linux system restricts user resources through the ulimit command to prevent excessive use of resources. 1.ulimit is a built-in shell command that can limit the number of file descriptors (-n), memory size (-v), thread count (-u), etc., which are divided into soft limit (current effective value) and hard limit (maximum upper limit). 2. Use the ulimit command directly for temporary modification, such as ulimit-n2048, but it is only valid for the current session. 3. For permanent effect, you need to modify /etc/security/limits.conf and PAM configuration files, and add sessionrequiredpam_limits.so. 4. The systemd service needs to set Lim in the unit file

Informix and MySQL are both popular relational database management systems. They perform well in Linux environments and are widely used. The following is a comparison and analysis of the two on the Linux platform: Installing and configuring Informix: Deploying Informix on Linux requires downloading the corresponding installation files, and then completing the installation and configuration process according to the official documentation. MySQL: The installation process of MySQL is relatively simple, and can be easily installed through system package management tools (such as apt or yum), and there are a large number of tutorials and community support on the network for reference. Performance Informix: Informix has excellent performance and

The reason why the editor crashes after the VSCode plugin is updated is that there is compatibility issues with the plugin with existing versions of VSCode or other plugins. Solutions include: 1. Disable the plug-in to troubleshoot problems one by one; 2. Downgrade the problem plug-in to the previous version; 3. Find alternative plug-ins; 4. Keep VSCode and plug-in updated and conduct sufficient testing; 5. Set up automatic backup function to prevent data loss.

To tune MySQL into a Chinese interface, it can be implemented through MySQLWorkbench or command line tools. 1) In MySQLWorkbench, open "Preferences", select the "Appearance" tab, and then select "Chinese(Simplified)" in the "Language" drop-down menu, and restart. 2) When using command line tools, set the operating system locale variables, such as using "exportLANG=zh_CN.UTF-8" on Linux or macOS, and then run the mysql client.

Debian Text Editor is a basic text editing tool, mainly used for daily simple text editing work. Compared with other mainstream editors, it has certain limitations in performance and user experience. Here are the advantages and features of several other editors compared to Debian text editors: Notepad Loading large files speed: Notepad can quickly load large files, such as 1GB-sized SQL files in just 8 seconds, which is nearly 47 times faster than standard text editors. Code coloring function: Supports code coloring in about 80 programming languages, which helps improve coding efficiency. Batch operation capability: It has column editing mode, which is convenient for performing batch processing tasks such as financial verification or operation and maintenance logs. Extension plug-in branch

Starting SFTP service in Debian systems usually requires the help of an OpenSSH server. The following are the specific steps: 1. Install the OpenSSH server First, confirm that the OpenSSH server is installed on your Debian system. If not installed, you can complete the installation by following command: sudoaptupdatesudoaptininstallopenssh-server2. After starting the OpenSSH server installation is completed, the OpenSSH server will generally start automatically. You can check its running status through the following command: sudosystemctlstatusssh If the service is not running, you can start it with the following command: s

Linux and Windows have their own advantages and disadvantages in CPU and memory usage: 1) Linux uses time slice-based scheduling algorithms to ensure fairness and efficiency; Windows uses priority scheduling, which may cause low-priority processes to wait. 2) Linux manages memory through paging and switching mechanisms to reduce fragmentation; Windows tends to pre-allocate and dynamic adjustment, and efficiency may fluctuate.
