- rename host/group/folder everywhere to match the server's actual hostname and physical label - share-analysis.ps1: sanitize the output filename prefix — '-Paths "D:"' produced 'D:-file-types.csv' and Export-Csv failed with 'path format not supported', so no CSVs were written - share-analysis.ps1: new -FolderDepth so folders can be aggregated at D:\Abteilungen\<Share> level, which matches the share layout - list-shares.ps1: -WithSize walks local paths instead of UNC when run on the server itself (UNC was orders of magnitude slower and looked stuck) and prints progress every 50k files Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
72 lines
2.1 KiB
YAML
72 lines
2.1 KiB
YAML
---
|
|
# Automates server/phy-srv-gpu01/manuals/20260714-nvidia-driver-install.md
|
|
# Requires Docker (geerlingguy.docker) for the container toolkit part.
|
|
|
|
- name: Check Secure Boot state
|
|
command: mokutil --sb-state
|
|
register: nvidia_sb_state
|
|
changed_when: false
|
|
failed_when: false
|
|
|
|
- name: Fail if Secure Boot is enabled
|
|
fail:
|
|
msg: "Secure Boot is enabled — disable it in the BIOS before installing the NVIDIA driver."
|
|
when: "'SecureBoot enabled' in nvidia_sb_state.stdout"
|
|
|
|
- name: Install NVIDIA driver
|
|
apt:
|
|
name: "{{ nvidia_driver_package }}"
|
|
state: present
|
|
install_recommends: false
|
|
register: nvidia_driver_install
|
|
|
|
- name: Reboot after fresh driver install
|
|
reboot:
|
|
reboot_timeout: 600
|
|
when: nvidia_driver_install.changed
|
|
|
|
- name: Install NVIDIA CUDA repository keyring
|
|
apt:
|
|
deb: "{{ nvidia_cuda_keyring_url }}"
|
|
|
|
- name: Install CUDA toolkit (optional, see defaults)
|
|
apt:
|
|
name: "{{ nvidia_cuda_toolkit_package }}"
|
|
state: present
|
|
update_cache: true
|
|
when: nvidia_install_cuda_toolkit
|
|
|
|
- name: Add NVIDIA container toolkit repository key
|
|
shell: >
|
|
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey
|
|
| gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
|
|
args:
|
|
creates: /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
|
|
|
|
- name: Add NVIDIA container toolkit repository
|
|
copy:
|
|
dest: /etc/apt/sources.list.d/nvidia-container-toolkit.list
|
|
content: "deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://nvidia.github.io/libnvidia-container/stable/deb/$(ARCH) /\n"
|
|
mode: "0644"
|
|
|
|
- name: Install NVIDIA container toolkit
|
|
apt:
|
|
name: nvidia-container-toolkit
|
|
state: present
|
|
update_cache: true
|
|
|
|
- name: Check whether Docker already uses the NVIDIA runtime
|
|
command: grep -q nvidia /etc/docker/daemon.json
|
|
register: nvidia_docker_runtime
|
|
changed_when: false
|
|
failed_when: false
|
|
|
|
- name: Configure Docker to use the NVIDIA runtime
|
|
command: nvidia-ctk runtime configure --runtime=docker
|
|
when: nvidia_docker_runtime.rc != 0
|
|
notify: restart docker
|
|
|
|
- name: Verify the driver works
|
|
command: nvidia-smi
|
|
changed_when: false
|