我是SaltStack的新手。
我只需要在运行带有SaltStack的CentOS 7的minion服务器上安装NVIDIA。
在gpu / init.sls文件中:
install_nvidia:
cmd.script:
- source: salt://gpu/files/NVIDIA-Linux-x86_64-375.20.run
- user: root
- group: root
- shell: /bin/bash
- args: -a
我跑步:
sudo salt minion_name state.apply gpu
我得到了错误:
...
stderr:
Error opening terminal: unknown.
...
...
Summary for minion_name
------------
Succeeded: 0 (changed=1)
Failed: 1
如何获取有关失败原因的更多详细信息? 我相信它会等待用户输入,但我不知道什么
我又如何以非交互方式在CentOS 7上安装NVIDIA?
谢谢。
答案 0 :(得分:2)
您可以使用salt-call -l debug在本地运行,以获取有关Salt状态为何失败的更多详细信息。
salt-call -l debug state.apply gpu
在您的情况下,您必须知道,在Linux上安装NVIDIA驱动程序将要求您运行安装程序而没有图形会话。最简单的方法是检查您当前是否处于图形会话中(使用systemd),然后删除do multi-user.target,如果这样:
enter-multiuser:
cmd.run:
- name: systemctl isolate multi-user.target
- onlyif: systemctl status graphical.target
然后,您可以使用类似的方法静默安装NVIDIA驱动程序
gpu-prerequisites:
pkg.installed:
- pkgs:
- kernel-devel
download-installer:
file.managed:
- name: /tmp/NVIDIA-Linux-x86_64-375.20.run
- source: salt://gpu/files/NVIDIA-Linux-x86_64-375.20.run
install-driver:
cmd.run:
- name: /tmp/NVIDIA-Linux-x86_64-375.20.run -a -s -Z -X
- require:
- file: download-installer
- pkg: gpu-prequisites
start-graphical:
cmd.run:
- name: systemctl start graphical.target
- unless: systemctl status graphical.target
- watch:
- cmd: install-driver