Cum să migrezi în siguranță un folder de date Nextcloud pe un hard disk extern

Mutarea unui folder de date Nextcloud pe un hard disk extern mai mare sună ca o simplă sarcină de copiere și editare. Nu este. Detaliul important este că Nextcloud identifică spațiul de stocare local prin calea sa absolută pe disc. Dacă acea cale se modifică neglijent, serverul poate trata fișierele ca o locație de stocare diferită, ceea ce poate duce la înregistrări de fișiere duplicate sau orfane, metadate rupte sau pierderea relațiilor de partajare.

Cea mai sigură abordare practică pentru o instalare existentă este, prin urmare, ca Nextcloud să păstreze aceeași cale către directorul de date în timp ce se mută octeții efectivi pe discul extern. Manualul de administrare actual al Nextcloud recomandă în mod explicit mutarea directorului și apoi crearea unei legături simbolice de la calea originală la noua locație. Manualul avertizează, de asemenea, că modificarea directă datadirectorynecesită modificări ale bazei de date și nu este o metodă de migrare acceptată. Consultați ghidul de depanare a directorului de date Nextcloud .

Înainte de a începe: Ce se verifică, ce depinde de configurația dvs.?

ÎntrebareRăspuns practic
Pot doar să datadirectoryeditez config.php?Nu este în siguranță de la sine. Nextcloud documentează că modificarea căii absolute de stocare locală poate rupe relațiile din baza de date. Se preferă păstrarea căii originale cu o legătură simbolică.
Am nevoie de o copie de rezervă completă?Da. Documentația de backup a Nextcloud include configurația, directorul de date, baza de date și datele relevante ale aplicației/temei personalizate. Nu tratați discul vechi ca singura copie de rollback.
Unitatea externă trebuie să fie ext4?Niciun sistem de fișiere singular nu este impus de această procedură. Exemplele de mai jos utilizează ext4 deoarece proprietatea normală Linux și comportamentul permisiunilor sunt simple. Alte sisteme de fișiere pot necesita opțiuni de montare diferite.
Ar trebui să alerg files:scan --alldupă aceea?De obicei, nu este pentru o mutare care păstrează calea. Folosește-l atunci când fișierele lipsesc din memoria cache sau când fișierele au fost copiate în arborele de date în afara Nextcloud și necesită o rescanare imediată.
Este un hard disk USB la fel de fiabil ca un disc intern?Asta depinde de carcasă, cablu, alimentare, sistem de fișiere și gazdă. O unitate amovibilă care devine indisponibilă reprezintă un risc de disponibilitate, așa că faceți montarea persistentă și verificați-o înainte de a porni Nextcloud.

1. Montați unitatea externă pe o locație stabilă

Mai întâi identificați dispozitivul și sistemul de fișiere. Pe Linux, comenzi precum lsblk -fși blkidafișează UUID-ul sistemului de fișiere. Evitați construirea unei configurații permanente în jurul unui nume de dispozitiv, cum ar fi ; Numele dispozitivelor Linux se pot schimba atunci când se adaugă hardware sau ordinea de detectare se modifică. Manualul fstab/dev/sdb1 Linux recomandă identificatorii UUID sau LABEL pentru montările persistente.

lsblk -f
sudo blkid /dev/sdb1
sudo mkdir -p /mnt/nextcloud-data-storage

Adăugați o intrare potrivită la /etc/fstab. Înlocuiți exemplul de UUID și tipul de sistem de fișiere cu valori de pe propriul disc:

UUID=YOUR-FILESYSTEM-UUID  /mnt/nextcloud-data-storage  ext4  defaults  0  2

Apoi testați montarea înainte de a atinge Nextcloud:

sudo mount -a
findmnt /mnt/nextcloud-data-storage
df -h /mnt/nextcloud-data-storage
Terminal Linux care afișează lsblk, blkid, o intrare UUID fstab, mount -a și findmnt pentru unitatea externă Nextcloud

Verificați discul extern prin UUID și confirmați punctul său de montare înainte de a muta orice fișiere Nextcloud.

Concepție greșită des întâlnită: un director numit /mnt/nextcloud-data-storagenu dovedește că discul este montat acolo. Dacă unitatea lipsește, directorul punctului de montare poate exista în continuare pe discul sistemului. Acțiune: utilizați findmntsau mountpointde fiecare dată când testați migrarea și după o repornire.

2. Faceți o copie de rezervă a Nextcloud și opriți scrierile

Ghidul actual de backup al Nextcloud precizează că un backup recuperabil include directorul de date, configurația, baza de date și alt conținut specific implementării, cum ar fi aplicații și teme personalizate. Consultați documentația oficială de backup Nextcloud și asigurați-vă că backup-ul este stocat în altă parte decât unitatea pe care urmează să o repartiționați sau să o reutilizați.

