mirror of
https://github.com/MacRimi/ProxMenux.git
synced 2026-11-02 10:52:22 +00:00
166 lines
15 KiB
JSON
166 lines
15 KiB
JSON
{
|
|
"meta": {
|
|
"title": "Inštalácia ovládačov NVIDIA v Proxmox VE 9 — ručný postup | Príručky ProxMenux",
|
|
"description": "Manuálna inštalácia a konfigurácia ovládačov NVIDIA na hostiteľovi Proxmox VE 9 a sprístupnenie GPU jednému alebo viacerým kontajnerom LXC. Zahŕňa ovládače, službu perzistencie, voliteľnú úpravu NVENC a konfiguráciu jednotlivých kontajnerov.",
|
|
"ogTitle": "Inštalácia ovládačov NVIDIA na Proxmox VE 9 (manuálny postup)",
|
|
"ogDescription": "Manuálna inštalácia NVIDIA na PVE 9: ovládač hostiteľa, služba perzistencie, voliteľná úprava NVENC a prístup ku GPU v jednotlivých kontajneroch LXC."
|
|
},
|
|
"header": {
|
|
"title": "Inštalácia NVIDIA ovládačov grafickej karty na Proxmox VE 9 (manuálny postup)",
|
|
"description": "Manuálna inštalácia a konfigurácia ovládačov NVIDIA na hostiteľovi Proxmox VE 9 a sprístupnenie GPU jednému alebo viacerým kontajnerom LXC. Zahŕňa ovládače, službu perzistencie, voliteľnú úpravu NVENC a konfiguráciu jednotlivých kontajnerov.",
|
|
"section": "Návody"
|
|
},
|
|
"intro": {
|
|
"calloutTitle": "Poznámka",
|
|
"calloutBody": "Tento manuálny postup slúži ako referencia. Väčšine používateľov odporúčame sprievodcu ProxMenuxu: <strong>Inštalovať ovládače NVIDIA na hostiteľovi</strong> v ponuke <em>GPU a Coral-TPU</em> a potom <strong>Pridať GPU do LXC</strong> alebo <strong>Pridať GPU do VM</strong> pre nastavenie hosťa. Sprievodca vykonáva rovnaké kroky s ďalšími kontrolami hlavičiek jadra, IOMMU a konfliktov VFIO. Táto stránka pomôže pochopiť jednotlivé príkazy alebo prispôsobiť konfiguráciu.",
|
|
"targetNote": "Návod je určený pre <strong>Proxmox VE 9</strong> (Debian Trixie). PVE 7 (Bullseye) a PVE 8 (Bookworm) už nie sú zahrnuté.",
|
|
"stepsTitle": "Čo budete robiť",
|
|
"steps": [
|
|
"Pripraviť hostiteľa Proxmox VE 9: zablokovať nouveau a overiť repozitáre aj požiadavky.",
|
|
"Nainštalujte ovládač NVIDIA na hostiteľa.",
|
|
"Nainštalovať službu perzistencie NVIDIA.",
|
|
"Voliteľne použiť úpravu keylase na odstránenie limitu súbežných relácií NVENC na spotrebiteľských GPU.",
|
|
"Sprístupniť GPU jednému alebo viacerým kontajnerom LXC a v každom nainštalovať zodpovedajúcu verziu ovládača."
|
|
]
|
|
},
|
|
"prepareHost": {
|
|
"heading": "1. Pripravte hostiteľa (PVE 9)",
|
|
"blacklistHeading": "1.1 Zablokovať nouveau",
|
|
"blacklistBody": "Skontrolujte, či ovládač Open-source <code>nouveau</code> je už na čiernom zozname:",
|
|
"blacklistCheckCode": "cat /etc/modprobe.d/blacklist.conf",
|
|
"blacklistAdd": "Ak sa neobjaví <code>blacklist nouveau</code>, pridajte ho a reštartujte:",
|
|
"blacklistAddCode": "echo \"blacklist nouveau\" >> /etc/modprobe.d/blacklist.conf\nupdate-initramfs -u -k all\nreboot",
|
|
"blacklistImageAlt": "Kontrola čiernej listiny",
|
|
"reposHeading": "1.2 Overenie repozitárov (PVE 9 / Trixie)",
|
|
"reposBody": "Nástroje po inštalácii už mohli nastaviť repozitáre. Najprv skontrolujte existujúce zdroje a vynechajte hotové zmeny; nevytvárajte duplicitné záznamy.",
|
|
"reposOtherwise": "Inak pri základnej inštalácii PVE 9 bez predplatného Enterprise:",
|
|
"reposEditCode": "nano /etc/apt/sources.list.d/proxmox.sources",
|
|
"reposPveBody": "Overte, že obsahuje zdroj no-subscription pre Trixie:",
|
|
"reposPveCode": "Types: deb\nURIs: http://download.proxmox.com/debian/pve\nSuites: trixie\nComponents: pve-no-subscription\nSigned-By: /usr/share/keyrings/proxmox-archive-keyring.gpg",
|
|
"reposDebianBody": "A zdroje Debianu na <code>/etc/apt/sources.list.d/debian.sources</code>:",
|
|
"reposDebianCode": "Types: deb\nURIs: http://deb.debian.org/debian/\nSuites: trixie trixie-updates\nComponents: main contrib non-free non-free-firmware\nSigned-By: /usr/share/keyrings/debian-archive-keyring.gpg\n\nTypes: deb\nURIs: http://security.debian.org/debian-security/\nSuites: trixie-security\nComponents: main contrib non-free non-free-firmware\nSigned-By: /usr/share/keyrings/debian-archive-keyring.gpg",
|
|
"updateHeading": "1.3 Aktualizovať systém a inštalovať predpoklady",
|
|
"updateCode": "apt update && apt dist-upgrade -y",
|
|
"buildToolsBody": "Nainštalujte nástroje a hlavičky jadra potrebné na zostavenie modulu jadra NVIDIA:",
|
|
"buildToolsCode": "apt-get install -y git\napt-get install -qqy pve-headers-$(uname -r) gcc make"
|
|
},
|
|
"installDriver": {
|
|
"heading": "2. Nainštalujte ovládač NVIDIA na hostiteľa",
|
|
"pickHeading": "2.1 Vyberte si verziu ovládača",
|
|
"pickBody": "Vyberte vetvu ovládača podporujúcu GPU a bežiace jadro. Najnovšia vetva nemusí podporovať staršie GPU; overte zoznam podporovaných produktov pre vybrané vydanie NVIDIA:",
|
|
"pickUrlCode": "https://download.nvidia.com/XFree86/Linux-x86_64/latest.txt",
|
|
"nvencCallout": "Ak chcete použiť úpravu NVENC v kroku 4, najprv overte podporu zvolenej verzie ovládača: <patchLink>github.com/keylase/nvidia-patch</patchLink>",
|
|
"nvencCalloutTitle": "Upozornenie",
|
|
"pickReplace": "Nahraďte <code>latest.txt</code> v URL číslom verzie a vyhľadajte inštalátor s príponou <code>.run</code>. Úplný zoznam ovládačov:",
|
|
"pickListCode": "https://download.nvidia.com/XFree86/Linux-x86_64/",
|
|
"pickImageAlt": "Sťahovanie ovládača NVIDIA",
|
|
"pickVersionNote": "V priebehu zvyšku tejto príručky, nahradiť <code>'<'VERSION'>'</code> s aktuálnou verziou (napríklad <code>580.95.05</code>).",
|
|
"downloadHeading": "2.2 Stiahnite si a spustite inštalátor",
|
|
"downloadCode": "mkdir -p /opt/nvidia\ncd /opt/nvidia\nwget https://download.nvidia.com/XFree86/Linux-x86_64/VERSION/NVIDIA-Linux-x86_64-VERSION.run\nchmod +x NVIDIA-Linux-x86_64-VERSION.run",
|
|
"firstPassBody": "Spustite inštalátor. Nasledujúca voľba môže podľa potreby vypnúť <code>nouveau</code>; pred dokončením môže byť nutný reštart:",
|
|
"firstPassCode": "./NVIDIA-Linux-x86_64-VERSION.run --no-questions --ui=none --disable-nouveau\nreboot",
|
|
"secondPassBody": "Po návrate hostiteľa znovu spustite inštalátor a nainštalujte modul jadra:",
|
|
"secondPassCode": "/opt/nvidia/NVIDIA-Linux-x86_64-VERSION.run --no-questions --ui=none",
|
|
"modulesHeading": "2.3 Načítanie modulov NVIDIA pri štarte",
|
|
"modulesBody": "Upravte konfiguráciu načítavania modulov:",
|
|
"modulesEditCode": "nano /etc/modules-load.d/modules.conf",
|
|
"modulesAddBody": "Pridajte moduly NVIDIA pre hostiteľa a LXC. Moduly VFIO slúžia na priame priradenie do VM a v tomto postupe nie sú potrebné:",
|
|
"modulesAddCode": "nvidia\nnvidia_uvm",
|
|
"modulesSaveBody": "Uložiť (<code>Ctrl+X</code>) a prestavať initramfs:",
|
|
"modulesSaveCode": "update-initramfs -u -k all",
|
|
"udevHeading": "2.4 Vytvoriť pravidlá udev",
|
|
"udevBody": "Aby sa pri načítaní modulov vytvorili uzly zariadení <code>/dev/nvidia*</code>:",
|
|
"udevEditCode": "nano /etc/udev/rules.d/70-nvidia.rules",
|
|
"udevRulesCode": "# /etc/udev/rules.d/70-nvidia.rules\nKERNEL==\"nvidia\", RUN+=\"/bin/bash -c '/usr/bin/nvidia-smi -L'\"\nKERNEL==\"nvidia_uvm\", RUN+=\"/bin/bash -c '/usr/bin/nvidia-modprobe -c0 -u'\"",
|
|
"udevSaveBody": "Uložiť (<code>Ctrl+X</code>)."
|
|
},
|
|
"persistence": {
|
|
"heading": "3. Služba perzistencie NVIDIA",
|
|
"body": "Služba perzistencie udržiava GPU inicializovaný, keď ho nepoužíva iná aplikácia. Znižuje latenciu opakovanej inicializácie a zachováva inicializačný stav medzi klientmi:",
|
|
"installCode": "cd /opt/nvidia\ngit clone https://github.com/NVIDIA/nvidia-persistenced.git\ncd nvidia-persistenced/init\n./install.sh\nreboot",
|
|
"verifyBody": "Po reštarte overte, že ovládač je načítaný a služba beží:",
|
|
"verifySmiCode": "nvidia-smi",
|
|
"smiImageAlt": "NVIDIA SMI výstup",
|
|
"verifyServiceCode": "systemctl status nvidia-persistenced",
|
|
"serviceImageAlt": "Stav služby perzistencie NVIDIA"
|
|
},
|
|
"nvenc": {
|
|
"heading": "4. Voliteľné odstránenie limitu súbežných relácií NVENC",
|
|
"body": "Limit relácií NVENC závisí od modelu GPU a verzie ovládača. Overte maticu NVIDIA, nepredpokladajte pevnú hodnotu podľa generácie. Úprava keylase odstraňuje softvérový limit pri podporovaných ovládačoch a môže pomôcť pri transkódovaní Plex či Jellyfin.",
|
|
"code": "cd /opt/nvidia\ngit clone https://github.com/keylase/nvidia-patch.git\ncd nvidia-patch\n./patch.sh",
|
|
"imageAlt": "Použitie úpravy NVIDIA",
|
|
"after": "Po každej aktualizácii ovládača použite úpravu znova. Repozitár keylase obsahuje aj <code>patch-fbc.sh</code> pre FBC, zachytávanie obrazovej pamäte."
|
|
},
|
|
"lxcSetup": {
|
|
"heading": "5. Nastavenie prístupu ku GPU v kontajneri LXC",
|
|
"identifyHeading": "5.1 Identifikovať čísla zariadenia",
|
|
"identifyBody": "Na hostiteľovi:",
|
|
"identifyCode": "ls -l /dev/nv*",
|
|
"identifyImageAlt": "Zoznam zariadení NVIDIA",
|
|
"identifyNote": "Poznačte si hlavné čísla zariadení (major); môžu sa medzi systémami líšiť. Typické hodnoty:",
|
|
"tableHeaders": {
|
|
"device": "Zariadenie",
|
|
"major": "Typické hlavné číslo"
|
|
},
|
|
"tableRows": [
|
|
{
|
|
"device": "<code>/dev/nvidia0</code>, <code>/dev/nvidiactl</code>",
|
|
"major": "195"
|
|
},
|
|
{
|
|
"device": "<code>/dev/nvidia-uvm</code>, <code>/dev/nvidia-uvm-tools</code>",
|
|
"major": "509 (premenlivé)"
|
|
},
|
|
{
|
|
"device": "<code>/dev/dri/*</code>",
|
|
"major": "226"
|
|
},
|
|
{
|
|
"device": "<code>/dev/nvidia-modeset</code>",
|
|
"major": "195 (zdieľané s nvidia)"
|
|
}
|
|
],
|
|
"editHeading": "5.2 Úprava konfigurácie LXC",
|
|
"editBody": "Ak kontajner beží, zastavte ho. Otvorte konfiguráciu a nahraďte <code>'<'CTID'>'</code> jeho ID:",
|
|
"editCode": "nano /etc/pve/lxc/CTID.conf",
|
|
"editConfigBody": "Zakomentujte iba skutočne konfliktné riadky <code>lxc.cgroup2.devices.allow</code> alebo <code>/dev/dri</code>. Pridajte konfiguráciu NVIDIA a upravte hlavné čísla podľa zariadení NVIDIA, ktoré ukazuje <code>ls -l /dev/nv*</code> na <strong>vašom</strong> hostiteľovi:",
|
|
"editConfigCode": "lxc.cgroup2.devices.allow: c 195:* rwm\nlxc.cgroup2.devices.allow: c 509:* rwm\nlxc.mount.entry: /dev/nvidia0 dev/nvidia0 none bind,optional,create=file\nlxc.mount.entry: /dev/nvidiactl dev/nvidiactl none bind,optional,create=file\nlxc.mount.entry: /dev/nvidia-uvm dev/nvidia-uvm none bind,optional,create=file\nlxc.mount.entry: /dev/nvidia-modeset dev/nvidia-modeset none bind,optional,create=file\nlxc.mount.entry: /dev/nvidia-uvm-tools dev/nvidia-uvm-tools none bind,optional,create=file",
|
|
"editConfigImageAlt": "Konfigurácia LXC",
|
|
"editSave": "Uložiť (<code>Ctrl+X</code>) a spustiť kontajner.",
|
|
"installCtHeading": "5.3 Nainštalujte ovládač vo vnútri kontajnera",
|
|
"installCtCalloutTitle": "Dôležité",
|
|
"installCtCalloutBody": "Táto časť sa vykonáva <strong>v kontajneri</strong>, nie na hostiteľovi.",
|
|
"installCtBody": "Modul jadra je už načítaný na hostiteľovi. Kontajner potrebuje iba knižnice používateľského priestoru s rovnakou verziou ovládača:",
|
|
"installCtCode": "mkdir -p /opt/nvidia\ncd /opt/nvidia\nwget https://download.nvidia.com/XFree86/Linux-x86_64/VERSION/NVIDIA-Linux-x86_64-VERSION.run\nchmod +x NVIDIA-Linux-x86_64-VERSION.run\n./NVIDIA-Linux-x86_64-VERSION.run --no-kernel-module",
|
|
"installCtAfter": "Skontrolujte otázky a inštalujte iba knižnice používateľského priestoru. V LXC nekompilujte ani neinštalujte modul jadra.",
|
|
"installCtImageAlt": "Inštalácia ovládača NVIDIA",
|
|
"verifyCtHeading": "5.4 Overenie vo vnútri kontajnera",
|
|
"verifyCtSmiCode": "nvidia-smi",
|
|
"verifyCtSmiImageAlt": "NVIDIA SMI v LXC",
|
|
"verifyCtLsCode": "ls -l /dev/nv*",
|
|
"verifyCtLsImageAlt": "Zariadenia NVIDIA v LXC",
|
|
"verifyCtAfter": "GPU by sa mal zobraziť v zozname a uzly zariadení v súborovom systéme kontajnera.",
|
|
"workloadHeading": "5.5 Overenie využitia GPU pri skutočnej záťaži",
|
|
"workloadBody": "Zapnite hardvérovú akceleráciu NVIDIA v Plexe alebo Jellyfine, spustite transkódovanie a overte skutočné využitie GPU v paneli či protokoloch. Samotná inštalácia ovládača akceleráciu v aplikácii nezapne.",
|
|
"workloadImage1Alt": "Plex používajúci NVIDIA GPU",
|
|
"workloadImage2Alt": "Plex využívajúci GPU NVIDIA — aktívna relácia",
|
|
"repeatNote": "Zopakujte <strong>časť 5</strong> pre každý ďalší kontajner vyžadujúci GPU. Pri aktualizácii ovládača hostiteľa udržujte zodpovedajúcu verziu knižníc používateľského priestoru vo všetkých kontajneroch."
|
|
},
|
|
"docker": {
|
|
"heading": "6 (nepovinné) NVIDIA Docker vnútri LXC",
|
|
"body": "Ak Docker už beží v LXC, nainštalujte v ňom <code>nvidia-container-toolkit</code> na sprístupnenie GPU kontajnerom Docker. Prístup ku GPU zo samotného LXC musí už fungovať. Nasledujúce príkazy sú pre Docker spustený ako root:",
|
|
"code": "apt-get update\napt-get install -y ca-certificates curl gnupg\ncurl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | gpg --dearmor --yes -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg\ncurl -fsSL https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' > /etc/apt/sources.list.d/nvidia-container-toolkit.list\napt-get update\napt-get install -y nvidia-container-toolkit\nnvidia-ctk runtime configure --runtime=docker\nsystemctl restart docker",
|
|
"after": "Príkazy nastavia repozitár NVIDIA, nainštalujú toolkit, nastavia runtime Docker a reštartujú Docker. Oprávnenia zariadení a obmedzenia cgroup v LXC naďalej platia; overte GPU pomocou testovacej záťaže."
|
|
},
|
|
"troubleshoot": {
|
|
"heading": "Riešenie problémov",
|
|
"items": [
|
|
"<strong><code>nvidia-smi</code> funguje na hostiteľovi, ale v kontajneri hlási „No devices found“:</strong> overte pripojenia zariadení, oprávnenia a verzie knižníc. Ak sa líšia, nainštalujte v kontajneri rovnakú <code>'<'VERSION'>'</code> ako na hostiteľovi s <code>--no-kernel-module</code>.",
|
|
"<strong>Kompilácia ovládača zlyhá:</strong> pozrite protokol zostavenia. „No precompiled kernel interface was found“ môže len oznamovať potrebu lokálnej kompilácie. Nainštalujte hlavičky pre <code>uname -r</code> cez <code>apt-get install pve-headers-$(uname -r)</code> alebo zodpovedajúci balík proxmox-headers.",
|
|
"<strong>Relácie NVENC zostávajú obmedzené:</strong> overte podporu aktívneho ovládača úpravou. Aktualizácia ju môže prepísať. Pri podporovanej verzii znova spustite <code>./patch.sh</code> z <code>/opt/nvidia/nvidia-patch</code> a skontrolujte výstup.",
|
|
"<strong>GPU po nečinnosti prestane reagovať:</strong> overte <code>systemctl status nvidia-persistenced</code> a podľa potreby zapnite službu. Skontrolujte aj protokoly jadra a ovládača; zastavená služba nie je jediná možná príčina.",
|
|
"<strong>Kontajner sa spustí, ale <code>ls /dev/nv*</code> neukazuje zariadenia NVIDIA:</strong> overte bind mounty a cesty na hostiteľovi. Cez <code>ls -l /dev/nv*</code> overte hlavné čísla NVIDIA, potom pravidlá <code>lxc.cgroup2.devices.allow</code> aj oprávnenia."
|
|
]
|
|
}
|
|
}
|