目录

linux内核问题

ubuntu中使用的有关于内核的指令

查看需要安装的cuda所需要的内核版本

如何安装新的内核版本

方法一:通过.deb的形式安装(简单推荐使用该方法)

第一步:首先在该网页选择合适的内核版本

第二步:下载不带lowlatency的四个文件

第三步: 在下载的文件夹位置打开终端,输入命令

方法二:通过源码编译安装(麻烦不推荐)

第一步:首先在该网页选择合适的内核版本的源码下载

第二步:解压.xz压缩文件

第三步:安装依赖

第四步:配置内核编译选项。可以使用 make menuconfig 命令来配置编译选项。

第五步:编译内核

第六步:安装内核

第七步:更新 GRUB 引导程序。使用以下命令更新 GRUB 引导程序:

第八步:重启计算机。使用以下命令重启计算机:

笔者更新内核时出现的问题:

linux5.4的问题

linux5.11的问题

linux5.19的问题

linux6.4.0的问题

循环登陆问题的解决

若是因为内核和显卡驱动不匹配的问题卡死在登陆页面可以通过以下方法来解决:

安装nvidia显卡驱动

方法一:使用系统自带的更新

第一步:找到系统推荐安装的显卡驱动

第二步:在software and update-->addtional drivers-->选择470的驱动

 第三步:安装完成,reboot后,使用nvidia-smi检查是否安装成功

方法二:使用从NVIDIA官方下载的显卡驱动安装

第一步:确定电脑的显卡型号

第二步:通过pci查询方法确定显卡型号

第三步:在NVIDIA官网下载对应版本的显卡驱动

第四步:重启电脑

方法三:卸载之前的显卡驱动,安装新的驱动

第一步:删除旧的驱动程序

第二步:下载最新的NVIDIA驱动

第三步:禁用默认的Noueau驱动

 第四步:安装新的NVIDIA驱动

第五步:重启系统

第六步:验证驱动安装

总结

安装CUDA

第一步:在该网址找到要下载的cuda版本,笔者下载的是11.4

 第二步:进入到下载的目录中使用如下命令:

第三步:弹出一个对话框,输入accept:

 第四步:笔者服务器已经安装过 Nvidia 显卡驱动了,因此不需要再安装了。如果你尚未安装驱动,可以顺便一起安装了。摁一下空格取消 Driver 安装,直接选择 Install 安装:

 第五步:配置环境变量

第六步:验证CUDA

安装CUDNN

第一步:到下载的目录解压文件

第二步:使用如下命令

第三步:查看cuDNN版本


linux内核问题

ubuntu中使用的有关于内核的指令

  • 显示当前系统内核版本号

uname -r

  • 查看系统中已安装的内核

dpkg --list | grep linux-image

  • 将安装的内核更新到系统使得开机时可以选择该内核

sudo update-grub

  • 删除不需要的内核版本

sudo apt-get purge linux-image-具体版本号

常见的linux问题

查看需要安装的cuda所需要的内核版本

打开cuda的官网官网地址

本人所安装的cuda11.4

 选择Documentation-->选择CUDA Toolkit v11.4.0-->选择installation guide linux

找到对应的内核版本请查看该地址

 这里可以看到安装cuda,需要内核版本在5.3.0以上,GCC版本需要在7.5.0以上,GLIBC版本需要在2.27以上!

如何安装新的内核版本

方法一:通过.deb的形式安装(简单推荐使用该方法)

第一步:首先在该网页选择合适的内核版本

 笔者这里选择了v5.11,亲测有效,附连接。

第二步:下载不带lowlatency的四个文件

第三步: 在下载的文件夹位置打开终端,输入命令
sudo dpkg -i *.deb

安装成功显示“成功”或者“done”

方法二:通过源码编译安装(麻烦不推荐)

第一步:首先在该网页选择合适的内核版本的源码下载

第二步:解压.xz压缩文件

tar -zxf 要解压的文件

第三步:安装依赖
sudo apt-get update
sudo apt-get install build-essential libncurses-dev bison flex libssl-dev libelf-dev dwarves liblz4-tool 
第四步:配置内核编译选项。可以使用 make menuconfig 命令来配置编译选项。
cd linux-6.4.0
make menuconfig

在菜单中选择需要的编译选项,然后保存配置文件。
默认配置:save --> load --> exit

第五步:编译内核
make -j4

上述 -j4 参数表示并行编译,可以根据 CPU 核心数和内存大小调整并行编译的数量。

可以使用htop或nproc命令查看逻辑核数!

第六步:安装内核
sudo make -j4 modules_install
sudo make -j4 install
第七步:更新 GRUB 引导程序。使用以下命令更新 GRUB 引导程序:
sudo update-grub
第八步:重启计算机。使用以下命令重启计算机:
sudo reboot

笔者更新内核时出现的问题:

问题描述:笔者认为高版本的linux内核可以驱动更高版本的nvidia的显卡驱动,从而支持更高的cuda版本,因此前前后后共安装了4个linux内核5.4-->5.11-->5.19-->6.4.0

linux5.4的问题

在安装完各种版本的nvidia显卡驱动后,均卡死在登陆界面(循环登陆问题),在这个内核版本中,根本无法解决循环登陆问题。

linux5.11的问题

在这个内核版本中nvidia-driver使用470版本时,可以正常使用,但一开始还是会出现循环登陆问题,此处的循环登陆问题是可以解决的,在使用535版本时,可以通过外接一个显示器使用,而笔记本电脑自己的屏幕是卡死在登陆界面的,这块儿不太懂,也没有解决,有解决的uu可以私信,一起交流呀!

