Debian 12是最新发布的Debian GNU/Linux发行版,代号为Bookworm。人工智能程序通常需要大量的计算资源,尤其是GPU,来加速训练和推理过程。为了让Debian 12系统能够正常渲染桌面,并充分利用Nvidia GPU的性能,我们需要安装合适的显卡驱动。
本文介绍如何安装Debian 12系统和Nvidia显卡驱动,以打造一个高效的人工智能运行环境。我们将从以下方面进行介绍:
Debian 12这次发行包含了许多软件的更新,比较重要的是Linux 内核映像使用了6.1版本,GNOME桌面使用了43版本。
Linux内核6.1带来了一些新的特性和改进,例如:
GNOME 43也提供了一系列的新特性和改进,提高了GNOME桌面环境的易用性和美观性,例如比以前更方便地进行截图和录屏。
从Debian官网下载最新稳定版镜像,如当前是debian-12.0.0-amd64-DVD-1.iso。安装过程中几个需要注意的地方:
对磁盘进行分区:手动。这样可以灵活决定每个分区的大小和位置。Debian图形安装程序很方便,输入分区大小可以带单位,如100 MB,不需要手动计算字节数。
配置软件包管理器:使用网络镜像站点。如果安装过程中有接网络,选择中国的镜像站点可以加快软件包下载速度。
磁盘分区是在安装系统时需要进行的一个重要步骤。这里介绍一种比较常见的手动分区方案,适用于拥有两块硬盘(一块固态硬盘和一块机械硬盘)的台式机。我们将把固态硬盘用于存放操作系统和程序文件,以提高启动和运行速度;我们将把机械硬盘用于存放用户文件,以节省成本和扩展容量。分区方案如下:
如果关闭图形界面,中文显示会乱码,所以最好用英文,也能避免某些软件不支持中文路径的问题。
export LANG=en_US
xdg-user-dirs-gtk-update
export LANG=zh_CN.UTF-8
打开“Software & Update”,选中main,下载自中国的服务器,去掉cdrom,并重新载入。
该操作等效于将以下内容写入/etc/apt/sources.list:
# deb cdrom:[Debian GNU/Linux 12.0.0 _Bookworm_ - Official amd64 DVD Binary-1 with firmware 20230610-10:23]/ bookworm main non-free-firmware
deb http://ftp.cn.debian.org/debian/ bookworm main
并且完成了以下命令:
sudo apt update
sudo apt install vim
Debian 12自带的显卡驱动是Nouveau,容易出问题,比如我安装完进入系统后屏幕不断闪烁。为了桌面能正常工作,也为了运行深度学习程序,我们需要安装Nvidia官方的显卡驱动。
打开浏览器,访问Nvidia官网下载页面。在页面上,选择以下选项:
在安装驱动之前,我们需要安装一些依赖包和内核头文件,以便驱动能够正确编译和加载。输入以下命令:
sudo apt install gcc make linux-headers-$(uname -r)
为了防止以后内核版本升级导致显卡驱动运行异常,我们需要禁止内核更新。参考以下命令:
dpkg --get-selections | grep linux
sudo apt-mark hold linux-image-6.1.0-9-amd64 linux-headers-6.1.0-9-amd64 linux-headers-6.1.0-9-common
我们需要切换到下载驱动程序的目录(例如,~/Downloads),并给驱动程序赋予可执行权限。参考以下命令:
cd ~/Downloads
chmod u+x NVIDIA-Linux-x86_64-530.41.03.run
然后,我们就可以运行驱动程序了。参考以下命令:
sudo ./NVIDIA-Linux-x86_64-530.41.03.run
这会启动一个交互式的安装向导,让我们选择一些选项。安装过程中,可能会出现一些警告或错误信息,我们可以忽略警告,或者按照提示处理错误。
如果错误信息提示我们停止gdm3,就运行以下命令(否则跳过这一步):
sudo /etc/init.d/gdm3 stop
停止gdm3后,会关闭图形界面,进入一个黑屏的命令行模式,重新运行驱动程序。
如果错误信息提示我们驱动与Nouveau冲突,就需要禁用Nouveau(否则跳过这一步)。驱动会帮我们生成/etc/modprobe.d/nvidia-installer-disable-nouveau.conf文件,确认文件已经写入后,我们只需运行以下命令:
sudo update-initramfs -u
sudo reboot
重启后重新运行驱动程序。
我们可以使用以下命令来验证驱动是否正常工作:
nvidia-smi
我们可以从输出的信息中看到驱动版本号、最高支持的CUDA版本号、显存占用、GPU温度等信息。
在安装完Debian 12系统后,我们可能会发现系统中自带了一些不必要的程序,如游戏。卸载自带程序有两种方法,一种是使用图形界面的软件管理器,另一种是使用命令行的apt工具。
打开“软件”,我们可以卸载的有:
如果不喜欢用firefox浏览器,可以卸载掉它。建议安装好需要的浏览器后再来卸载。
sudo apt purge firefox-esr
卸载完成后,可以使用以下命令来清理一些不再需要的依赖包和配置文件:
sudo apt-get --purge autoremove
我们日常使用的软件和开发工具,基本Debian都有,比如百度网盘、有道云笔记、QQ等。但难免个别软件没有提供Linux版,比如微信小程序开发工具,这时我们可以利用虚拟机来运行,推荐安装macOS。
人工智能之路,漫漫无垠,只有不断前行,才能见到风景。安装系统是我们探索人工智能的第一步,但绝不是最后一步。在接下来的文章中,我将和你分享更多关于人工智能的知识和经验。敬请期待!