Gyakorlati útmutató / Mentés és helyreállítás

VPS mentés és visszaállítás két statikus fájlon

A VPS mentés és visszaállítás akkor ellenőrizhető, ha a másolatot a gépen kívülről is eléred, és visszakapod a várt fájlokat. Ez a gyakorlat két statikus fájlt archivál, külön számítógépre másolja őket, majd elkülönített könyvtárban ellenőrzi a tartalmukat.

· Frissítve: · Körülbelül 4 perc olvasás

Tartalomjegyzék

Tartsd szűken a helyreállítási próbát

Bash, GNU tar, sha256sum és OpenSSH szükséges Ubuntu vagy Linux/WSL környezetben. A szerveres lépések egy szerverterminálban, a helyiek egy másik számítógép termináljában fussanak. Tartsd nyitva mindkettőt a változók miatt, és parancshibánál állj meg.

Két eldobható fájlt használunk a saját könyvtáradban. Nem változtatjuk az élő webhelyet vagy Nginxet, a visszaállítás pedig nem rootként fut. Ez nem teljes gép-, alkalmazás- vagy adatbázismentés.

Hozd létre a két gyakorlófájlt a szerveren

A konfiguráció itt csak archiválandó szöveg, ne aktiváld szolgáltatásként:

umask 077
backup_lab=$(mktemp -d "$HOME/ubuntu-vps-backup.XXXXXX")
mkdir -p "$backup_lab/payload/site" "$backup_lab/payload/nginx" "$backup_lab/export"
printf '%s\n' '<!doctype html><html lang="en"><title>Restore drill</title><h1>Recovered static page</h1></html>' > "$backup_lab/payload/site/index.html"
printf '%s\n' 'server {' '    listen 8080;' '    server_name example.test;' '    root /var/www/first-site;' '}' > "$backup_lab/payload/nginx/first-site.conf"
printf 'Practice directory: %s\n' "$backup_lab"

Éles webhelynél a képek, átirányítások, include-fájlok, DNS és függőségek külön leltárt kívánnak. A tanúsítvány privát kulcsa nincs ebben a gyakorlatban. A fájlgyűjtés legyen következetes egy kiadáson belül, titkokat ne adj hozzá ellenőrizetlenül.

Készíts archívumot és kétféle ellenőrzőösszeget

A szerver ugyanabban a termináljában számold a kiválasztott fájlok SHA-256 értékeit, készíts relatív útvonalú archívumot, majd annak is számolj ellenőrzőösszeget. Közben ne változtasd a tartalmat.

(
    cd "$backup_lab/payload" &&
    sha256sum site/index.html nginx/first-site.conf > SHA256SUMS
)
tar -czf "$backup_lab/export/static-site.tar.gz" -C "$backup_lab/payload" site nginx SHA256SUMS
(
    cd "$backup_lab/export" &&
    sha256sum static-site.tar.gz > static-site.tar.gz.sha256
)
tar -tzf "$backup_lab/export/static-site.tar.gz"
printf 'Server export directory: %s\n' "$backup_lab/export"

A listában site/, nginx/, a két fájl és SHA256SUMS várható. Az archívum ellenőrzése az átvitt csomag változását mutatja; a belső lista a kibontott fájlokét. Egyik sem igazolja a forrást, ha valaki a fájlt és az elvárt összeget is lecserélheti.

Másold külön számítógépre

A kliensen a remote_backup értéke a szerver által kiírt pontos exportkönyvtár legyen. A REPLACE nem a mktemp által generált utótag; helyettesítsd a címet, fiókot és kulcsot is.

umask 077
recovery_dir=$(mktemp -d "$HOME/ubuntu-vps-restore.XXXXXX")
remote_backup=/home/deploy/ubuntu-vps-backup.REPLACE/export
scp -i ~/.ssh/ubuntu_vps "deploy@203.0.113.10:$remote_backup/static-site.tar.gz" "$recovery_dir/"
scp -i ~/.ssh/ubuntu_vps "deploy@203.0.113.10:$remote_backup/static-site.tar.gz.sha256" "$recovery_dir/"

Új SSH-gazda kulcsát megbízható csatornán ellenőrizd. Sikertelen kapcsolatnál használd az SSH-hibakeresést, ne kapcsold ki a kulcsellenőrzést.

Az SCP titkosítja az átvitelt, de a tar.gz önmagában tömörített, nem titkosított fájl. Védd a célfiókot és tárolót; szükség esetén nyugalmi titkosítást is használj. Másik könyvtár ugyanazon a VPS-en nem szerveren kívüli másolat.

Üres könyvtárba állítsd vissza a megbízható archívumot