驱动535的问题如下图所示:

linux5.19的问题

直接卡死在登陆界面

linux6.4.0的问题

error: out of memory

循环登陆问题的解决

笔者这里是gnome管理器问题,解决方法如下:

ubuntu默认使用的gnome管理器是gdm3,可以安装sudo apt-get install lightdm等其他gnome管理器,使用sudo dpkg-reconfigure lightdm/gdm3切换默认gnome管器,reboot查验。笔者使用了lightdm来管理登陆界面,就解决了循环登陆问题(只针对linux5.11的内核和470的驱动)

别的原因导致的循环登陆问题解决办法

若是因为内核和显卡驱动不匹配的问题卡死在登陆页面可以通过以下方法来解决:

先进入安全模式后,在root模式中进行如下操作:

apt-get purge nvidia*
reboot

reboot重启检查是否可以进入登陆界面

若是不行则采用如下操作:(此操作是实在没有办法的情况下采用的!)

apt-get autoremove
reboot

安装nvidia显卡驱动

方法一:使用系统自带的更新

第一步:找到系统推荐安装的显卡驱动

ubuntu-drivers devices

第二步:在software and update-->addtional drivers-->选择470的驱动

 第三步:安装完成,reboot后,使用nvidia-smi检查是否安装成功

 注意:这里显示只能安装CUDA最高版本是11.4

方法二:使用从NVIDIA官方下载的显卡驱动安装

第一步:确定电脑的显卡型号

lspci | grep -i vga

#----output------
01:00.0 VGA compatible controller: NVIDIA Corporation Device 2704 (rev a1)
07:00.0 VGA compatible controller: NVIDIA Corporation Device 2704 (rev a1)

从上面的输出可以看到显卡的pci型号是2704

第二步:通过pci查询方法确定显卡型号

output:

Name: AD103 [GeForce RTX 4080]

第三步:在NVIDIA官网下载对应版本的显卡驱动

NVIDIA-Linux-x86_64-550.54.14.run

运行该文件: sudo NVIDIA-Linux-x86_64-550.54.14.run

第四步:重启电脑

reboot

方法三:卸载之前的显卡驱动,安装新的驱动

第一步:删除旧的驱动程序
sudo apt-get purge nvidia*
第二步:下载最新的NVIDIA驱动

从NVIDIA官网下载最新的驱动程序。选择适合你显卡型号和操作系统的驱动程序。 

第三步:禁用默认的Noueau驱动

1.创建或编辑/etc/modprobe.d/blacklist-nouveau.conf文件:

sudo nano /etc/modprobe.d/blacklist-nouveau.conf

2.添加以下内容

blacklist nouveau
options nouveau modeset=0

 3.更新initramfs

sudo update-initramfs -u

4.重启系统

sudo reboot
 第四步:安装新的NVIDIA驱动

1.进入命令模式:在启动时按Ctrl + Alt + F1进入TTY1模式。

2.停止显示管理器:

sudo systemctl stop gdm

如果你使用的是其他显示管理器,例如lightdm或sddm,请相应地替换gdm。

3.授予驱动程序安装文件执行权限:

chmod +x ~/Downloads/NVIDIA-Linux-x86_64-<version>.run

 请替换<version>为你下载的驱动程序版本号。

4.运行驱动程序安装文件

sudo ./Downloads/NVIDIA-Linux-x86_64-<version>.run

5.按照屏幕上的提示完成安装。 

第五步:重启系统

安装完成后,重启系统以使新驱动生效:

sudo reboot
第六步:验证驱动安装

 重启后,使用以下命令验证驱动安装是否成功:

nvidia-smi

总结

有时候方法一并不好用,我安装系统推荐的显卡驱动后,重启电脑时,卡死在了开机页面。

安装CUDA

第一步:在该网址找到要下载的cuda版本,笔者下载的是11.4

 第二步:进入到下载的目录中使用如下命令:

sudo sh cuda_11.4.0_470.42.01_linux.run

第三步:弹出一个对话框,输入accept:

 第四步:笔者服务器已经安装过 Nvidia 显卡驱动了,因此不需要再安装了。如果你尚未安装驱动,可以顺便一起安装了。摁一下空格取消 Driver 安装,直接选择 Install 安装:

 安装成功标志:

 第五步:配置环境变量

sudo vim ~/.bashrc

      在文件末尾添加

export PATH=/usr/local/cuda-11.4/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.4/lib64:$LD_LIBRARY_PATH          
export LIBRARY_PATH=/usr/local/cuda-11.4/lib64:$LIBRARY_PATH
~                                                                

      更新系统环境变量

source ~/.bashrc
sudo ldconfig

第六步:验证CUDA

nvcc -V

        输出下图即为成功安装:

安装CUDNN

 官网下载cuda对应版本的cudnn

笔者这里选择cuDNN v8.9.2 使用了Local Installer for Linux x86_64 (Tar)的方式来安装,得到cudnn-linux-x86_64-8.9.2.26_cuda11-archive.tar.xz具体步骤如下:

第一步:到下载的目录解压文件

tar -xvf cudnn-linux-x86_64-8.9.2.26_cuda11-archive.tar.xz
cd cudnn-linux-x86_64-8.9.2.26_cuda11-archive

第二步:使用如下命令

sudo cp lib/* /usr/local/cuda-11.4/lib64/
sudo cp include/* /usr/local/cuda-11.4/include/
sudo chmod a+r /usr/local/cuda-11.4/lib64/*
sudo chmod a+r /usr/local/cuda-11.4/include/*

第三步:查看cuDNN版本

 cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

得到结果如下:

 表示安装成功

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