Så här rensar du ett inaktuellt Restic-lås utan att avbryta en aktiv säkerhetskopiering

Eva Wong är Teknisk skribent och den boende fixaren på ZimaSpace. En livslång nörd med en passion för hemma-labb och öppen källkod, hon specialiserar sig på att översätta komplexa tekniska koncept till tillgängliga, praktiska guider. Eva tror att självhosting ska vara roligt, inte skrämmande. Genom sina handledningar ger hon gemenskapen verktyg att avmystifiera hårdvaruinstallationer, från att bygga sin första NAS till att bemästra Docker-containrar.

Ett inaktuellt Restic-lås bör rensas först när det har bevisats att varje angiven värd och process är inaktiv. Åtgärden är en vanlig upplåsning av ett inaktuellt lås, inte en tvingad borttagning av alla lås.

När flera hemmaservrar delar på ett arkiv kan ett lås som ser gammalt ut tillhöra ett långsamt fjärrjobb, en omstartad container eller en process vars klocka skiljer sig från operatörens dator. Pausa nya schemalagda körningar först, spara låsmetadata, kontrollera den angivna värden och varje underhållsstyrning och använd sedan den vanliga rensningsvägen. Om någon ägare inte kan verifieras ska du avbryta och bevara låset.

Pausa nya jobb och identifiera varje låsägare

Inaktivera timers, cron-poster, containerscheman och orkestreringsjobb som kan starta Restic på arkivet. Spara den aktuella låslistan och de senaste tjänsteloggarna. Anteckna värd, process-ID, användare, tidsstämpel och om låset är exklusivt för varje lås, och inspektera sedan den angivna processen på exakt den värden.

En exklusiv arkivkontroll kan blockera annat arbete, och ett avbrutet kontrollås kan se ut som ett övergivet säkerhetskopieringslås tills åtgärden och ägaren har matchats.

Om någon process körs eller om dess loggar fortsätter att uppdateras ska du vänta eller stoppa den ordentligt via dess tjänstehanterare. Om värden inte kan nås är det inte bevisat att låset är inaktuellt. Fortsätt först när alla relevanta processer saknas, ingen schemaläggare kan starta om dem och arkivet inte tar emot skrivningar.

Verifiera att låset är inaktuellt utifrån mer än dess ålder

Vänta under en kort observationsperiod och lista låsen igen. En kandidat till ett inaktuellt lås har ingen aktiv ägare, inga loggar som uppdateras, ingen förnyelse och ingen skrivaktivitet i arkivet. Jämför klockorna och fråga samma backend från en annan betrodd klient om arkivet är fjärranslutet.

Ett fullständigt arbetsflöde för Restic-arkiv behandlar upplåsning som en administrativ åtgärd bland säkerhetskopieringar, kontroller, lagringsregler och återställningar. Den ersätter inte att fastställa vem som fortfarande äger arkivet.

Om låset förnyas, om en logg uppdateras eller om klienterna visar olika vyer av backend ska du avbryta. Om låset förblir oförändrat och dess ägare bevisligen är avstängd kan du fortsätta. Ålder stöder resultatet men bevisar det inte; en långsam aktiv åtgärd kan vara äldre än operatören förväntar sig.

Använd den vanliga rensningen av inaktuella lås först

Använd Restics vanliga upplåsningsbeteende så att inaktuella lås tas bort medan lås som fortfarande bedöms vara aktiva bevaras. Lägg inte till något alternativ för att ta bort alla lås och kör inte nästa kommando utan låsning. Spara kommandots utdata och ta omedelbart därefter en ny låslista.

Det vanliga upplåsningskommandot är avsett specifikt för inaktuella lås, medan tvingad borttagning är en separat åtgärd med högre risk som inte bör ingå i den normala reparationskedjan.

Om den inaktuella posten försvinner utan att något aktivt lås tas bort kan du fortsätta med valideringen. Om ett aktivt lås finns kvar ska du respektera det och återgå till kontrollen av ägaren. Om ett lås återkommer omedelbart har en timer, container eller fjärrvärd startat arbete. Inaktivera den källan och upprepa inte upplåsningen förrän den nya ägaren är förstådd.

-15% OFF
Single board computer zimaboard2

Validera den ursprungliga säkerhetskopieringen och nästa schemalagda körning

Kör exakt den säkerhetskopiering som blockerades och registrera start, förlopp, avslutningsstatus och låsets livscykel. Bekräfta att låset visas medan Restic arbetar och försvinner efter ett ordentligt avslut. Lista den nya ögonblicksbilden och återställ ett litet prov till en separat plats innan du aktiverar automatiseringen igen.

Om arkivet fungerar skrivskyddat eller underhållet fortfarande är ofullständigt ska du hålla tillståndet efter en avbruten prune-åtgärd separat från rensningen av inaktuella lås.

Aktivera det vanliga schemat igen under en cykel. Åtgärden är lyckad när båda körningarna slutförs, deras lås rensas normalt och det återställda provet stämmer. Eskalera om ett inaktuellt lås återkommer efter att processen har avslutats korrekt, om vyerna av backend förblir inkonsekventa eller om resultaten från arkivkontroll och återställning inte stämmer överens. Automatisera inte tvingad upplåsning som lösning på återkommande problem.

Support och tips

Mer att läsa

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.