最新资讯

  • 在WSL2-Ubuntu中安装CUDA12.8、cuDNN、Anaconda、Pytorch并验证安装

在WSL2-Ubuntu中安装CUDA12.8、cuDNN、Anaconda、Pytorch并验证安装

2025-04-27 04:00:03 0 阅读

#记录工作

提示:整个过程最好先开启系统代理,也可以用镜像源,确保有官方发布的最新特性和官方库的完整和兼容性支持。

 期间下载会特别慢,需要在系统上先开启代理,然后WSL设置里打开网络模式“Mirrored”,以设置WSL自动使用主机上的代理网络。

【WLS2怎么设置网络自动代理 - CSDN App】https://blog.csdn.net/u014451778/article/details/146073726?sharetype=blog&shareId=146073726&sharerefer=APP&sharesource=u014451778&sharefrom=link

 

一、首先要先确保——windows系统中要正确安装了以下组件:

(一)显卡驱动;

下载 NVIDIA 官方驱动 | NVIDIA

(二)Microsoft Visual Studio;

下载 Visual Studio Tools - 免费安装 Windows、Mac、Linux

(三)CUDA;

CUDA Toolkit 12.8 Downloads | NVIDIA Developer

(四)cuDNN;

CUDA Toolkit 12.8 Downloads | NVIDIA Developer

(五)正确安装WSL2-Ubuntu版本

要正常安装WSL2-Ubuntu版本,安装成功后打开ubuntu界面输出如下界面:

安装 WSL | Microsoft Learn

该版本默认是安装的WSL2-Ubuntu 24.04版本 ,也可以选择其他的ubuntu版本进行安装。

 

 

二、在WSL2-Ubuntu系统中安装CUDA、cuDNN、Anaconda

在windows系统中正确安装完必要组件后,然后才是在WSL2-Ubuntu中按照顺序安装 CUDA、cuDNN、Anaconda。

打开WSL2-Ubuntu,先安装CUDA、再安装cuDNN、最后是Anaconda(管理虚拟环境)

只要windows系统配置好了显卡驱动,在WSL2中一般不必再另外安装linux驱动了。

在安装前可以在WSL2-Ubuntu中使用以下命令进行验证与显卡的通信和驱动调用的情况:

nvidia-smi

 

(一)安装CUDA

打开CUDA官方网址<建议“deb(network)”方式较为省事>,完整复制全部命令粘贴进WSL2-Ubuntu终端中按回车键运行。

CUDA Toolkit 12.8 Downloads | NVIDIA Developer

选项如图所示:

当然,也可以选WSL-Ubuntu这个选项更把稳。

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt-get update
sudo apt-get -y install cuda-toolkit-12-8

 

1、复制图片/官网下边的全部命令,粘贴到WSL2-Ubuntu终端窗口中,按ENTER键(回车键)运行 

2、过程中会要求输入密码,输入ubuntu密码即可。

3、执行命令后会自动进行下载和安装: 

 

4、安装结束后进行环境变量的编辑:

 a)我们可以按照下面的步骤来永久添加环境变量:

检查安装是否成功在配置环境变量之前,先确认 CUDA 是否正确安装。运行以下命令:ls /usr/local/cuda-12.8/bin/

在 WSL2-Ubuntu 系统中,CUDA 12.8 通常安装在/usr/local/cuda-12.8目录下,这个目录包含了 CUDA 相关的各种组件,如 bin(包含可执行文件,比如 nvcc 编译器就在这里面)、lib64(包含库文件)、include(包含头文件) 等。如果在安装过程中没有指定其他特殊路径,这就是默认的安装位置。我们可以通过以下命令来验证:

ls /usr/local/cuda-12.8

  如果安装成功,我们会看到nvcc等工具的列表。如果没有看到这些文件,可能需要重新检查安装步骤。

从我执行 ls /usr/local/cuda-12.8 后的输出结果来看,CUDA 12.8 似乎已经成功安装到了 /usr/local/cuda-12.8 目录下。

接下来,我们需要将 /usr/local/cuda-12.8/bin 目录添加到系统的 PATH 环境变量中,以便系统能够找到 nvcc 等命令。


b) 配置环境变量环境变量的配置需要根据你的系统类型(Bash 或 Zsh)来操作。

 确认当前使用的 Shell

首先,确认你当前使用的 Shell 是 Bash 还是 Zsh。

我们可以通过以下命令查看:

echo $SHELL

• 如果输出是   /bin/bash  ,则使用 Bash。

• 如果输出是   /bin/zsh  ,则使用 Zsh。

c)编辑环境变量配置文件

 

以下是常见的配置方法:

对于 Bash 用户

编辑   ~/.bashrc   文件,

nano ~/.bashrc

添加以下内容: 

export PATH=/usr/local/cuda-12.8/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-12.8/lib64:$LD_LIBRARY_PATH

• 按下   Ctrl + X  ,然后按   Y   确认保存,最后按   Enter   完成退出。 

保存文件后,运行以下命令使变量生效:

source ~/.bashrc

对于 Zsh 用户

编辑   ~/.zshrc   文件,

nano ~/.bashrc

添加相同的内容 : 

export PATH=/usr/local/cuda-12.8/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-12.8/lib64:$LD_LIBRARY_PATH

保存文件后,运行以下命令使变量生效(选其一):

source ~/.bashrc   # 如果是 Bash 用户
source ~/.zshrc    # 如果是 Zsh 用户

 5. 验证环境变量

配置完成后,运行以下命令验证:

echo $PATH

 6. 测试   nvcc  

运行   nvcc -V  或nvcc --version
,检查输出是否正确。

nvcc -V

或者: 

nvcc --version

 

如果配置正确,你会看到类似以下的输出:

 

love@AI:~$ ls /usr/local/cuda-12.8
DOCS      README  compute-sanitizer  extras  include  libnvvp           nvml  share  targets  version.json
EULA.txt  bin     doc                gds     lib64    nsightee_plugins  nvvm  src    tools
love@AI:~$ echo $SHELL
/bin/bash
love@AI:~$ nano ~/.bashrc
love@AI:~$ source ~/.bashrc
love@AI:~$ nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2025 NVIDIA Corporation
Built on Wed_Jan_15_19:20:09_PST_2025
Cuda compilation tools, release 12.8, V12.8.61
Build cuda_12.8.r12.8/compiler.35404655_0
love@AI:~$

 

至此,CUDA算是安装成功并得到验证。

 

7.驱动程序安装程序(建议)

在官方CUDA安装命令下方,有以下命令选项,强烈建议在验证完CUDA安装正确后,再次运行以下命令(任选其一)以确保安装程序的未来兼容性。

