{ "meta": { "title": "Schemalagda jobb — timers, kopplingsläge, bevarande | ProxMenux", "description": "Schemalagda ProxMenux-jobb för säkerhetskopiering av värden. Två sätt att skapa jobb (egen systemd-timer eller koppling till ett befintligt PVE vzdump-jobb), bevaranderegler per jobb via proxmox-backup-client, Borg eller lokal rensning, filer under /var/lib/proxmenux/backup-jobs och körningsskriptet som skapar samma arkiv som det interaktiva flödet.", "ogTitle": "ProxMenux Backup - schemalagda jobb", "ogDescription": "Obevakade schemalagda värdsäkerhetskopior med kopplingsläge, bevaranderegler och samma tre destinationer som det interaktiva flödet.", "twitterTitle": "Planerade jobb | ProxMenux", "twitterDescription": "Obevakade schemalagda värdsäkerhetskopieringsjobb med kopplingsläge och bevaranderegler." }, "header": { "title": "Planerade jobb", "description": "Obevakade jobb för säkerhetskopiering av värden. Två modeller: ett nytt oberoende jobb med eget schema eller ett jobb kopplat till ett befintligt PVE vzdump-jobb som ärver dess schema och bevaranderegler. Båda skapar samma arkiv som det interaktiva flödet.", "section": "Säkerhetskopiering och återställning" }, "intro": { "title": "De två modellerna för schemalagda jobb", "body": "Ett schemalagt jobb kan skapas efter en av två modeller:", "modelsList": [ "Nytt oberoende jobb - ProxMenux definierar själva arbetsschemat med sin egen systemd timer, oberoende av någon annan uppgift på värden. Kompatibel med alla tre destinationer: Lokal, PBS och Borg.", "Koppla till ett befintligt PVE vzdump-jobb — jobbet har inget eget schema; det körs automatiskt när det överordnade vzdump-jobbet säkerhetskopierar värdens VM:ar och LXC:er. Det ärver schemat och bevarandereglerna. Stöder lokalt mål och PBS (Borg stöds inte eftersom PVE saknar en inbyggd schemaläggare för Borg)." ] }, "attachBadge": { "title": "Kopplingsläge — rekommenderas när ett PVE vzdump-jobb redan finns", "body": "Om ett PVE vzdump-jobb redan är konfigurerat för nodens VM:ar och LXC:er körs den kopplade värdsäkerhetskopieringen efter gästernas säkerhetskopiering, i samma säkerhetskopieringscykel. Vid återställning kommer gästkonfigurationerna från värdsäkerhetskopian (under /etc/pve) och gästdiskarna från cykelns vzdump-kopior. Detta underlättar samordnad återställning av hela noden men är ingen atomär ögonblicksbild: ändringar under cykeln kan ge skillnader mellan värdkonfiguration och gästernas disktillstånd." }, "frequencyBadge": { "title": "Rekommenderad frekvens", "body": "Säkerhetskopiera värden ofta för att maximera kompatibiliteten med en framtida återställning. Ju närmare säkerhetskopian ligger värdens aktuella tillstånd, desto färre avvikelser i konfiguration, paket och komponenter måste återställningen hantera." }, "modes": { "heading": "De två lägena", "rows": [ { "mode": "Nytt schemalagt jobb", "backends": "Lokalt, PBS, Borg", "schedule": "Egen OnCalendar uttryck (systemd kalendersyntax - t.ex. daily, Mon..Fri 03:00).", "retention": "Efterfrågas separat: keep-last, keep-hourly, keep-daily, keep-weekly, keep-monthly, keep-yearly. Tillämpad av körningsskriptet efter varje framgångsrik backup." }, { "mode": "Bifoga till ett PVE vzdump jobb", "backends": "Lokal, PBS (Borg har ingen PVE-sida schemaläggning)", "schedule": "Ärvd från föräldern PVE jobb. Ingen systemd-timer installeras på ProxMenux-sidan.", "retention": "Ärvd från förälderns prune-backups-konfiguration (mappade en-till-en till körningsskriptets KEEP_*-variabler via hb_pve_prune_to_keep_env)." } ] }, "attachDetail": { "heading": "Så fungerar kopplingsläget", "intro": "PVE skriver vzdump-jobb till /etc/pve/jobs.cfg, med ett avsnitt per jobb som anger lagringen för VM- och LXC-kopiorna. Kopplingsläget kräver en backend som ProxMenux stöder (lokalt eller PBS). Värdsäkerhetskopieringen körs via job-end-hooken efter att gästernas säkerhetskopieringsjobb avslutats.", "steps": [ { "step": "1", "detail": "Under jobbskapande listar ProxMenux kompatibla förälder PVE-uppgifter via hb_pve_list_vzdump_jobs_for_backend. Användaren väljer en." }, { "step": "2", "detail": "Jobbets .env är skrivet med PVE_PARENT_JOB, PVE_STORAGE och de ärvda KEEP_* värdena; ingen systemd timer skapas." }, { "step": "3", "detail": "hb_install_vzdump_hook registrerar en skripthook i /etc/vzdump.conf. I job-end-fasen för varje vzdump-jobb jämförs mottaget $STOREID med PVE_STORAGE för varje aktiverat kopplat jobb, och körningsskriptet startas för matchande jobb. Matchningen görs efter lagring, inte efter det valda överordnade jobbets ID." }, { "step": "4", "detail": "Arkivet sparas i samma lagring som vzdump-kopiorna: path/dump/ för lokalt mål eller PBS-arkivlagret som konfigurerats i PVE-lagringsposten." } ], "outroBody": "Kopplingsläget har ingen egen timer. Om det valda överordnade PVE-jobbet inaktiveras eller tas bort stoppas dess utlösning, men ett annat vzdump-jobb med samma lagring kan fortfarande starta värdsäkerhetskopieringen. Inaktivera eller ta bort själva ProxMenux-jobbet för att förhindra det. Vid inaktivering ligger jobbposten kvar och kan senare aktiveras eller kopplas igen." }, "storageLayout": { "heading": "Filer som utgör ett jobb", "intro": "Varje schemalagt jobb beskrivs fullständigt av tre eller fyra filer på disken. Att läsa dem ger hela konfigurationen av jobbet utan att förlita sig på gränssnittet.", "rows": [ { "path": "/var/lib/proxmenux/backup-jobs/JOB_ID.env", "content": "Backend, backup-ID eller destination, schema (nyt läge) eller PVE-förälder (Attach-läge), aktiverad flagga, lagring KEEP_*-värden, referenspekare." }, { "path": "/var/lib/proxmenux/backup-jobs/JOB_ID.paths", "content": "En absolut sökväg per rad — valet från profilen fastställs när jobbet skapas. Om filen redigeras används det nya valet nästa gång timern löser ut." }, { "path": "/etc/systemd/system/proxmenux-backup-JOB_ID.timer + .service", "content": "Nytt läge bara. Tjänsten anropar run_scheduled_backup.sh JOB_ID. Timern schemalägger det med Persistent=true (missade körningar utförs vid nästa start) och en liten RandomizedDelaySec=120 att sprida belastning när flera jobb delar samma OnCalendar uttryck." }, { "path": "/etc/vzdump.conf script-hook", "content": "Fäst läge bara. Installerad en gång av hb_install_vzdump_hook; matchar varje bifogat jobb PVE_STORAGE mot $STOREID PVE passerar till krokskriptet." } ] }, "runner": { "heading": "Vad ett jobb gör när det startar", "intro": "Varje jobb – oavsett om det är nymodell eller bifogad – kör samma trestegssekvens:", "steps": [ "Förbered säkerhetskopian. Läser jobbkonfigurationen (destination, profil, vägar) och monterar arkivträdet exakt på samma sätt som det interaktiva flödet gör. Resultatet är samma arkiv som en manuell säkerhetskopia med dessa inställningar skulle producera.", "Skriv till destinationen. Laddar eller skriver arkivet till den konfigurerade destinationen - en lokal .tar.zst fil, en PBS backup, eller ett Borg-arkiv - med exakt samma verktyg och referenser en manuell säkerhetskopia till samma destination skulle använda.", "Tillämpa bevaranderegler. Ta bort gamla säkerhetskopior från destinationen, hålla keep-last / keep-daily / keep-weekly räknas konfigurerade på jobbet. Pruning utförs av själva destinationen: PBS tillämpar sina egna bevaranderegler, Borg kör borg prune, och för Local ProxMenux raderar filerna som faller utanför keep-last-fönstret." ] }, "management": { "heading": "Hantera jobb", "intro": "Schemaläggarmenyn (Scripts TUI) och fliken Monitor Backups avslöjar samma åtgärder på något jobb.", "rows": [ { "action": "Kör nu", "detail": "Anropar körningsskriptet omedelbart utan att vänta på timern eller vzdump-hooken. Användbart för att verifiera konfigurationen utan att vänta till nästa schemalagda körning." }, { "action": "Aktivera / Inaktivera", "detail": "Nytt läge: systemctl enable/disable --now timern. Bifoga läge: vänder ENABLED flaggan i jobbenv - krokskriptet respekterar den vid nästa PVE-körning." }, { "action": "Redigera", "detail": "Öppnar åter dialogerna för destination, schema, profil och bevarande och skriver om jobbfilerna. Jobb-ID:t behålls." }, { "action": "Ta bort", "detail": "Tar bort jobbets env-fil, sökvägsfilen och systemd-timern med tjänsten (nytt läge) samt inaktiverar hookkopplingen (kopplingsläge). Arkiv som redan finns på destinationen påverkas inte." }, { "action": "Visa logg", "detail": "Strömmar /var/log/proxmenux/backup-jobs/JOB_ID-YYYYMMDD_HHMMSS.log — en loggfil per körning. Körningsskriptet sänder också ut en kompakt statusrad till journald under tjänsten systemd." } ] }, "notifications": { "heading": "Aviseringar", "body": "Varje schemalagd körning utlöser samma hb_notify_lifecycle-händelser som det interaktiva flödet (start, complete, fail). Om aviseringskanaler är konfigurerade i Monitor visar obevakade jobb sina resultat på samma sätt som manuella säkerhetskopior – en användare behöver inte kontrollera loggen för att veta om ett jobb lyckades." }, "whereNext": { "heading": "Nästa steg", "items": [ { "label": "Skapa backups", "href": "/docs/backup-restore/creating-backups", "tail": " - det interaktiva flödet som delar backend med schemaläggaren." }, { "label": "Destinationer", "href": "/docs/backup-restore/destinations", "tail": " — per-backend konfiguration som används av både det interaktiva flödet och schemaläggaren." }, { "label": "Återställande", "href": "/docs/backup-restore/restoring", "tail": " — flödet som använder de säkerhetskopior som jobben skapar." } ] } }