A kliensen előbb ellenőrizd az archívumot. Csak OK eredménnyel folytasd; hibánál vizsgáld az okot vagy másold újra, ne írd át az elvárt összeget.

(
    cd "$recovery_dir" &&
    sha256sum -c static-site.tar.gz.sha256
)
tar -tzf "$recovery_dir/static-site.tar.gz"

Új, üres célkönyvtárba bonts ki. A keep-old-files megtagadja a meglévő fájlok cseréjét, a no-same-owner nem veszi át az archivált tulajdonost. Ne változtasd a célt / könyvtárra, és ne használd a sudo-t.

restore_dir=$(mktemp -d "$recovery_dir/restored.XXXXXX")
tar -xzf "$recovery_dir/static-site.tar.gz" -C "$restore_dir" --keep-old-files --no-same-owner
(
    cd "$restore_dir" &&
    sha256sum -c SHA256SUMS
)
cat "$restore_dir/site/index.html"

Mind a site/index.html, mind az nginx/first-site.conf OK eredménye és a visszakapott oldal címsora várható. Ez a fájltartalmat igazolja, nem a teljes webhely jogosultságait, ACL-jeit és rendelkezésre állását.

Válaszd szét a fájl- és szolgáltatás-helyreállítást

A konfiguráció még mindig inaktív fájl. Külön cseregépen vizsgáld az útvonalakat, modulokat, include-okat, jogosultságokat és tanúsítványokat; ott teszteld az összeállított Nginx-konfigurációt és a külső HTTP/HTTPS-kérést. Az érintetlen élő szerver szintaktikai ellenőrzése nem teszteli ezt a másolatot.

A TLS-kulcsokhoz külön védett mentést vagy tanúsítvány-újrakibocsátást tervezz. Aktív adatbázis fájljait ne ezzel a tar-recepttel mentsd; annak saját következetes mentési és visszaállítási eljárása szükséges.

A snapshot segíthet, de ellenőrizd megőrzését, helyét és visszaállítását. A létezése nem bizonyítja, hogy másik környezetben is használható webhelyet kapsz.

Jegyezd fel, mit állítottál helyre

Az RPO az időben mért elfogadható adatvesztés, az RTO a szolgáltatás visszaállításának célideje. Egy kis statikus oldalnál például 24 órás RPO és 60 perces RTO lehet üzleti cél, de ez nem ennek a gyakorlatnak a mért eredménye.

Kis képernyőn görgesd oldalra a táblázatot a többi oszlophoz.

FeljegyzésMit tesz ellenőrizhetővé
Mentés ideje és kiadásMely állapotot kapod vissza
Független tároló és megőrzésHol és meddig marad meg
Archívum és fájlok ellenőrzéseVisszakaptad-e a kiválasztott bájtokat
Kezdés és befejezésA meghatározott lépések ideje
Hiányzó függőségekMi kell még a szolgáltatáshoz
Külső HTTPS-próbaValóban visszatért-e a webhely

Az egész folyamatot mérd a hozzáféréssel, géplétrehozással, konfigurációval, tanúsítvánnyal és szükség esetén DNS-sel együtt. A gyors helyi kibontás nem kiesés-helyreállítási benchmark. A mentési hibákhoz legyen riasztás és felelős.

A telepítési útmutató az első webhelyet készíti el; az üzemeltetési összehasonlítás a megőrzést és helyreállítási segítséget is figyelembe veszi.

Két statikus fájlra korlátozott gyakorlat, a visszaállított konfiguráció aktiválása nélkül. A távoli átvitelt és a teljes alkalmazás helyreállítását a saját környezetedben külön kell ellenőrizni.

Gyakori kérdések

Töröljem az eredeti oldalt a mentés bizonyításához?

Nem szükséges. Külön könyvtárba állítsd vissza és ellenőrizd a fájlokat; a teljes szolgáltatást külön cserekörnyezetben teszteld.

A helyes SHA-256 teljes mentést jelent?

Csak a listában szereplő tartalom egyezését igazolja. Hiányzó adatbázist, titkot vagy DNS-beállítást nem fedez fel.

Elég egy snapshot?

A megőrzést, infrastruktúra-függőséget és visszaállítási módot ellenőrizni kell. Fontos adathoz tarts megfelelő független másolatot is.

A következő hasznos lépés

Erőforrás és helyreállítás együtt.

Az alkalmazás követelményei alapján vizsgáld meg az ajánlatot és a szolgáltató aktuális feltételeit.

Szerverek összehasonlítása

Partnerlink · Rendelés előtt ellenőrizd az ajánlatot.