NVIDIA 驱动程序说明(选择一个选项)

 要安装 open kernel module 风格:

sudo apt-get install -y nvidia-open

要安装旧版内核模块风格:

sudo apt-get install -y cuda-drivers

 NVIDIA 驱动程序提供了两种内核模块风格:open kernel module(开源内核模块)和旧版内核模块(proprietary kernel module,专有内核模块)。这两种风格的主要区别在于它们的许可证类型、支持的功能和兼容性。


open kernel module 风格

• 许可证:开源,通常采用 MIT/GPLv2 许可证。

• 支持的 GPU 架构:支持 Turing 及以后的 GPU 架构。

• 支持的功能:支持大多数 Linux GPU 驱动程序的功能,包括 CUDA、Vulkan、OpenGL、OptiX 和 X11。此外,还有一些功能是仅 open kernel modules 支持的,例如 NVIDIA Confidential Computing、Magnum IO GPUDirect Storage(GDS)、Heterogeneous Memory Management(HMM)、CPU affinity for GPU fault handlers 和 DMABUF support for CUDA allocations。

• 兼容性:可能不支持所有旧版专有内核模块支持的特性,例如 NVIDIA virtual GPU(vGPU)、G-Sync on notebooks 和 Preserving video memory across power management events。

 

旧版内核模块风格

• 许可证:专有,由 NVIDIA 提供。

• 支持的 GPU 架构:支持 Maxwell、Pascal、Volta、Turing 和之后的 GPU 架构。

• 支持的功能:支持所有 NVIDIA GPU 驱动程序的功能,包括那些可能在 open kernel modules 中尚未支持的特性。

• 兼容性:通常更稳定,特别是在支持较旧的硬件和特定的企业级应用场景中。


新手用户推荐
对于新手用户,推荐安装open kernel module 风格的驱动程序,原因如下:

• 开源:更透明,社区支持更广泛。

• 更新:通常包含最新的功能和改进。

• 兼容性:对于大多数现代应用和游戏来说,open kernel modules 提供的兼容性已经足够。

然而,如果你有特定的需求,比如需要使用专有驱动程序中特有的功能,或者你的硬件较旧,可能需要旧版内核模块风格。

在安装驱动程序之前,建议先阅读 NVIDIA 的官方文档,了解不同风格的详细区别和推荐使用场景。此外,确保我们的系统满足安装要求,并按照官方指南进行操作,以避免潜在的兼容性问题。

 

 

 

(二)安装cuDNN

打开CUDA官方网址<建议“deb(network)”方式较为省事>,完整复制全部命令粘贴进WSL2-Ubuntu终端中按回车键运行。

cuDNN 9.8.0 Downloads | NVIDIA Developer

 选项如图所示:

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt-get update
sudo apt-get -y install cudnn

 

1、复制图片/官网下边的全部命令,粘贴到WSL2-Ubuntu终端窗口中,按ENTER键运行

2、执行命令后会自动进行下载和安装:

 

3、暂时性地验证 cuDNN 安装

此时,暂时性地验证 cuDNN 安装是否成功可以通过以下方法:

检查文件路径的方法
cuDNN 的库文件通常会被安装到`/usr/lib/x86_64-linux-gnu`或`/usr/local/cuda/lib64`目录下。你可以通过以下命令检查这些文件是否存在:

ls /usr/lib/x86_64-linux-gnu/libcudnn*

 输出应该如下所示:

love@AI:~$ ls /usr/lib/x86_64-linux-gnu/libcudnn*
/usr/lib/x86_64-linux-gnu/libcudnn.so
/usr/lib/x86_64-linux-gnu/libcudnn.so.9
/usr/lib/x86_64-linux-gnu/libcudnn.so.9.8.0
/usr/lib/x86_64-linux-gnu/libcudnn_adv.so
/usr/lib/x86_64-linux-gnu/libcudnn_adv.so.9
/usr/lib/x86_64-linux-gnu/libcudnn_adv.so.9.8.0
/usr/lib/x86_64-linux-gnu/libcudnn_adv_static.a
/usr/lib/x86_64-linux-gnu/libcudnn_adv_static_v9.a
/usr/lib/x86_64-linux-gnu/libcudnn_cnn.so
/usr/lib/x86_64-linux-gnu/libcudnn_cnn.so.9
/usr/lib/x86_64-linux-gnu/libcudnn_cnn.so.9.8.0
/usr/lib/x86_64-linux-gnu/libcudnn_cnn_static.a
/usr/lib/x86_64-linux-gnu/libcudnn_cnn_static_v9.a
/usr/lib/x86_64-linux-gnu/libcudnn_engines_precompiled.so
/usr/lib/x86_64-linux-gnu/libcudnn_engines_precompiled.so.9
/usr/lib/x86_64-linux-gnu/libcudnn_engines_precompiled.so.9.8.0
/usr/lib/x86_64-linux-gnu/libcudnn_engines_precompiled_static.a
/usr/lib/x86_64-linux-gnu/libcudnn_engines_precompiled_static_v9.a
/usr/lib/x86_64-linux-gnu/libcudnn_engines_runtime_compiled.so
/usr/lib/x86_64-linux-gnu/libcudnn_engines_runtime_compiled.so.9
/usr/lib/x86_64-linux-gnu/libcudnn_engines_runtime_compiled.so.9.8.0
/usr/lib/x86_64-linux-gnu/libcudnn_engines_runtime_compiled_static.a
/usr/lib/x86_64-linux-gnu/libcudnn_engines_runtime_compiled_static_v9.a
/usr/lib/x86_64-linux-gnu/libcudnn_graph.so
/usr/lib/x86_64-linux-gnu/libcudnn_graph.so.9
/usr/lib/x86_64-linux-gnu/libcudnn_graph.so.9.8.0
/usr/lib/x86_64-linux-gnu/libcudnn_graph_static.a
/usr/lib/x86_64-linux-gnu/libcudnn_graph_static_v9.a
/usr/lib/x86_64-linux-gnu/libcudnn_heuristic.so
/usr/lib/x86_64-linux-gnu/libcudnn_heuristic.so.9
/usr/lib/x86_64-linux-gnu/libcudnn_heuristic.so.9.8.0
/usr/lib/x86_64-linux-gnu/libcudnn_heuristic_static.a
/usr/lib/x86_64-linux-gnu/libcudnn_heuristic_static_v9.a
/usr/lib/x86_64-linux-gnu/libcudnn_ops.so
/usr/lib/x86_64-linux-gnu/libcudnn_ops.so.9
/usr/lib/x86_64-linux-gnu/libcudnn_ops.so.9.8.0
/usr/lib/x86_64-linux-gnu/libcudnn_ops_static.a
/usr/lib/x86_64-linux-gnu/libcudnn_ops_static_v9.a

