mirror of
https://github.com/MacRimi/ProxMenux.git
synced 2026-09-14 18:56:52 +00:00
232 lines
18 KiB
JSON
232 lines
18 KiB
JSON
{
|
|
"meta": {
|
|
"title": "Aktualizácie — aktualizácia systému a aplikácií v LXC | ProxMenux",
|
|
"description": "Mechanizmy, ktoré vie ProxMenux použiť na aktualizáciu operačného systému a aplikácií registrovaných v LXC kontajneri."
|
|
},
|
|
"header": {
|
|
"title": "Aktualizácie — aktualizácia systému a aplikácií v LXC",
|
|
"description": "Miesto, kde ProxMenux rozhoduje, ako aktualizovať kontajner: systémové balíky, pomocník Community Scripts alebo vlastný príkaz."
|
|
},
|
|
"intro": {
|
|
"p1": "Záložka <strong>Aktualizácie</strong> zhromažďuje mechanizmy, ktoré vie ProxMenux spustiť na aktualizáciu operačného systému a aplikácií registrovaných vo vnútri LXC kontajnera.",
|
|
"p2": "<link>Záložka App</link> určuje, ktoré aplikácie existujú, a voliteľne porovnáva ich verzie. <strong>Aktualizácie</strong> riešia samotnú akciu: rozhodnú, ktorý mechanizmus je dostupný, zobrazia príslušné tlačidlo a spustia aktualizáciu v kontajneri.",
|
|
"callout": "<strong>Základná myšlienka:</strong> zistenie novej verzie a znalosť spôsobu jej inštalácie sú dve rozdielne veci. Aplikácia môže v záložke App ukazovať <strong>Dostupná aktualizácia</strong>, ale stále nemusí mať funkčné tlačidlo na aktualizáciu, kým nie je nastavená platná metóda."
|
|
},
|
|
"mechanisms": {
|
|
"heading": "Dostupné mechanizmy aktualizácie",
|
|
"intro": "Podľa toho, ako bola aplikácia nainštalovaná a odkiaľ pochádzajú jej aktualizácie, vyberá ProxMenux z troch mechanizmov.",
|
|
"osHeading": "Balíky operačného systému",
|
|
"osP1": "V Debian alebo Ubuntu kontajneroch ProxMenux kontroluje a aktualizuje balíky cez APT. V Alpine používa APK.",
|
|
"osP2": "Registrované aplikácie, ktorých metóda inštalácie je <code>dpkg</code> alebo <code>apk</code>, sú súčasťou tejto kontroly. V sekcii aplikácie nepotrebujú druhý príkaz — aktualizujú sa spolu s akciou <strong>Použiť aktualizáciu OS</strong>.",
|
|
"osP3": "Sekcia zobrazuje počet čakajúcich balíkov, počet bezpečnostných aktualizácií, rodinu OS a čas poslednej kontroly.",
|
|
"helperHeading": "Aktualizátor Proxmox VE Helper-Scripts",
|
|
"helperP1": "Ak bol LXC vytvorený pomocou helpera z projektu <linkHelperHome>Proxmox VE Helper-Scripts</linkHelperHome>, ProxMenux rozpozná jeho aktualizátor. Príslušná aplikácia musí byť zaregistrovaná v záložke App, aby ju Monitor vedel prepojiť so službou zobrazenou používateľovi.",
|
|
"helperP2": "<strong>Samotnú logiku aktualizácie spravuje projekt Proxmox VE Helper-Scripts</strong>, nie ProxMenux. Každý helper má vlastnú funkciu <code>update_script</code>; ProxMenux ju stiahne a spustí vo vnútri kontajnera v tichom režime (<code>PHS_SILENT=1</code>), bez otázok. Na strane ProxMenuxu netreba helper kopírovať ani písať vlastný príkaz.",
|
|
"helperP3": "Úplná dokumentácia k mechanizmu aktualizácie je na stránke projektu — <linkHelperDocs>community-scripts.org / update-apps</linkHelperDocs>. Každý helper má zároveň vlastnú položku na <linkHelperHome>stránke projektu</linkHelperHome> s opisom toho, čo skript robí, aké má predvolené nastavenia a odkiaľ pochádza aktualizačná logika — túto stránku používajte ako referenciu pre to, čo aktualizátor zmení vo vnútri LXC.",
|
|
"helperP4": "Nie každý helper podporuje aktualizáciu na mieste. Ak katalóg označí aplikáciu ako neaktualizovateľnú, záložka tento stav zobrazí a túto metódu neponúkne ako dostupnú.",
|
|
"customHeading": "Vlastný príkaz",
|
|
"customP1": "Registrovaná aplikácia môže mať uložený vlastný aktualizačný príkaz. ProxMenux ho spustí vo vnútri LXC, keď používateľ klikne na <strong>Použiť aktualizáciu</strong> alebo keď ho zahrnie plánovaná úloha.",
|
|
"customP2": "Táto metóda je určená pre aplikácie, ktorých inštalátor neposkytuje rozpoznaného helpera a ktoré sa neaktualizujú cez APT alebo APK."
|
|
},
|
|
"decision": {
|
|
"heading": "Ako ProxMenux vyberá zobrazenú akciu",
|
|
"table": {
|
|
"colSituation": "Situácia",
|
|
"colAction": "Akcia",
|
|
"rows": [
|
|
{ "situation": "Čakajú balíky APT alebo APK", "action": "Použiť aktualizáciu OS" },
|
|
{ "situation": "Aplikácia používa dpkg alebo apk balík", "action": "Použiť aktualizáciu OS — samostatný príkaz aplikácie nie je potrebný" },
|
|
{ "situation": "Existuje kompatibilný helper a aplikácia je registrovaná", "action": "Použiť aktualizáciu cez Community Scripts" },
|
|
{ "situation": "Registrovaná aplikácia má vlastný príkaz", "action": "Použiť aktualizáciu týmto príkazom" },
|
|
{ "situation": "Existuje nová verzia, ale nie je nastavený helper ani príkaz", "action": "Zobrazí Nie je nastavený aktualizátor a ponúkne pridanie príkazu" },
|
|
{ "situation": "Dostupné sú systémové aj aplikačné aktualizácie", "action": "Môže sa zobraziť spoločná akcia Použiť aktualizácie OS + aplikácií" }
|
|
]
|
|
},
|
|
"trailing": "Aplikácia registrovaná iba ako odkaz sa nikdy nezobrazí ako aktualizovateľná — ProxMenux nemá dosť informácií na prepojenie s metódou aktualizácie."
|
|
},
|
|
"figures": {
|
|
"f01": {
|
|
"alt": "Karta systémových balíkov s počtom čakajúcich aktualizácií, počtom bezpečnostných aktualizácií a tlačidlom Použiť aktualizáciu OS",
|
|
"caption": "Čakajúce systémové balíky: celkový počet, počet bezpečnostných aktualizácií a tlačidlo Použiť aktualizáciu OS"
|
|
},
|
|
"f02": {
|
|
"alt": "Rovnaká karta systémových balíkov po aktualizácii — žiadne čakajúce balíky a štítok OS je aktuálny",
|
|
"caption": "Po použití: „Žiadne čakajúce aktualizácie OS“ a štítok OS je aktuálny"
|
|
},
|
|
"f03": {
|
|
"alt": "Karta registrovanej aplikácie so stavom Nie je dostupná metóda aktualizácie a tlačidlom Pridať vlastný aktualizačný príkaz",
|
|
"caption": "„Nie je dostupná metóda aktualizácie“ — ProxMenux aplikáciu sleduje, ale ešte nemá nastavené nič, čo by ju aktualizovalo"
|
|
},
|
|
"f04": {
|
|
"alt": "Editor vlastného aktualizačného príkazu s ukážkovým placeholderom v textovom poli",
|
|
"caption": "Editor vlastného príkazu s ukážkovým placeholderom, tlačidlami Zrušiť a Uložiť"
|
|
},
|
|
"f05": {
|
|
"alt": "Terminálový panel s názvom Použiť aktualizácie — CT 103, ktorý zobrazuje živý apt výstup pri rozbaľovaní balíkov",
|
|
"caption": "Terminálový panel zobrazuje živý výstup aktualizácie, kým apt rozbaľuje balíky vo vnútri CT"
|
|
},
|
|
"f06": {
|
|
"alt": "Karta možností so zapnutým snapshotom pred použitím, záložným úložiskom nastaveným na pbs a zapnutým reštartom po použití",
|
|
"caption": "Karta možností so súčasne zapnutým vzdump snapshotom, záložným úložiskom a reštartom po použití"
|
|
},
|
|
"f07": {
|
|
"alt": "Sekcia plánovaných aktualizácií je zapnutá — frekvencia denne o 3:00, cron výraz 0 3 * * * a cieľ nastavený na OS + aplikácia",
|
|
"caption": "Plánované aktualizácie sú zapnuté — predvoľba frekvencie, zodpovedajúci cron výraz a vybraný rozsah aktualizácie"
|
|
}
|
|
},
|
|
"custom": {
|
|
"heading": "Pridanie vlastného aktualizačného príkazu",
|
|
"p1": "Keď má aplikácia sledovanie verzie, ale nemá metódu aktualizácie, záložka zobrazí <strong>Nie je nastavený aktualizátor</strong>. Kliknutím na <strong>Pridať vlastný aktualizačný príkaz</strong> otvoríte editor.",
|
|
"p2": "Príkaz musí predstavovať reálny a úplný postup, ktorý danú aplikáciu aktualizuje. Nevkladajte sem iba príkaz, ktorý číta jej verziu."
|
|
},
|
|
"figureOut": {
|
|
"heading": "Ako zistiť správny príkaz",
|
|
"intro": "Neexistuje univerzálny aktualizačný príkaz. Pred uložením najprv zistite, ako bol softvér nainštalovaný a aký postup aktualizácie odporúča jeho projekt.",
|
|
"step1Heading": "1. Skontrolujte, či to už nerieši systém",
|
|
"step1P1": "Ak bola aplikácia nainštalovaná z repozitárov Debianu, Ubuntu alebo Alpine, zvyčajne sa aktualizuje spolu so systémovými balíkmi. Vtedy nepridávajte vlastný príkaz — použite <strong>Použiť aktualizáciu OS</strong>.",
|
|
"step1P2": "Pôvod balíka môžete overiť z konzoly LXC nástrojmi danej distribúcie. Napríklad:",
|
|
"step1Cmd1": "dpkg -l | grep -i name",
|
|
"step1P3": "alebo:",
|
|
"step1Cmd2": "apk info | grep -i name",
|
|
"step1P4": "Nahraďte <code>name</code> balíkom, ktorý skúmate. Zhoda ešte automaticky nepotvrdzuje, že ide o hlavný balík — porovnajte názov s dokumentáciou aplikácie.",
|
|
"step2Heading": "2. Pozrite oficiálnu dokumentáciu",
|
|
"step2P1": "V oficiálnych dokumentoch alebo repozitári hľadajte sekcie ako <strong>Upgrade</strong>, <strong>Update</strong>, <strong>Maintenance</strong> alebo <strong>Manual installation</strong>. Postup musí zodpovedať spôsobu, akým je aplikácia nainštalovaná v danom LXC.",
|
|
"step2P2": "Nepoužívajte návody určené pre inú distribúciu, iný typ inštalácie alebo inú verziu.",
|
|
"step3Heading": "3. Skontrolujte existujúcu inštaláciu",
|
|
"step3Lead": "Ak si nepamätáte, ako bola aplikácia nainštalovaná, pozrite:",
|
|
"step3Items": [
|
|
"Históriu alebo poznámky pôvodného inštalátora.",
|
|
"Cestu, kde sú uložené jej súbory.",
|
|
"Definíciu služby, ktorá ju spúšťa.",
|
|
"Údržbové skripty dodané aplikáciou.",
|
|
"Dokumentáciu uloženú v jej inštalačnom priečinku."
|
|
],
|
|
"step3P1": "Pri systemd službe môže toto pomôcť nájsť binárku a pracovný priečinok:",
|
|
"step3Cmd": "systemctl show service-name -p ExecStart -p WorkingDirectory",
|
|
"step3P2": "Pomôže to identifikovať inštaláciu, ale automaticky to neznamená, že riadok <code>ExecStart</code> je aktualizačný príkaz.",
|
|
"step4Heading": "4. Otestujte postup v konzole LXC",
|
|
"step4Lead": "Otvorte konzolu kontajnera a spustite postup ručne ešte pred uložením do ProxMenuxu. Overte, že:",
|
|
"step4Items": [
|
|
"Skončí bez otázok alebo interaktívnych menu.",
|
|
"Vráti správny exit code.",
|
|
"Reštartuje alebo znovu načíta iba služby, ktoré to potrebujú.",
|
|
"Aplikácia je po ňom znovu dostupná.",
|
|
"Nainštalovaná verzia sa zmení podľa očakávania."
|
|
],
|
|
"step4Note": "Ak je to možné, pred testom vytvorte zálohu kontajnera.",
|
|
"step5Heading": "5. Uložte iba príkaz spúšťaný vo vnútri kontajnera",
|
|
"step5P1": "Zadajte iba to, čo sa má vykonať vo vnútri LXC. Nevkladajte:",
|
|
"step5Cmd1": "pct exec <vmid> --",
|
|
"step5P2": "ProxMenux už vstup do kontajnera rieši sám. Príkaz sa spúšťa ako <code>root</code> cez <code>sh -c</code>, takže podporuje reťazenie operácií aj zmenu priečinka.",
|
|
"step5P3": "Ak musí aktualizátor bežať z konkrétnej cesty, uveďte ju priamo:",
|
|
"step5Cmd2": "cd /opt/my-app && ./update.sh",
|
|
"step5P4": "Ak projekt dodáva aktualizátor na inej ceste, použite cestu a argumenty uvedené v oficiálnej dokumentácii."
|
|
},
|
|
"requirements": {
|
|
"heading": "Požiadavky na spoľahlivý príkaz",
|
|
"lead": "Pred spustením z Monitoru overte, že príkaz:",
|
|
"items": [
|
|
"Beží bez zásahu používateľa.",
|
|
"Používa absolútne cesty alebo sa najprv prepne do správneho priečinka.",
|
|
"Zastaví, migruje a reštartuje služby tak, ako vyžadujú oficiálne pokyny.",
|
|
"Skončí chybou, ak aktualizácia zlyhá.",
|
|
"Neobsahuje viditeľné heslá, tokeny ani iné tajné údaje.",
|
|
"Nesťahuje ani nespúšťa skripty z nedôveryhodných zdrojov."
|
|
],
|
|
"trailing": "Obsah sa ukladá do konfigurácie LXC a spúšťa sa s administrátorskými právami. Pristupujte k nemu rovnako opatrne ako ku každému príkazu spustenému ako <code>root</code>."
|
|
},
|
|
"difference": {
|
|
"heading": "Rozdiel medzi detekčným a aktualizačným príkazom",
|
|
"lead": "Obe polia majú rozdielny účel:",
|
|
"table": {
|
|
"colField": "Pole",
|
|
"colLocation": "Umiestnenie",
|
|
"colRole": "Úloha",
|
|
"rows": [
|
|
{
|
|
"field": "Príkaz pre nainštalovanú verziu",
|
|
"location": "App → pokročilé sledovanie",
|
|
"role": "Prečíta a vráti aktuálnu verziu; spúšťa sa ako zoznam argumentov bez shellu."
|
|
},
|
|
{
|
|
"field": "Vlastný aktualizačný príkaz",
|
|
"location": "Aktualizácie",
|
|
"role": "Spúšťa aktualizačný postup; interpretuje sa cez sh -c."
|
|
}
|
|
]
|
|
},
|
|
"trailing": "Nekopírujte slepo hodnotu z jedného poľa do druhého. Príkaz ako <code>myapp --version</code> môže správne zistiť verziu, ale nenainštaluje novú."
|
|
},
|
|
"apply": {
|
|
"heading": "Použitie aktualizácie",
|
|
"lead": "Pred kliknutím na tlačidlo použitia:",
|
|
"steps": [
|
|
"Overte, čo sa bude aktualizovať: systém, jedna aplikácia alebo oboje.",
|
|
"Skontrolujte možnosti zálohy a reštartu.",
|
|
"Kliknite na príslušné tlačidlo.",
|
|
"Sledujte výstup procesu v terminálovom paneli.",
|
|
"Overte výsledok a to, že služba znovu odpovedá."
|
|
],
|
|
"trailing1": "Ak je LXC zastavený, ProxMenux ho spustí, aby mohol proces prebehnúť. Ak aktualizácia skončí správne a je zapnutý reštart, kontajner sa na konci reštartuje.",
|
|
"systemLead": "Pri systémovej aktualizácii:",
|
|
"systemItems": [
|
|
"Debian a Ubuntu spúšťajú upgrade cez APT.",
|
|
"Alpine ho spúšťa cez APK."
|
|
],
|
|
"appLead": "Pri aktualizácii aplikácie:",
|
|
"appItems": [
|
|
"Použije sa kompatibilný helper, ak existuje.",
|
|
"Spustí sa vlastný príkaz uložený pre aplikáciu, ak je nastavený.",
|
|
"Ak je vybraných viac aplikácií, ich metódy sa spustia postupne."
|
|
],
|
|
"trailing2": "Terminálový panel zobrazuje priebeh a skončí úspešným výsledkom alebo chybovým kódom procesu."
|
|
},
|
|
"backup": {
|
|
"heading": "Záloha pred aktualizáciou",
|
|
"p1": "Zapnite <strong>Snapshot kontajnera pred použitím</strong>, aby sa pred zásahom do LXC vytvorila záloha <code>vzdump</code>. Môžete vybrať aj cieľové úložisko.",
|
|
"p2": "Ak je záloha vyžadovaná a zlyhá, ProxMenux nebude v aktualizácii pokračovať. Zmeny sa tak nezačnú bez požadovaného bodu obnovy.",
|
|
"p3": "Táto voľba platí pre ručné spustenia aj plánované úlohy."
|
|
},
|
|
"restart": {
|
|
"heading": "Reštart po aktualizácii",
|
|
"p1": "<strong>Reštartovať kontajner po použití</strong> je preferencia, nie dôkaz, že reštart je povinný. Zapnite ju, keď to vyžaduje postup aplikácie alebo nainštalované balíky.",
|
|
"p2": "Reštart nastane iba po úspešnom behu. Ak aktualizácia zlyhá, kontajner ostane spustený, aby sa dala chyba skontrolovať.",
|
|
"p3": "Možnosti zálohy a reštartu sa ukladajú pre dané LXC a platia aj pre jeho plánované úlohy."
|
|
},
|
|
"scheduled": {
|
|
"heading": "Plánované aktualizácie",
|
|
"p1": "Sekcia <strong>Plánované aktualizácie</strong> automaticky spúšťa rovnaký tok, aký používajú ručné tlačidlá.",
|
|
"createLead": "Plán vytvoríte takto:",
|
|
"createSteps": [
|
|
"Otvorte <strong>Možnosti</strong> a kliknite na <strong>Upraviť</strong>.",
|
|
"Zapnite <strong>Plánované aktualizácie</strong>.",
|
|
"Vyberte predvolenú frekvenciu alebo zadajte cron výraz.",
|
|
"Vyberte, čo sa bude aktualizovať: iba systémové balíky, iba aplikácie alebo systém aj aplikácie.",
|
|
"Skontrolujte možnosti zálohy a reštartu.",
|
|
"Uložte nastavenie."
|
|
],
|
|
"p2": "Karta zobrazuje, či je plán aktívny, čo zahŕňa a ako dopadol posledný beh. Vypnutý plán môžete ponechať na neskoršie zapnutie alebo ho úplne odstrániť.",
|
|
"p3": "Ak ProxMenux na hostiteľovi nájde externý plán vytvorený cez Community Scripts, zobrazí ho, aby používateľ vedel, že už existuje iná automatizácia.",
|
|
"callout": "Pred plánovaním aktualizácií aplikácií ručne otestujte každý helper alebo príkaz. Plánovaná úloha nevie odpovedať na otázky ani opraviť neúplný postup."
|
|
},
|
|
"verify": {
|
|
"heading": "Kontrola výsledku",
|
|
"p1": "Po použití systémových balíkov ProxMenux vynúti čerstvú kontrolu, aby sa počítadlo čakajúcich balíkov aktualizovalo bez čakania na ďalší pravidelný cyklus.",
|
|
"p2": "Pri aplikácii sa vráťte do <link>záložky App</link> a kliknite na <strong>Skontrolovať</strong>, ak sa číslo verzie neobnoví hneď. Znovu sa spustí nastavená metóda nainštalovanej verzie a dotaz na upstream zdroj.",
|
|
"p3": "Navyše overte, že webové odkazy aplikácie správne odpovedajú. Príkaz, ktorý skončí bez chýb, ešte nenahrádza funkčnú kontrolu služby."
|
|
},
|
|
"troubleshoot": {
|
|
"heading": "Časté problémy",
|
|
"noButtonHeading": "Zobrazuje sa Dostupná aktualizácia, ale chýba tlačidlo Použiť aktualizáciu",
|
|
"noButtonBody": "Detekcia verzie funguje, ale nenašla sa metóda na inštaláciu aktualizácie. Skontrolujte, či sa aplikácia aktualizuje cez systémové balíky, kompatibilného helpera alebo vlastný príkaz.",
|
|
"aptHeading": "Aplikácia sa aktualizuje cez APT alebo APK",
|
|
"aptBody": "Použite <strong>Použiť aktualizáciu OS</strong>. Nepridávajte druhý príkaz pre rovnakú operáciu — aplikácia už je súčasťou systémovej aktualizácie.",
|
|
"noUpdaterHeading": "Zobrazuje sa Nie je nastavený aktualizátor",
|
|
"noUpdaterBody": "ProxMenux aplikáciu sleduje, ale nevie, ako ju aktualizovať. Skontrolujte jej oficiálnu dokumentáciu, otestujte postup v konzole a ak je vhodný, uložte ho cez <strong>Pridať vlastný aktualizačný príkaz</strong>.",
|
|
"helperDetectedHeading": "Helper je nájdený, ale nedá sa použiť",
|
|
"helperDetectedBody": "Helper môže byť označený ako neaktualizovateľný alebo nespadá medzi rozpoznané metódy. Riaďte sa oficiálnymi pokynmi aplikácie a nepredpokladajte, že každý LXC vytvorený cez Community Scripts podporuje automatické aktualizácie.",
|
|
"customFailsHeading": "Vlastný príkaz zlyhá",
|
|
"customFailsBody": "Spustite ho znovu v konzole LXC. Skontrolujte pracovnú cestu, oprávnenia, závislosti, neinteraktívne argumenty a exit code. Nemeňte príkaz za inú verziu, kým neoveríte odporúčaný postup podľa projektu."
|
|
}
|
|
}
|