Skip to main content

S3-migrering

Disse instruksjonene gjelder for v5.x og nyere. Hvis du følger denne veiledningen for en tidligere versjon, bruker du sharelatex i stedet for overleaf i stinavn og prefikset SHARELATEX_ i stedet for OVERLEAF_ for miljøvariabler. For v6 og nyere hopper du over de eldre user_files-kommandoene.
Vi vil gjerne høre fra deg! Hvis du vil fortelle oss hvor mange filer du migrerte, hvor stort det samlede volumet var, og hvor lang tid migreringen tok, kan du sende en e-post til ayaka-notes@outlook.com .
Denne veiledningen tar deg gjennom migreringen fra lagring på disk til en S3-kompatibel objektlagring. Den viser til deler av introduksjonsdokumentet om S3-oppsett.

Krav

  • En S3-kompatibel objektlagring å kommunisere med, se #s3-setup for alternativer
  • Ledig diskplass for migrering av eksisterende data, omtrent like mye som nåværende størrelse på disk
  • Et vedlikeholdsvindu for selve migreringen
  • En fullstendig sikkerhetskopi, inkludert konfigurasjonen, slik at det er mulig å gjenopprette fra den

Anslå diskplassen som trengs for migreringen

Vi kan bruke du til å beregne nåværende diskbruk:
Hvis du ikke har nok ledig diskplass på den nåværende serveren, kan du prøve å koble en ekstra disk til serveren.
Historikkatalogene har allerede riktig struktur. Du kan laste opp direkte fra den bind-monterte kildemappen, noe som ikke krever ekstra diskplass.

Migreringstrinn

Trinn 0: slå av instansen

Vi må sørge for at alle bruker-/malfiler blir migrert. Det er best å slå av instansen for å unngå at nylig opplastede filer går tapt. Se veiledningen vår om å ta en konsistent sikkerhetskopi for fremgangsmåten for avslutning.

Trinn 1: skriv om katalogstrukturen

Vi må skrive om katalogstrukturen for prosjektfiler for å kunne laste dem opp til S3. Katalogstrukturen for lokal lagring i filestore er <project-id>_<file-id>, mens katalogstrukturen i S3 er <project-id>/<file-id>. I det følgende brukes /srv/overleaf-s3-migration til å lagre filene i den nye katalogstrukturen. Erstatt /srv/overleaf-bind-mount med vertskatalogen som er montert på /var/lib/overleaf. Kjør kopieringskommandoene på verten med tillatelse til å lese og skrive disse katalogene; containeren forblir stoppet. Vi kan bruke tar til å skrive om strukturen:

Trinn 2: last opp filene

Avhengig av hva du foretrekker, kan du bruke S3-klienten minio mc eller aws cli til å laste opp filene til den S3-kompatible objektlagringen. aws cli
  • Her bør du erstatte overleaf-user-files, overleaf-template-files, overleaf-project-blobs og overleaf-chunks med navnene på S3-bøttene dine.
  • Erstatt også /srv/overleaf-bind-mount med den lokale stien til bind-monteringen av /var/lib/overleaf. Som standard er dette ~/overleaf_data i en docker-compose.yml-distribusjon og <toolkit-checkout>/data/overleaf når du bruker Toolkit.
minio mc Vi bruker serveraliaset “s3” her; du kan ha valgt et annet navn.

Trinn 3: start instansen med peking mot S3

Legg til alle S3-relaterte variabler i konfigurasjonen, som beskrevet i delen Oversikt over variabler i oppsettsveiledningen for S3. Behold bind-monteringen av datakatalogen: den kan også inneholde krypteringsnøkler for Zotero eller Mendeley som ikke migreres til S3. Du kan nå starte instansen og validere migreringen:
  • binærfiler kan forhåndsvises i editoren
  • en PDF med bilder kan kompileres
  • nye filer kan lastes opp

Tilbakerulling

Du kan rulle tilbake migreringen på en kontrollert måte ved å reversere trinnene:
  1. Slå av instansen
  2. Speil filene tilbake ved å bytte om rekkefølgen på kilde/mål
  3. Skriv nye filer tilbake til den lokale katalogen ved hjelp av en omvendt transform
  4. Start instansen på nytt med den gamle konfigurasjonen
Den første transformasjonen fjerner mappen på øverste nivå. Den andre transformasjonen endrer katalogstrukturen til en flat struktur. Jokertegnene sørger for at bare filer pakkes ut, ikke de overordnede (prosjekt)mappene deres.
Sist endret 5. oktober 2026