从我的提供的输出结果来看,cuDNN 库文件已经成功安装在`/usr/lib/x86_64-linux-gnu`目录下,而不是`/usr/local/cuda/lib64`。这说明 cuDNN 的安装路径是正确的,并且系统已经正确配置了相关的库文件。

以下是验证结果解释:

• cuDNN 库文件存在:

• 我已经找到了多个 cuDNN 的动态链接库(如`libcudnn.so`、`libcudnn.so.9`、`libcudnn.so.9.8.0`)和静态库(如`libcudnn_adv_static.a`、`libcudnn_cnn_static_v9.a`等)。

• 这些文件的存在表明 cuDNN 已正确安装。


• CUDA 目录下没有 cuDNN 文件:

• `/usr/local/cuda/lib64`目录下没有找到 cuDNN 文件,这是因为 cuDNN 的安装路径是`/usr/lib/x86_64-linux-gnu`,而不是`/usr/local/cuda`。

• 这是正常的,因为 cuDNN 的安装路径通常由系统包管理器(如`apt`)决定,而不是手动安装到 CUDA 的目录下。

小结:从我的输出结果来看,cuDNN 已正确安装在   /usr/lib/x86_64-linux-gnu   目录下。

 

接下来我们将通过安装Anaconda之后,在与系统隔离的虚拟环境中安装Pytorch来完全地验证CUDA和cuDNN的安装是否正确。


 

(三)安装Anaconda

通过查询,截止2025年03月06日,最新版本Anaconda完整文件名为:Anaconda3-2024.10-1-Linux-x86_64.sh

1、通过以下命令下载和安装:

复制命令粘贴到WSL2-Ubuntu终端窗口中,按ENTER键运行

wget -P /tmp https://repo.anaconda.com/archive/Anaconda3-2024.10-1-Linux-x86_64.sh # 下载anaconda安装包至 /tmp 目录下
bash /tmp/Anaconda3-2024.10-1-Linux-x86_64.sh # 安装anaconda

2、执行命令后会自动进行下载完成后会进入安装步骤: 

此时要点击ENTER键后一直按着不松开,来翻页阅读安装前协议

 继续按着ENTER键不松手,直到出现输入框才停止

一直按到出现输入框,按多了也没关系,不输入就不能继续

 用键盘手动输入“yes”,之后按ENTER回车键确认输入。然后进入到下边这个界面:

这会会询问安装位置,默认不修改则继续按一次ENTER键确认使用默认安装路径:

之后安装会询问:是否要集成到shell当中,自动进入默认虚拟环境? 

建议输入“yes”

 

此时安装完成。

建议关闭终端,然后重新打开,看看是否自动进入默认的conda的base虚拟环境了: 

 可以看到重新打开WSL2-Ubuntu终端后已自动激活base默认的Anaconda虚拟环境了。

 

3、验证Anaconda的安装

验证 Conda 安装是否成功可以通过以下几种方法。这些方法可以帮助你确认 Conda 是否正确安装,并且能够正常运行。


方法 1:检查 Conda 版本
运行以下命令来检查 Conda 的版本号。如果 Conda 安装成功,它会显示当前的版本信息:

conda --version


如果输出类似以下内容,则说明 Conda 安装成功:

 


如果没有输出,或者提示`conda: command not found`,则说明 Conda 没有正确安装,或者其路径没有被添加到系统的环境变量中。


方法 2:检查 Conda 环境
运行以下命令来查看当前的 Conda 环境列表:

conda env list


如果 Conda 安装成功,你会看到类似以下的输出,列出所有已创建的 Conda 环境:


 

方法 3:创建并激活新的 Conda 环境
你可以创建一个新的 Conda 环境并激活它,以验证 Conda 的功能是否正常:


• 创建新的环境:

conda create -n testenv python=3.9

 

• 激活环境:

conda activate testenv

 

• 检查当前环境:

conda info --envs


如果输出显示当前激活的环境是`testenv`,则说明 Conda 正常工作:


