如何为交互式CLI的CUDA Toolkit安装自动提供方向键等输入
自动化CUDA Toolkit交互式CLI安装的解决方案
方法一:使用CUDA官方无人值守安装参数(推荐)
CUDA安装包本身支持直接通过命令行参数指定安装选项,完全不需要模拟交互式按键,这是最稳定可靠的方式。
你需要取消Driver、CUDA Demo Suite和CUDA Documentation,只保留CUDA Toolkit核心组件,可以用以下命令:
sh cuda_12.5.0_555.42.02_linux.run --silent --override --toolkit --no-driver --no-demo-suite --no-documentation
参数说明:
--silent:启用静默模式,跳过所有交互式提示--override:覆盖可能的系统兼容性检查(按需使用)--toolkit:指定安装CUDA Toolkit核心组件--no-driver:不安装NVIDIA驱动--no-demo-suite:不安装CUDA Demo Suite--no-documentation:不安装CUDA Documentation
若需自定义更多组件,可运行sh cuda_12.5.0_555.42.02_linux.run --help查看完整参数列表。
方法二:用expect工具模拟交互式输入
如果必须模拟交互式界面的按键操作,可以使用expect工具(需先通过apt install expect或yum install expect完成安装)。
创建一个名为cuda_install.exp的脚本:
#!/usr/bin/expect set timeout 60 spawn sh cuda_12.5.0_555.42.02_linux.run # 发送accept并回车 send "accept\r" # 取消Driver选项 send " \r" # 按3次向下方向键 send "\033[B\033[B\033[B" # 取消CUDA Demo Suite选项 send " \r" # 按1次向下方向键 send "\033[B" # 取消CUDA Documentation选项 send " \r" # 按4次向下方向键 send "\033[B\033[B\033[B\033[B" # 确认安装 send " \r" expect eof
赋予脚本执行权限并运行:
chmod +x cuda_install.exp ./cuda_install.exp
注意:方向键的转义字符\033[B对应向下箭头,不同终端环境可能略有差异,若出现问题可调整转义序列。
内容的提问来源于stack exchange,提问作者Eypros
相关产品推荐
相关产品推荐

