有没有办法 - 从终端 - 查询最新的工具包/ SDK版本???
e.g。 NVIDIA是否有某种服务器可以登录并发出离散命令来获取最新的SDK和工具包?
............................................... ....................................
的背景
我写了一个小脚本来执行核心CUDA组件的无人参与安装 - 开发驱动程序,工具包和SDK。
请注意,驱动程序已经自动更新,因为我向它们传递了一个标志,告诉他们检查最新版本,所以我只需要下载一次,所有未来的CUDA安装更新现在都可以使用
有一些初步错误,但在一些帮助下解决了这个问题。 [1] [2]
如果正在运行,init
将取消X11
服务器,以完成视频开发驱动程序的安装。 yum
如果不存在,则安装expect
。
#!/bin/bash
CR="\r"
YES="\"Yes\r\""
INSTALL_PATH_REQUEST="\"Enter install path\""
CUDA_PATH_REQUEST="\"Enter CUDA install path\""
UNINSTALL_REQUEST="\"Would you like to uninstall?\""
TOOLKIT=`ls -t cudatoolkit* | head -n 1`
TOOLKIT_EXPECT="sh $TOOLKIT"
SDK=`ls -t gpucomputingsdk* | head -n 1`
SDK_INSTALL_PATH="\"/usr/local/CUDA_SDK\r\""
SDK_EXPECT="sh $SDK"
DUMMY="dummy"
/bin/su root -c "yum -q -y install expect expectk;
/sbin/init 3; sh `ls -t NVIDIA*|head -n 1` -s --update -a -X;
/usr/bin/expect <<EOF;
spawn $TOOLKIT_EXPECT
expect -timeout 300 $INSTALL_PATH_REQUEST
send $CR
expect -timeout 300 {
{Would you like to uninstall?} {
send $YES
exp_continue
}
expect -timeout 500 $DUMMY
eof
}
EOF
/usr/bin/expect <<EOF;
spawn $SDK_EXPECT
expect -timeout 300 $INSTALL_PATH_REQUEST
send $SDK_INSTALL_PATH
expect -timeout 300 $CUDA_PATH_REQUEST
send $CR
expect -timeout 500 $DUMMY
EOF
/sbin/init 5"
如果有人能够弄清楚如何远程查询SDK和工具包以进行更新,那么这将是(几乎)完美的无人值守安装程序。如果您认为我遗漏了任何东西,那么任何其他建议也会受到赞赏。
P.S。您需要在同一目录中使用dev驱动程序,工具包和SDK文件才能使其正常工作。当它要求您输入密码时,那就是要求您提供root密码。我选择在/usr/local/CUDA_SDK/
中安装SDK以允许所有用户访问。如果您希望将其安装在其他位置,请在脚本中进行更改。
答案 0 :(得分:1)
我不相信NVIDIA提供了查询最新发布的驱动程序,工具包,SDK等版本的方法。在Windows驱动程序上现在有一个自动更新功能,而linux驱动程序也可能有一个(不是确定),但我认为我们没有办法查询当前的发布版本。
对于不同的平台和技术,总有各种驱动程序版本(例如Tesla的预发布开发人员驱动程序,Windows的WHQL驱动程序等)。
我认为大多数集群运营商只想升级到任何软件的稳定版本,而且每年最多只发生几次,所以我认为进行人工检查(和下载)并不是什么大问题最新版本,然后从下载的文件中自动安装。