Apoi, activați modul de întreținere din directorul de instalare Nextcloud. Pe Debian și Ubuntu, contul de server web este de obicei www-data:

cd /var/www/nextcloud
sudo -E -u www-data php occ maintenance:mode --on

Instrucțiunile de migrare precizează, de asemenea, că nicio activitate cron nu ar trebui să ruleze în timpul mutării și recomandă oprirea serverelor web/de aplicații în timp ce datele sunt relocate. Modul în care se face acest lucru depinde de implementare: Apache, Nginx plus PHP-FPM, Docker Compose, Snap, AIO și Kubernetes au limite de servicii diferite.

Acțiune: dezactivați intrarea cron Nextcloud sau opriți serviciul cron relevant, apoi opriți serviciul web/aplicație înainte de copia finală. Dacă setul de date este foarte mare, puteți pre-configura discul extern în timp ce site-ul este online, apoi puteți intra în modul de întreținere, opri scriitorii și executa o rsynctrecere finală pentru a captura modificările.

3. Copiați întregul director de date, inclusiv fișierele ascunse

Nu copiați doar folderele utilizatorilor. Directorul de date conține și fișiere ascunse, cum ar fi .ncdatași date despre aplicații, care aparțin spațiului de stocare. Nextcloud apelează explicit fișierele ascunse/dot în procedura sa de mutare.

Presupunem că directorul curent este /var/www/nextcloud/datași că discul extern este montat la /mnt/nextcloud-data-storage. Creați destinația și copiați directorul:

sudo mkdir -p /mnt/nextcloud-data-storage/data
sudo rsync -Aax --info=progress2   /var/www/nextcloud/data/   /mnt/nextcloud-data-storage/data/

Documentația de restaurare Nextcloud folosește rsync -Aaxca exemplu pentru păstrarea arborelui de directoare și a metadatelor. Pentru instalări foarte mari, rulați o a doua trecere după ce toți scriitorii sunt opriți și inspectați ieșirea. Opțiunile exacte de care aveți nevoie pot varia dacă sursa dvs. utilizează ACL-uri, atribute extinse, sisteme de fișiere neobișnuite sau stocare montată în containere.

Terminal care afișează modul de întreținere Nextcloud, cron oprit și rsync copiend întregul director de date, inclusiv .ncdata, pe o unitate externă

Oprește scrierile în fundal și copiază întregul arbore de date, inclusiv fișierele de metadate Nextcloud ascunse.

Concepție greșită des întâlnită: o copie finalizată înseamnă că migrarea este finalizată. Nu este așa. Nextcloud are nevoie în continuare de calea așteptată, iar utilizatorul HTTP trebuie să poată parcurge și scrie noua locație. Acțiune: verificați numărul de fișiere sau sumele de control eșantion înainte de a schimba căile și păstrați directorul sursă intact până când noul spațiu de stocare a trecut testele.

4. Păstrați calea originală de date cu o legătură simbolică

Aceasta este măsura cheie de siguranță. Să presupunem că Nextcloud folosește în prezent:

'datadirectory' => '/var/www/nextcloud/data',

Nu modificați acea valoare pentru migrarea recomandată cu păstrarea căii. În schimb, păstrați directorul vechi ca o copie de rollback și înlocuiți-l cu o legătură simbolică care indică unitatea externă:

sudo mv /var/www/nextcloud/data /var/www/nextcloud/data.old
sudo ln -s /mnt/nextcloud-data-storage/data /var/www/nextcloud/data
ls -ld /var/www/nextcloud/data

Nextcloud documentează această metodă de symlink deoarece stocarea locală este identificată prin calea absolută. Cu linkul implementat, Nextcloud continuă să vadă /var/www/nextcloud/datachiar dacă octeții se află pe discul extern.

Verificați proprietatea înainte de a face modificări generale ale permisiunilor:

stat -c '%U:%G %a %n' /var/www/nextcloud/data.old
stat -c '%U:%G %a %n' /mnt/nextcloud-data-storage/data
namei -l /mnt/nextcloud-data-storage/data

Utilizatorul HTTP trebuie să poată traversa directoarele părinte și să citească/scrie în directorul de date. Proprietarul corect variază în funcție de distribuție și metoda de instalare. Documentația occ a Nextcloud menționează că respectivul cont HTTP este de obicei utilizat www-datape Debian/Ubuntu, apachepe Fedora/CentOS și diferit pe alte sisteme.