# conda environments:
#
base                     /home/love/miniconda3
testenv               *  /home/love/miniconda3/envs/testenv
```

方法 4:安装并验证 Python 包
在激活的 Conda 环境中,安装一个常用的 Python 包(如`numpy`),并验证其是否正常工作:


• 安装包:

 conda install numpy

 

• 验证安装:

 python -c "import numpy; print(numpy.__version__)"


如果输出显示了`numpy`的版本号(例如`1.23.4`),则说明 Conda 和 Python 环境正常工作。


方法 5:检查 Conda 配置
运行以下命令来检查 Conda 的配置信息:

conda config --show

 


这将显示 Conda 的配置文件路径、默认环境路径、通道(channels)等信息。如果输出正常,说明 Conda 的配置文件没有问题。


方法 6:检查 Conda 的初始化
如果你在安装 Conda 后没有运行初始化命令,可能会导致`conda`命令无法正常使用。运行以下命令来初始化 Conda:

conda init


然后重新打开终端窗口,再次运行`conda --version`来验证。

conda --version


小结
通过以上方法,你可以全面验证 Conda 是否正确安装并正常工作。如果在验证过程中遇到问题,请检查以下内容:

• 确保 Conda 的安装路径已添加到系统的环境变量中。

• 确保 Conda 初始化完成。

• 如果仍然有问题,可以尝试重新安装 Conda。

 

 

三、安装Pytorch并验证CUDA12.8、cuDNN、Anaconda、Pytorch的安装

(一)安装Pytorch

我们就用默认的base环境来安装torch进行验证WSL2-Ubuntu的整个深度学习环境的搭建是否成功

目前CUDA12.8版本还不支持conda命令安装,今后torch官方会更新出conda包,我们就先用官方给的pip命令安装Preview (Nightly)版:

 

pip3 install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/cu128

 过一会后安装完成:

 接下来我们将用这个重要的深度学习库来验证之前的所有安装。

 

(二)用Pytorch并验证CUDA12.8、cuDNN、Anaconda、Pytorch的安装

先关闭WSL2-Ubuntu终端后,重新打开WSL2-Ubuntu终端;

在WSL2-Ubuntu终端内输入“python”并回车调起python:

python

 

复制以下整段代理粘贴后按ENTER回车键支持验证:

import torch  # 导入 PyTorch 库

print("PyTorch 版本:", torch.__version__)  # 打印 PyTorch 的版本号

# 检查 CUDA 是否可用,并设置设备("cuda:0" 或 "cpu")
device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
print("设备:", device)  # 打印当前使用的设备
print("CUDA 可用:", torch.cuda.is_available())  # 打印 CUDA 是否可用
print("cuDNN 已启用:", torch.backends.cudnn.enabled)  # 打印 cuDNN 是否已启用

# 打印 PyTorch 支持的 CUDA 和 cuDNN 版本
print("支持的 CUDA 版本:", torch.version.cuda)
print("cuDNN 版本:", torch.backends.cudnn.version())

# 创建两个随机张量(默认在 CPU 上)
x = torch.rand(5, 3)
y = torch.rand(5, 3)

# 将张量移动到指定设备(CPU 或 GPU)
x = x.to(device)
y = y.to(device)

# 对张量进行逐元素相加
z = x + y

# 打印结果
print("张量 z 的值:")
print(z)  # 输出张量 z 的内容

 如果输出如下,则表明CUDA12.8、cuDNN、Anaconda、Pytorch全部安装成功!

从上边的输出来看,你已经成功地在 Python 中导入了 PyTorch,并且确认了 CUDA 和 cuDNN 的可用性。你的代码运行正常,并且 PyTorch 正在使用 GPU(`cuda:0`)进行计算。以下是对代码和输出的总结:

(base) love@AI:~$ python
Python 3.12.7 | packaged by Anaconda, Inc. | (main, Oct  4 2024, 13:27:36) [GCC 11.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import torch  # 导入 PyTorch 库
"PyTorch 版本:", torch.__version__)  # 打印 PyTorch 的版本号

# 检查 CUDA 是否可用,并设置设备("cuda:0" 或 "cpu")
device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
print("设备:", device)  # 打印当前使用的设备
print("CUDA 可用:", torch.cuda.is_available())  # 打印 CUDA 是否可用
print("cuDNN 已启用:", torch.backends.cudnn.enabled)  # 打印 cuDNN 是否已启用

# 打印 PyTorch 支持的 CUDA 和 cuDNN 版本
print("支持的 CUDA 版本:", torch.version.cuda)
print("cuDNN 版本:", torch.backends.cudnn.version())

# 创建两个随机张量(默认在 CPU 上)
x = torch.rand(5, 3)
y = torch.rand(5, 3)

# 将张量移动到指定设备(CPU 或 GPU)
x = x.to(device)
y = y.to(device)

# 对张量进行逐元素相加
z = x + y

# 打印结果
print("张量 z 的值:")
print(z)  # 输出张量 z 的内容>>>
>>> print("PyTorch 版本:", torch.__version__)  # 打印 PyTorch 的版本号
PyTorch 版本: 2.7.0.dev20250306+cu128
>>>
>>> # 检查 CUDA 是否可用,并设置设备("cuda:0" 或 "cpu")
>>> device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
>>> print("设备:", device)  # 打印当前使用的设备
设备: cuda:0
>>> print("CUDA 可用:", torch.cuda.is_available())  # 打印 CUDA 是否可用
CUDA 可用: True
>>> print("cuDNN 已启用:", torch.backends.cudnn.enabled)  # 打印 cuDNN 是否已启用
cuDNN 已启用: True
>>>
>>> # 打印 PyTorch 支持的 CUDA 和 cuDNN 版本
>>> print("支持的 CUDA 版本:", torch.version.cuda)
支持的 CUDA 版本: 12.8
>>> print("cuDNN 版本:", torch.backends.cudnn.version())
cuDNN 版本: 90701
>>>
>>> # 创建两个随机张量(默认在 CPU 上)
>>> x = torch.rand(5, 3)
>>> y = torch.rand(5, 3)
>>>
>>> # 将张量移动到指定设备(CPU 或 GPU)
>>> x = x.to(device)
>>> y = y.to(device)
>>>
>>> # 对张量进行逐元素相加
>>> z = x + y
>>>
>>> # 打印结果
>>> print("张量 z 的值:")
张量 z 的值:
>>> print(z)  # 输出张量 z 的内容
tensor([[0.8231, 0.9657, 1.3131],
        [0.8789, 1.4404, 0.8304],
        [0.8528, 1.3328, 1.9110],
        [1.0722, 0.6289, 1.4093],
        [1.1559, 0.8878, 0.5438]], device='cuda:0')
>>>


---

代码运行结果:
PyTorch 版本: 2.7.0.dev20250306+cu128
设备: cuda:0
CUDA 可用: True
cuDNN 已启用: True
支持的 CUDA 版本: 12.8
cuDNN 版本: 90701

---

关键信息:

• PyTorch 版本:`2.7.0.dev20250306+cu128`

• 这是一个开发版本(`dev`),并且是针对 CUDA 12.8 的版本。


• 设备:`cuda:0`

• 表示 PyTorch 已成功检测到 GPU,并将使用第一个 GPU 设备。


• CUDA 和 cuDNN:

• CUDA 可用:`True`,表示系统支持 CUDA,PyTorch 可以利用 GPU 加速。

• cuDNN 已启用:`True`,表示 cuDNN 已启用,这有助于进一步加速深度学习任务。

• 支持的 CUDA 版本:`12.8`,表示 PyTorch 支持 CUDA 12.8。

• cuDNN 版本:`90701`(即 cuDNN 9.7.1)。


---

如果我们遇到任何问题(例如 CUDA 不可用),请确保:

• 检查 GPU 驱动和 CUDA 安装:

• GPU 驱动是最新的。

• 安装了正确版本的 CUDA 和 cuDNN。

• PyTorch 版本与 CUDA 版本兼容。


---

【Windows 11 中部署 Linux 项目 - CSDN App】https://blog.csdn.net/u014451778/article/details/144777265?sharetype=blog&shareId=144777265&sharerefer=APP&sharesource=u014451778&sharefrom=link


至此,在Windosw系统上的WSL2-Ubuntu深度学习环境配置完成,可以在Windosw系统上优雅地借助Windosw的易用性和Linux系统的高效性进行项目部署和开发调试了。

 

 

 

 

 

 

本文地址:https://www.vps345.com/2777.html

搜索文章

Tags

PV计算 带宽计算 流量带宽 服务器带宽 上行带宽 上行速率 什么是上行带宽? CC攻击 攻击怎么办 流量攻击 DDOS攻击 服务器被攻击怎么办 源IP 服务器 linux 运维 游戏 云计算 javascript 前端 chrome edge 进程 操作系统 进程控制 Ubuntu ssh deepseek Ollama 模型联网 API CherryStudio python MCP 数据库 centos oracle 关系型 安全 分布式 llama 算法 opencv 自然语言处理 神经网络 语言模型 flutter react.js 前端面试题 node.js 持续部署 Dell R750XS 科技 ai java 人工智能 个人开发 harmonyos 华为 开发语言 typescript 计算机网络 ubuntu numpy 笔记 C 环境变量 进程地址空间 rust http 网络 阿里云 网络安全 网络协议 macos adb nginx 监控 自动化运维 django fastapi flask web3.py Flask FastAPI Waitress Gunicorn uWSGI Uvicorn RTSP xop RTP RTSPServer 推流 视频 kvm 无桌面 命令行 Hyper-V WinRM TrustedHosts matlab YOLOv8 NPU Atlas800 A300I pro asi_bench ecm bpm android c++ c语言 tcp/ip Deepseek github 面试 性能优化 jdk intellij-idea 架构 udp unity golang 后端 IIS .net core Hosting Bundle .NET Framework vs2022 php html 经验分享 ollama llm 深度学习 机器学习 chatgpt 大模型 llama3 Chatglm 开源大模型 自动化 蓝耘科技 元生代平台工作流 ComfyUI zotero WebDAV 同步失败 代理模式 pycharm 串口服务器 vue.js audio vue音乐播放器 vue播放音频文件 Audio音频播放器自定义样式 播放暂停进度条音量调节快进快退 自定义audio覆盖默认样式 YOLO pytorch sql KingBase mcp mcp-proxy mcp-inspector fastapi-mcp agent sse 银河麒麟 kylin v10 麒麟 v10 LDAP spring boot websocket tomcat ESP32 ide nuxt3 vue3 docker 实时音视频 filezilla 无法连接服务器 连接被服务器拒绝 vsftpd 331/530 统信 国产操作系统 虚拟机安装 .net Docker Compose docker compose docker-compose gitlab 多线程服务器 Linux网络编程 conda pillow spring json html5 firefox windows 搜索引擎 kubernetes 容器 学习方法 程序人生 创意 社区 DeepSeek-R1 API接口 prometheus kylin 银河麒麟操作系统 国产化 rpc 远程过程调用 Windows环境 直播推流 腾讯云 rsyslog 智能路由器 电脑 AI编程 Reactor 设计模式 C++ 云原生 学习 媒体 微信公众平台 嵌入式硬件 C语言 ipython 物联网 硬件工程 单片机 svn eureka web安全 AIGC FTP服务器 DeepSeek 服务器繁忙 AI 联想开天P90Z装win10 redis qt DigitalOcean GPU服务器购买 GPU服务器哪里有 GPU服务器 apache 向日葵 jmeter 软件测试 gitee microsoft stm32 C++软件实战问题排查经验分享 0xfeeefeee 0xcdcdcdcd 动态库加载失败 程序启动失败 程序运行权限 标准用户权限与管理员权限 权限 mysql 统信UOS 麒麟 bonding 链路聚合 vscode 压力测试 mongodb mount挂载磁盘 wrong fs type LVM挂载磁盘 Centos7.9 c# 安全架构 游戏服务器 Minecraft 机器人 课程设计 大数据 cursor MCP server C/S LLM windows日志 agi 计算机视觉 ansible playbook gpu算力 LORA 大语言模型 NLP H3C 命名管道 客户端与服务端通信 go 硬件架构 系统架构 服务器无法访问 ip地址无法访问 无法访问宝塔面板 宝塔面板打不开 uni-app es jvm 目标检测 华为云 springsecurity6 oauth2 授权服务器 前后端分离 openEuler 医疗APP开发 app开发 jar arm FunASR ASR jenkins 佛山戴尔服务器维修 佛山三水服务器维修 android studio 交互 file server http server web server ssl https ollama下载加速 集成学习 集成测试 远程连接 rdp 实验 远程工作 负载均衡 消息队列 Docker Hub docker pull 镜像源 daemon.json Linux 代码调试 ipdb oceanbase rc.local 开机自启 systemd Dify UOS 统信操作系统 yum 深度优先 图论 并集查找 换根法 树上倍增 ddos shell MNN Qwen 备份SQL Server数据库 数据库备份 傲梅企业备份网络版 arm开发 远程桌面 gaussdb ruoyi DeepSeek行业应用 Heroku 网站部署 xss pppoe radius fpga开发 hugo AI agent 思科模拟器 思科 Cisco minio java-ee kind react next.js 部署 部署next.js googlecloud X11 Xming bash 小程序 JAVA IDEA Java 开源 弹性计算 虚拟化 KVM 计算虚拟化 弹性裸金属 idm EMQX MQTT 通信协议 运维开发 爬虫 数据集 ios 漏洞 宝塔面板 同步 备份 建站 安全威胁分析 vscode 1.86 安装教程 GPU环境配置 Ubuntu22 CUDA PyTorch Anaconda安装 编辑器 SSH 豆瓣 追剧助手 迅雷 nas 微信 内存 unity3d excel aws 备选 网站 api 调用 示例 银河麒麟桌面操作系统 Kylin OS postman mock mock server 模拟服务器 mock服务器 Postman内置变量 Postman随机数据 maven intellij idea 监控k8s集群 集群内prometheus git elasticsearch IIS服务器 IIS性能 日志监控 国标28181 视频监控 监控接入 语音广播 流程 SIP SDP mosquitto 外网访问 内网穿透 端口映射 r语言 数据挖掘 数据可视化 数据分析 word图片自动上传 word一键转存 复制word图片 复制word图文 复制word公式 粘贴word图文 粘贴word公式 GaN HEMT 氮化镓 单粒子烧毁 辐射损伤 辐照效应 华为od sqlite dubbo TCP服务器 qt项目 qt项目实战 qt教程 openssl 密码学 模拟退火算法 3d 数学建模 网络结构图 根服务器 av1 电视盒子 机顶盒ROM 魔百盒刷机 spring cloud kafka hibernate remote-ssh sqlserver ukui 麒麟kylinos openeuler 微服务 virtualenv debian 游戏程序 ffmpeg 音视频 AI大模型 大模型入门 大模型教程 webrtc Nuxt.js 温湿度数据上传到服务器 Arduino HTTP 需求分析 规格说明书 springboot 雨云 NPS 孤岛惊魂4 恒源云 tcp 其他 Cursor big data express okhttp CORS 跨域 大模型微调 open webui TRAE vim 博客 oneapi Headless Linux 远程登录 telnet pdf asp.net大文件上传 asp.net大文件上传下载 asp.net大文件上传源码 ASP.NET断点续传 asp.net上传文件夹 asp.net上传大文件 .net core断点续传 华为认证 网络工程师 交换机 重启 排查 系统重启 日志 原因 pygame 小游戏 五子棋 visualstudio k8s zookeeper ci/cd live555 rtsp rtp 僵尸进程 驱动开发 嵌入式实习 Samba SWAT 配置文件 服务管理 网络共享 WSL win11 无法解析服务器的名称或地址 v10 软件 armbian u-boot Linux PID Cline 企业微信 Linux24.04 deepin ecmascript nextjs reactjs 流式接口 URL Agent ftp ssrf 失效的访问控制 HTML audio 控件组件 vue3 audio音乐播放器 Audio标签自定义样式默认 vue3播放音频文件音效音乐 自定义audio播放器样式 播放暂停调整声音大小下载文件 MI300x openwrt ux 多线程 flash-attention 报错 LLM Web APP Streamlit hadoop 缓存 opensearch helm xrdp string模拟实现 深拷贝 浅拷贝 经典的string类问题 三个swap 开发环境 SSL证书 sysctl.conf vm.nr_hugepages Python 网络编程 聊天服务器 套接字 TCP 客户端 Socket 能力提升 面试宝典 技术 IT信息化 源码剖析 rtsp实现步骤 流媒体开发 odoo 服务器动作 Server action etl 前端框架 远程控制 远程看看 远程协助 HiCar CarLife+ CarPlay QT RK3588 yolov8 Node-Red 编程工具 流编程 visual studio code 知识图谱 网络穿透 云服务器 系统安全 CPU yaml Ultralytics 可视化 cpu 实时 使用 高效日志打印 串口通信日志 服务器日志 系统状态监控日志 异常记录日志 NFS jupyter 毕设 游戏引擎 相差8小时 UTC 时间 HarmonyOS bat rocketmq OD机试真题 华为OD机试真题 服务器能耗统计 中间件 dns deepseek r1 低代码 dify 三级等保 服务器审计日志备份 make命令 makefile文件 视觉检测 智能音箱 智能家居 微信小程序 Docker引擎已经停止 Docker无法使用 WSL进度一直是0 镜像加速地址 多个客户端访问 IO多路复用 回显服务器 TCP相关API bootstrap web 1024程序员节 iphone ui rclone AList webdav fnOS 软考 信息与通信 linux 命令 sed 命令 jina css 安卓 压测 ECS HarmonyOS Next 嵌入式 产测工具框架 IMX6ULL 管理框架 wireshark 繁忙 解决办法 替代网站 汇总推荐 AI推理 CDN 镜像 gateway Clion Nova ResharperC++引擎 Centos7 远程开发 dba Linux的基础指令 prompt easyui langchain matplotlib 鸿蒙系统 tailscale derp derper 中转 主板 电源 网卡 uv IMX317 MIPI H265 VCU 矩阵 线性代数 电商平台 composer 大文件分片上传断点续传及进度条 如何批量上传超大文件并显示进度 axios大文件切片上传详细教 node服务器合并切片 vue3大文件上传报错提示错误 大文件秒传跨域报错cors XCC Lenovo 测试工具 DOIT 四博智联 navicat yum源切换 更换国内yum源 防火墙 NAT转发 NAT Server 文件系统 路径解析 Unity Dedicated Server Host Client 无头主机 stm32项目 ip embedding wsl 无人机 ROS 自动驾驶 网络攻击模型 Linux find grep safari pip Mac 系统 wsgiref Web 服务器网关接口 list 数据结构 历史版本 下载 安装 skynet nvidia npm linux驱动开发 less 命令 unix 常用命令 文本命令 目录命令 devops 计算机外设 计算机 .netcore 信号处理 thingsboard postgresql ardunio BLE 端口测试 MacOS录屏软件 iDRAC R720xd 程序 编程 性能分析 mamba Vmamba 实时互动 dell服务器 iventoy VmWare OpenEuler css3 CH340 串口驱动 CH341 uart 485 XFS xfs文件系统损坏 I_O error 磁盘监控 iot 策略模式 单例模式 ESXi 服务器配置 生物信息学 gitea fd 文件描述符 服务器主板 AI芯片 mac bcompare Beyond Compare Jellyfin 模拟器 教程 可信计算技术 n8n 工作流 workflow 模拟实现 zabbix c cocoapods xcode 我的世界服务器搭建 threejs 3D IPv4 子网掩码 公网IP 私有IP asm SSH 密钥生成 SSH 公钥 私钥 生成 王者荣耀 SenseVoice Wi-Fi 超融合 Spring Security 我的世界 我的世界联机 数码 Windows Qwen2.5-coder 离线部署 虚拟机 ISO镜像作为本地源 云服务 云电竞 云电脑 todesk iperf3 带宽测试 BMC IPMI 带外管理 软链接 硬链接 职场和发展 db 硬件 设备 GPU PCI-Express WebUI DeepSeek V3 智能手机 EMUI 回退 降级 升级 SSH 服务 SSH Server OpenSSH Server jetty undertow ShenTong tidb GLIBC 中兴光猫 换光猫 网络桥接 自己换光猫 cnn DenseNet CrewAI rabbitmq ruby log4j 线程 ArkUI 多端开发 智慧分发 应用生态 鸿蒙OS Erlang OTP gen_server 热代码交换 事务语义 流水线 脚本式流水线 efficientVIT YOLOv8替换主干网络 TOLOv8 apt sqlite3 Xinference RAGFlow glibc rustdesk 鸿蒙 dns是什么 如何设置电脑dns dns应该如何设置 宝塔面板访问不了 宝塔面板网站访问不了 宝塔面板怎么配置网站能访问 宝塔面板配置ip访问 宝塔面板配置域名访问教程 宝塔面板配置教程 单元测试 功能测试 selenium freebsd AI-native Docker Desktop ocr WSL2 IM即时通讯 QQ 剪切板对通 HTML FORMAT 图形化界面 换源 国内源 Debian VMware安装Ubuntu Ubuntu安装k8s 测试用例 AI写作 AI作画 聊天室 GCC crosstool-ng KylinV10 麒麟操作系统 Vmware 银河麒麟服务器操作系统 系统激活 k8s集群资源管理 云原生开发 算力 RAGFLOW Radius wsl2 camera Arduino 电子信息 tensorflow muduo 个人博客 selete 高级IO 多层架构 解耦 lsb_release /etc/issue /proc/version uname -r 查看ubuntu版本 Ubuntu DeepSeek DeepSeek Ubuntu DeepSeek 本地部署 DeepSeek 知识库 DeepSeek 私有化知识库 本地部署 DeepSeek DeepSeek 私有化部署 windwos防火墙 defender防火墙 win防火墙白名单 防火墙白名单效果 防火墙只允许指定应用上网 防火墙允许指定上网其它禁止 deekseek ragflow 知识库 高效远程协作 TrustViewer体验 跨设备操作便利 智能远程控制 gcc g++ g++13 Ubuntu 24 常用命令 Ubuntu 24 Ubuntu vi 异常处理 aarch64 编译安装 HPC 数据库架构 数据管理 数据治理 数据编织 数据虚拟化 烟花代码 烟花 元旦 grafana 直流充电桩 充电桩 redhat junit 微信分享 Image wxopensdk 自动化测试 性能测试 SEO dity make 显示管理器 lightdm gdm 树莓派 VNC Linux awk awk函数 awk结构 awk内置变量 awk参数 awk脚本 awk详解 图像处理 阻塞队列 生产者消费者模型 服务器崩坏原因 laravel Linux无人智慧超市 LInux多线程服务器 QT项目 LInux项目 单片机项目 vue Xterminal NAS Termux netty 信号 p2p sentinel onlyoffice 小艺 Pura X GoogLeNet Netty 即时通信 NIO Typore cd 目录切换 双系统 HTTP 服务器控制 ESP32 DeepSeek bug firewall AD域 致远OA OA服务器 服务器磁盘扩容 宠物 毕业设计 免费学习 宠物领养 宠物平台 游戏机 抗锯齿 技术共享 黑客 vasp安装 边缘计算 智能硬件 查询数据库服务IP地址 SQL Server 程序员 加解密 Yakit yaklang 语音识别 AutoDL HCIE 数通 gpt VR手套 数据手套 动捕手套 动捕数据手套 code-server SVN Server tortoise svn SysBench 基准测试 流量运营 wordpress 无法访问wordpess后台 打开网站页面错乱 linux宝塔面板 wordpress更换服务器 Open WebUI 交叉编译 MS Materials elk eclipse xpath定位元素 业界资讯 kamailio sip VoIP 大数据平台 虚拟局域网 银河麒麟高级服务器 外接硬盘 Kylin 技能大赛 echarts 信息可视化 网页设计 gradle transformer 7z 华为机试 Linux环境 输入法 群晖 proxy模式 AISphereButler HAProxy RoboVLM 通用机器人策略 VLA设计哲学 vlm fot robot 视觉语言动作模型 具身智能 Dell HPE 联想 浪潮 tcpdump rust腐蚀 框架搭建 显卡驱动 Kali UDP的API使用 vSphere vCenter 实习 llama.cpp Java Applet URL操作 服务器建立 Socket编程 网络文件读取 远程 执行 sshpass 操作 CVE-2024-7347 VPS .net mvc断点续传 实战案例 序列化反序列化 iBMC UltraISO 合成模型 扩散模型 图像生成 飞书 web3 金仓数据库 2025 征文 数据库平替用金仓 autodl 软件定义数据中心 sddc RTMP 应用层 反向代理 虚幻 状态模式 工业4.0 IMM QT 5.12.12 QT开发环境 Ubuntu18.04 GRUB引导 Linux技巧 rtsp服务器 rtsp server android rtsp服务 安卓rtsp服务器 移动端rtsp服务 大牛直播SDK docker搭建nacos详解 docker部署nacos docker安装nacos 腾讯云搭建nacos centos7搭建nacos 传统数据库升级 银行 LLMs springboot远程调试 java项目远程debug docker远程debug java项目远程调试 springboot远程 单一职责原则 5G 3GPP 卫星通信 DevEco Studio OpenHarmony 真机调试 IPMITOOL 硬件管理 opcua opcda KEPServer安装 nac 802.1 portal P2P HDLC 小智AI服务端 xiaozhi TTS FTP 服务器 RAID RAID技术 磁盘 存储 VMware安装mocOS VMware macOS系统安装 sdkman uniapp 微信开放平台 微信公众号配置 ros 游戏开发 hexo 移动云 鲲鹏 prometheus数据采集 prometheus数据模型 prometheus特点 僵尸世界大战 游戏服务器搭建 多进程 相机 Python基础 Python教程 Python技巧 软件工程 nfs wps SSL 域名 Anolis nginx安装 环境安装 linux插件下载 mariadb cuda cudnn ceph 自定义客户端 SAS 毕昇JDK Claude webstorm Trae IDE AI 原生集成开发环境 Trae AI AnythingLLM AnythingLLM安装 linux安装配置 mcu rnn mysql离线安装 ubuntu22.04 mysql8.0 源码 深度求索 私域 环境配置 pyqt 微信小程序域名配置 微信小程序服务器域名 微信小程序合法域名 小程序配置业务域名 微信小程序需要域名吗 微信小程序添加域名 centos-root /dev/mapper yum clean all df -h / du -sh 半虚拟化 硬件虚拟化 Hypervisor 考研 在线office etcd 数据安全 RBAC frp EasyConnect Kali Linux 渗透测试 信息收集 h.264 micropython esp32 mqtt 基础入门 腾讯云大模型知识引擎 seatunnel k8s资源监控 annotations自动化 自动化监控 监控service 监控jvm RustDesk自建服务器 rustdesk服务器 docker rustdesk 黑客技术 hive Hive环境搭建 hive3环境 Hive远程模式 webgl 项目部署到linux服务器 项目部署过程 本地部署 pgpool 开机自启动 rag ragflow 源码启动 vscode1.86 1.86版本 ssh远程连接 田俊楠 SSE open Euler dde 迁移指南 网卡的名称修改 eth0 ens33 ue4 着色器 ue5 chrome 浏览器下载 chrome 下载安装 谷歌浏览器下载 can 线程池 cpp-httplib 网工 epoll TrinityCore 魔兽世界 anaconda adobe ssh远程登录 MySql clickhouse linux上传下载 昇腾 npu 健康医疗 互联网医院 outlook 浏览器开发 AI浏览器 USB转串口 环境迁移 lio-sam SLAM 飞牛NAS 飞牛OS MacBook Pro 服务器管理 配置教程 服务器安装 网站管理 harmonyOS面试题 崖山数据库 YashanDB 视频编解码 邮件APP 免费软件 Ubuntu 24.04.1 轻量级服务器 python3.11 dash 正则表达式 vmware 卡死 Ubuntu Server Ubuntu 22.04.5 文件分享 iis W5500 OLED u8g2 chfs ubuntu 16.04 移动魔百盒 token sas 蓝桥杯 软负载 CLion 服务器部署ai模型 IO模型 AI代码编辑器 curl wget 端口 查看 ss risc-v 链表 firewalld Redis Desktop AI Agent 字节智能运维 swoole 粘包问题 服务器数据恢复 数据恢复 存储数据恢复 北亚数据恢复 oracle数据恢复 visual studio perf docker部署翻译组件 docker部署deepl docker搭建deepl java对接deepl 翻译组件使用 DBeaver 数据仓库 kerberos 西门子PLC 通讯 iftop 网络流量监控 上传视频至服务器代码 vue3批量上传多个视频并预览 如何实现将本地视频上传到网页 element plu视频上传 ant design vue vue3本地上传视频及预览移除 自动化任务管理 宕机切换 服务器宕机 openstack Xen rpa TCP协议 triton 模型分析 milvus Logstash 日志采集 springcloud flink 开发 代理 飞牛nas fnos vr Attention PVE Unity插件 x64 SIGSEGV xmm0 ip命令 新增网卡 新增IP 启动网卡 ubuntu24.04.1 RAG 检索增强生成 文档解析 大模型垂直应用 mq PX4 李心怡 Google pay Apple pay fast 大模型应用 TrueLicense Linux的权限 docker部署Python Invalid Host allowedHosts 离线部署dify DNS UDP 服务器时间 eNSP 企业网络规划 华为eNSP 网络规划 kali 共享文件夹 嵌入式Linux IPC VMware创建虚拟机 gnu idea ping++ 网络爬虫 大模型推理 大模型学习 搭建个人相关服务器 minicom 串口调试工具 音乐服务器 Navidrome 音流 灵办AI 在线预览 xlsx xls文件 在浏览器直接打开解析xls表格 前端实现vue3打开excel 文件地址url或接口文档流二进 trea 语法 增强现实 沉浸式体验 应用场景 技术实现 案例分析 AR YOLOv12 ubuntu24 vivado24 元服务 应用上架 热榜 架构与原理 虚幻引擎 软件需求 DocFlow edge浏览器 键盘 阿里云ECS 办公自动化 自动化生成 pdf教程 CentOS 论文阅读 自动化编程 trae 怎么卸载MySQL MySQL怎么卸载干净 MySQL卸载重新安装教程 MySQL5.7卸载 Linux卸载MySQL8.0 如何卸载MySQL教程 MySQL卸载与安装 MDK 嵌入式开发工具 论文笔记 sublime text 欧标 OCPP arcgis 物联网开发 lua 嵌入式系统开发 vue-i18n 国际化多语言 vue2中英文切换详细教程 如何动态加载i18n语言包 把语言json放到服务器调用 前端调用api获取语言配置文件 社交电子 代理服务器 ros2 moveit 机器人运动 影刀 #影刀RPA# 产品经理 Deepseek-R1 私有化部署 推理模型 域名服务 DHCP 符号链接 配置 音乐库 飞牛 实用教程 运维监控 分析解读 pyautogui 风扇控制软件 searxng midjourney 网络药理学 生信 PPI String Cytoscape CytoHubba figma 远程服务 bot Docker rime 裸金属服务器 弹性裸金属服务器 leetcode 推荐算法 conda配置 conda镜像源 大模型部署 状态管理的 UDP 服务器 Arduino RTOS MacMini 迷你主机 mini Apple Windsurf 信创 信创终端 中科方德 程序员创富 nlp 干货分享 黑客工具 密码爆破 EtherNet/IP串口网关 EIP转RS485 EIP转Modbus EtherNet/IP网关协议 EIP转RS485网关 EIP串口服务器 执法记录仪 智能安全帽 smarteye docker run 数据卷挂载 交互模式 聚类 mybatis ai小智 语音助手 ai小智配网 ai小智教程 esp32语音助手 diy语音助手 deep learning 强化学习 数据库系统 dock 加速 C# MQTTS 双向认证 emqx 政务 分布式系统 监控运维 Prometheus Grafana 本地知识库部署 DeepSeek R1 模型 xshell termius iterm2 gpt-3 文心一言 neo4j 数据库开发 database linux环境变量 keepalived 做raid 装系统 sonoma 自动更新 服务网格 istio 火绒安全 mm-wiki搭建 linux搭建mm-wiki mm-wiki搭建与使用 mm-wiki使用 mm-wiki详解 js 内网服务器 内网代理 内网通信 EtherCAT转Modbus ECT转Modbus协议 EtherCAT转485网关 ECT转Modbus串口网关 EtherCAT转485协议 ECT转Modbus网关 VM搭建win2012 win2012应急响应靶机搭建 攻击者获取服务器权限 上传wakaung病毒 应急响应并溯源 挖矿病毒处置 应急响应综合性靶场 chrome devtools chromedriver 人工智能生成内容 金融 网络用户购物行为分析可视化平台 大数据毕业设计 ArcTS 登录 ArcUI GridItem arkUI 车载系统 拓扑图 hosts 剧本 docker搭建pg docker搭建pgsql pg授权 postgresql使用 postgresql搭建 xml uni-file-picker 拍摄从相册选择 uni.uploadFile H5上传图片 微信小程序上传图片 Ark-TS语言 鸿蒙开发 移动开发 cmos docker命令大全 IO VS Code sequoiaDB AD 域管理 spark HistoryServer Spark YARN jobhistory 网站搭建 serv00 项目部署 grub 版本升级 扩容 捆绑 链接 谷歌浏览器 youtube google gmail wpf 图形渲染 VSCode 黑苹果 AP配网 AK配网 小程序AP配网和AK配网教程 WIFI设备配网小程序UDP开 alias unalias 别名 Ubuntu共享文件夹 共享目录 Linux共享文件夹 磁盘镜像 服务器镜像 服务器实时复制 实时文件备份 raid5数据恢复 磁盘阵列数据恢复 OpenSSH 混合开发 JDK regedit 开机启动 VLAN 企业网络 大模型面经 minecraft GIS 遥感 WebGIS 大大通 第三代半导体 碳化硅 ai工具 java-rocketmq ldap 本地化部署 分布式训练 匿名管道 Kylin-Server 京东云 内网环境 LInux 基础环境 Cookie ubuntu20.04 开机黑屏 目标跟踪 OpenVINO 推理应用 WebRTC 玩机技巧 软件分享 软件图标 win服务器架设 windows server 沙盒 word seleium 私有化 多路转接 SRS 流媒体 直播 USB网络共享 Playwright ABAP CentOS Stream ssh漏洞 ssh9.9p2 CVE-2025-23419 存储维护 NetApp存储 EMC存储 系统开发 binder framework 源码环境 雨云服务器