Ubuntu 20.04.3 LTS
拥有 1 个 Nvidia GPU
已安装 Nvidia 驱动程序和 CUDA 11.2
用户 A 具有“sudo”能力,即在“sudo”组中
UserB 是普通用户
用户 C 属于“cuda_allow”组
在终端,我可以为用户A、用户B 和用户C 正确运行“nvidia-smi”。
/dev/nvidia0 的文件权限为 666
在 /dev/nvidia0,我将权限更改为 660 => sudo chmod 660 /dev/nvidia0
在 /dev/nvidia0,我将“root”组替换为“cuda_allow”组 => sudo chown :cuda_allow /dev/nvidia0
在 UserA 的终端上运行“nvidia-smi”,出现错误。错误 => 未找到任何设备
在 UserB 的终端上,运行“nvidia-smi”,出现同样的错误 => 未找到设备。
在 UserC 的终端上,运行“nvidia-smi”并且它正常运行,即显示了一个信息表。
将 UserA 添加到组“cuda_allow”=> sudo usermod -aG cuda_allow usera
检查确保 kst 在组“cuda_allow”中,即成员 cuda_allow => 确认用户 A 在组“cuda_allow”中
重新运行“nvidia-smi”并出现错误 => 未找到任何设备
问题 将具有“sudo”权限的“UserA”添加到“cuda_allow”组后,其行为与“UserC”不同。“UserC”位于“cuda_allow”组中,但不具有“sudo”权限。问题是,为什么将“UserA”添加到“cuda_allow”组后,我无法运行“nvidia-smi”?
我发现在“UserA”的终端上,我成功运行了“sudo nvidia-smi”。是否可以在“nvidia-smi”前面不加“sudo”的情况下运行它?