Terminal care afișează verificări ale proprietății și o legătură simbolică de la calea originală de date Nextcloud către unitatea externă

Păstrați calea originală către directorul de date și indicați-o către discul extern cu o legătură simbolică.

Concepție greșită des întâlnită: rularea recursivă a unui director generic chmod 777corectează permisiunile. Poate ascunde problema reală, slăbind în același timp securitatea. Acțiune: comparați noul director cu proprietarul și permisiunile originale, păstrați ACL-urile acolo unde sunt utilizate și faceți doar corecția minimă necesară pentru utilizatorul HTTP.

Ce se întâmplă dacă vrei cu adevărat să te schimbi datadirectory?

Nextcloud descrie o procedură fără legături simbolice, dar aceeași documentație o etichetează ca neacceptată și avertizează că poate deteriora baza de date. Necesită atât modificarea, config.phpcât și actualizarea local::/old-data-dir/intrării corespunzătoare din oc_storagestabel.

Aceasta nu este pur și simplu o sintaxă alternativă pentru aceeași operațiune; aceasta modifică identificatorul de stocare pe care Nextcloud îl înregistrează intern. Acțiune: utilizați metoda symlink, cu excepția cazului în care aveți o copie de rezervă testată, un proces de restaurare testat și un motiv operațional specific pentru a elimina vechiul nume de cale. Pentru o nouă instalare Nextcloud, alegeți locația finală a datelor în timpul instalării. Nextcloud spune explicit că este mai ușor decât mutarea ulterioară.

5. Reporniți, verificați montarea și reporniți Nextcloud online

Înainte de a porni Nextcloud, verificați dacă sistemul de fișiere extern este într-adevăr montat și dacă legătura simbolică se rezolvă în acesta:

findmnt /mnt/nextcloud-data-storage
readlink -f /var/www/nextcloud/data
sudo -E -u www-data test -r /var/www/nextcloud/data/.ncdata && echo readable

Reporniți serviciul web/aplicație și reactivați cron job-ul Nextcloud folosind metoda corespunzătoare implementării dvs. Apoi dezactivați modul de întreținere și verificați starea serverului:

cd /var/www/nextcloud
sudo -E -u www-data php occ maintenance:mode --off
sudo -E -u www-data php occ status

Conectați-vă și testați mai multe operațiuni: deschideți un fișier existent, încărcați un fișier nou, redenumiți-l, ștergeți-l, restaurați-l din Coșul de gunoi și confirmați că un alt client îl poate sincroniza. Reporniți gazda o dată și repetați findmnt; aceasta detectează o /etc/fstabintrare nevalidă înainte de a deveni o surpriză în timpul unei întreruperi.

Terminal care verifică starea Nextcloud și montarea sistemului de fișiere extern alături de interfața Nextcloud Files

După schimbare, verificați atât montarea sistemului de operare, cât și operațiunile normale cu fișierele în Nextcloud.

Ai nevoie occ files:scan --all?

Nu automat. Documentația comenzii „files” de la Nextcloud precizează că files:scanactualizează memoria cache a fișierelor pentru fișierele noi sau modificate și poate fi utilă după copierea manuală sau la investigarea inconsecvențelor din memoria cache. O mutare executată corect, cu păstrarea căii, are scopul de a păstra aceleași fișiere și aceeași cale logică de stocare locală, așadar o scanare completă nu ar trebui să fie pasul implicit „pentru orice eventualitate”.

Acțiune: testați mai întâi interfața cu utilizatorul și comparați fișierele așteptate. Dacă lipsesc fișiere din Nextcloud, chiar dacă sunt prezente pe disc, utilizați o scanare specifică sau, atunci când este justificat, o scanare completă files:scan --all. Rețineți că o scanare completă pe o instalație mare poate dura mult timp.

Listă de verificare finală pentru migrare

  • Există o bază de date, o configurație și o copie de rezervă a datelor curente în afara discului care este migrat.
  • Sistemul de fișiere extern are o montare stabilă configurată prin UUID sau LABEL.
  • findmntconfirmă că unitatea externă este într-adevăr montată.
  • Scrierile și joburile cron din Nextcloud sunt oprite în timpul sincronizării finale.
  • Directorul de date complet, inclusiv .ncdata, a fost copiat.
  • Numele căii originale datadirectoryeste păstrat cu o legătură simbolică.
  • Utilizatorul HTTP poate parcurge calea de montare și poate citi/scrie datele.
  • Nextcloud pornește fără erori de stocare și occ statusfuncționează normal.
  • Testele de încărcare, redenumire, ștergere, restaurare, descărcare și sincronizare au avut succes.
  • Serverul a fost repornit o dată pentru a demonstra că unitatea externă se montează în mod fiabil la pornire.
  • Directorul vechi de date nu a fost șters până când noua configurare nu a fost testată și copiată de rezervă separat.

