首先,我先在windows系统下下载了nvidia最新版的驱动程序,也就是551.86版本的,在windows power shell 下输入nvidia-smi是可以正常显示的。但是在wsl2下一直不行。后来我下载了CUDA12.4版本的,并在.bashrc中加入了CUDA的环境变量,但还是显示上面的错误。
之后我发现了这个链接nvidia-smi segmentation fault in wsl2 but not in Windows · Issue #11277 · microsoft/WSL · GitHub
发现很多人都遇到了这个问题。
他们得出的结论是,最新的驱动可能不兼容,可能也与不同电脑的配置有关,所以需要降低驱动程序的版本。
我就把最新版的驱动程序卸载了,去下载了537.58版本的驱动程序,之后就正常了。