Cea mai importantă idee este simplă: migrarea datelor Nextcloud nu este doar o copie a sistemului de fișiere. Calea face parte din identitatea de stocare locală a Nextcloud. Păstrați acea cale atunci când este posibil, faceți din unitatea externă o montare de sistem fiabilă, opriți scrierile în timpul copiei finale și păstrați o copie de rollback până când noul spațiu de stocare a supraviețuit atât testării aplicației, cât și unei reporniri.

Lasă un comentariu

10 cele mai bune instrumente Ping Sweep pentru găsirea dispozitivelor în rețeaua dvs.

10 cele mai bune instrumente Ping Sweep pentru găsirea dispozitivelor în rețeaua dvs.

Comparați 10 instrumente de scanare ping pentru descoperirea rapidă a rețelelor LAN, scanarea multi-platformă și gestionarea adreselor IP. Aflați ce vă poate spune o scanare (sweep).

6 Cele mai bune instrumente de gestionare a rețelei pentru urmărirea performanței

6 Cele mai bune instrumente de gestionare a rețelei pentru urmărirea performanței

Comparați șase instrumente de gestionare a rețelei pentru monitorizarea performanței, inclusiv acoperirea SNMP, maparea, alertele, modelele de implementare și compromisurile de costuri.

QoS în rețele: Ce face calitatea serviciilor și cum funcționează

QoS în rețele: Ce face calitatea serviciilor și cum funcționează

Aflați ce înseamnă QoS în rețele, cum marcajele DSCP și cozile de trafic prioritizează aplicațiile vocale, video și de business și ce nu poate remedia QoS.

Cel mai bun software de server SFTP pentru transferuri securizate de fișiere

Cel mai bun software de server SFTP pentru transferuri securizate de fișiere

Compară software-ul de server SFTP fiabil pentru Windows și Linux, inclusiv OpenSSH, Bitvise, SolarWinds și SFTPGo. Găsește soluția potrivită pentru nevoile tale de securitate și transfer de fișiere.

Cele mai bune practici de monitorizare a rețelei: Ce să urmăriți și ce instrumente să utilizați

Cele mai bune practici de monitorizare a rețelei: Ce să urmăriți și ce instrumente să utilizați

Construiți o monitorizare practică a rețelei cu o acoperire clară a dispozitivelor, indicatori de performanță utili, alerte acționabile și o comparație între SolarWinds NPM, PRTG și OpManager.

Cele mai bune 7 instrumente de gestionare a adreselor IP pentru echipele de rețea

Cele mai bune 7 instrumente de gestionare a adreselor IP pentru echipele de rețea

Comparați șapte instrumente de gestionare a adreselor IP pentru descoperirea subrețelelor, coordonarea DNS și DHCP, inventarul rețelei și IPAM open-source.

10 cele mai bune instrumente de scanare a rețelei pentru descoperirea dispozitivelor și a adreselor IP

10 cele mai bune instrumente de scanare a rețelei pentru descoperirea dispozitivelor și a adreselor IP

Comparați instrumentele de scanare a rețelei pentru descoperirea rapidă a dispozitivelor, scanări IP pe mai multe platforme și IPAM pentru întreprinderi, cu îndrumări privind potrivirea fiecărei opțiuni la rețeaua dvs.

Cum se utilizează Nmap pentru Traceroute și citirea căii de rețea

Cum se utilizează Nmap pentru Traceroute și citirea căii de rețea

Folosește opțiunea --traceroute din Nmap pentru a mapa salturi la o gazdă autorizată, a înțelege ieșirea saltului și a RTT-ului și a depana răspunsurile lipsă fără a suprascana.

6 Cele mai bune instrumente de monitorizare a serverelor Windows pentru o disponibilitate și o performanță mai bune

6 Cele mai bune instrumente de monitorizare a serverelor Windows pentru o disponibilitate și o performanță mai bune

Comparați șase instrumente de monitorizare Windows Server în funcție de colectarea datelor Windows, vizibilitatea aplicațiilor, modelul de implementare și licențierea pentru a găsi instrumentul potrivit.

6 instrumente de monitorizare a rețelei Linux pentru dispozitive, gazde și trafic

6 instrumente de monitorizare a rețelei Linux pentru dispozitive, gazde și trafic

Comparați șase instrumente de monitorizare a rețelei Linux pentru descoperirea dispozitivelor SNMP, grafice de interfață, metrici gazdă, verificări de servicii și fluxuri de trafic.