Best Linux Media Center Distros voor je thuisbioscoop

Ervaring leert dat je nooit te paranoïde kunt zijn over systeemback-ups. Als het gaat om het beschermen en behouden van kostbare gegevens, is het het beste om een stapje verder te gaan en ervoor te zorgen dat je kunt vertrouwen op je back-ups als dat nodig is.

Zelfs vandaag de dag, wanneer sommige cloud- en hostingproviders geautomatiseerde back-ups voor VPS’en aanbieden tegen relatief lage kosten, is het verstandig om je eigen back-upstrategie te maken met behulp van je eigen tools om wat geld te besparen en het misschien te gebruiken om extra opslagruimte te kopen of een grotere VPS te krijgen.

Klinkt interessant? In dit artikel laten we je zien hoe je een tool genaamd Duplicity kunt gebruiken om bestanden en mappen te back-uppen en te versleutelen. Bovendien helpt het gebruik van incrementele back-ups voor deze taak ons om ruimte te besparen.

Dat gezegd hebbende, laten we beginnen.

Duplicity Backup Tool installeren in Linux

Om duplicity te installeren in RHEL-gebaseerde distributies, moet je eerst het EPEL-repository inschakelen (je kunt deze stap overslaan als je Fedora zelf gebruikt).Op RHEL 9:

Op RHEL 9:

subscription-manager repos --enable codeready-builder-for-rhel-9-$(arch)-rpms
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm

Op CentOS 9, AlmaLinux 9, Rocky Linux 9:

dnf config-manager --set-enabled crb
dnf install epel-release

Op RHEL 8:

subscription-manager repos --enable codeready-builder-for-rhel-8-$(arch)-rpms
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

Op CentOS 9, AlmaLinux 9, Rocky Linux 9:

dnf config-manager --set-enabled powertools
dnf install epel-release

Voer vervolgens uit,

dnf install duplicity

Voor Debian-gebaseerde distributies zoals Ubuntu en Linux Mint.

sudo apt update 
sudo apt install duplicity

In theorie worden veel methoden voor verbinding met een bestandsserver ondersteund, hoewel alleen ssh/scp/sftp, lokale bestandsbereik, rsync, ftp, HSI, WebDAV en Amazon S3 tot nu toe getest zijn in de praktijk.

Zodra de installatie is voltooid, zullen we uitsluitend sftp gebruiken in verschillende scenario’s, zowel om gegevens te backuppen als te herstellen.

Ons testomgeving bestaat uit een RHEL 8 box (te backuppen) en een Debian 11 machine (backupserver).

Het aanmaken van SSH-sleutels voor wachtwoordloos inloggen op een externe server

Laten we beginnen met het aanmaken van de SSH-sleutels op onze RHEL-machine en deze over te zetten naar de Debian back-upserver.

Als je SSH uitvoert op een andere poort, dan veronderstelt het onderstaande commando dat de sshd-daemon luistert op poort XXXXX op de Debian-server. Vervang AAA.BBB.CCC.DDD door het werkelijke IP-adres van de externe server.

ssh-keygen -t rsa
ssh-copy-id [email protected]
ssh-copy-id -p XXXXX [email protected]  

Vervolgens moet je ervoor zorgen dat je kunt verbinden met de back-upserver zonder een wachtwoord te gebruiken:

ssh [email protected]
SSH Passwordless Remote Login

Nu moeten we de GPG-sleutels aanmaken die zullen worden gebruikt voor de versleuteling en ontsleuteling van onze gegevens:

gpg2 --full-gen-key

Je wordt gevraagd om in te voeren:

  • Soort sleutel
  • Sleutelgrootte
  • Hoe lang de sleutel geldig moet zijn
  • A passphrase
Create GPG RSA Key in Linux

Om de benodigde entropie te genereren voor het aanmaken van de sleutels, kun je inloggen op de server via een ander terminalvenster en een paar taken uitvoeren of enkele opdrachten uitvoeren om entropie te genereren (anders moet je lang wachten totdat dit deel van het proces is voltooid).

Zodra de sleutels zijn gegenereerd, kun je ze als volgt weergeven:

gpg --list-keys
List GPG Keys

De string hierboven gemarkeerd in het geel staat bekend als de openbare sleutel-ID en is een gevraagd argument om uw bestanden te versleutelen.

Het maken van een Linux-back-up met Duplicity

Om eenvoudig te beginnen, laten we alleen de map /var/log back-uppen, met uitzondering van /var/log/anaconda en /var/log/sa.

Aangezien dit onze eerste back-up is, zal dit een volledige zijn. Volgende uitvoeringen zullen incrementele back-ups maken (tenzij we de volledige optie toevoegen zonder streepjes direct na duplicity in het onderstaande commando):

PASSPHRASE="tecmint" duplicity --encrypt-key 115B4BB13BC768B8B2704E5663C429C3DB8BAD3B --exclude /var/log/anaconda --exclude /var/log/sa /var/log scp://[email protected]//backups/rhel8
OR
PASSPHRASE="YourPassphraseHere" duplicity --encrypt-key YourPublicKeyIdHere --exclude /var/log/anaconda --exclude /var/log/sa /var/log scp://root@RemoteServer:XXXXX//backups/rhel8

Zorg ervoor dat je de dubbele schuine streep niet mist in het bovenstaande commando! Deze worden gebruikt om een absoluut pad aan te geven naar een map met de naam /backups/rhel8 in de back-upbox waar de back-upbestanden worden opgeslagen.

Vervang YourPassphraseHere, YourPublicKeyIdHere, en RemoteServer door het wachtwoord dat u eerder heeft ingevoerd, de GPG openbare sleutel-ID en met het IP-adres of de hostnaam van de back-upserver, respectievelijk.

Uw uitvoer zou vergelijkbaar moeten zijn met de volgende afbeelding:

Create a Backup using Duplicity

De bovenstaande afbeelding geeft aan dat in totaal 86,3 MB is geback-upt in een 3,22 MB op de bestemming. Laten we overschakelen naar de back-upserver om onze zojuist gemaakte back-up te controleren:

Confirm Linux Backup Files

A second run of the same command yields a much smaller backup size and time:

Compress Backup

Het herstellen van Linux-back-ups met Duplicity

Om succesvol een bestand, een map met de inhoud ervan, of de hele back-up te herstellen, mag de bestemming niet bestaan (duplicity zal geen bestaand bestand of map overschrijven). Om dit te verduidelijken, laten we het logbestand cron in de CentOS-box verwijderen:

rm -f /var/log/cron

De syntaxis om een enkel bestand van de externe server te herstellen is:

PASSPHRASE="YourPassphraseHere" duplicity --file-to-restore filename sftp://root@RemoteHost//backups/rhel8 /where/to/restore/filename

waarbij,

  • bestandsnaam het te extraheren bestand is, met een relatief pad naar de directory die is geback-upt
  • /waar/te/herstellen is de directory op het lokale systeem waar we het bestand willen herstellen.

In ons geval, om het hoofdlogboek van de cron van de externe back-up te herstellen moeten we het volgende uitvoeren:

PASSPHRASE="YourPassphraseHere" duplicity --file-to-restore cron sftp://[email protected]:XXXXX//backups/rhel8 /var/log/cron

Het cron-logboek moet worden hersteld naar de gewenste bestemming.

Vergelijkbaar hiermee, voel je vrij om een directory te verwijderen van /var/log en het te herstellen met behulp van de back-up:

rm -rf /var/log/mail
PASSPHRASE="YourPassphraseHere" duplicity --file-to-restore mail sftp://[email protected]:XXXXX//backups/rhel8 /var/log/mail

In dit voorbeeld moet de mail directory worden hersteld naar zijn oorspronkelijke locatie met al zijn inhoud.

Duplicity Commando Gebruik

Op elk moment kunt u de lijst met gearchiveerde bestanden weergeven met het volgende commando:

duplicity list-current-files sftp://[email protected]:XXXXX//backups/rhel8

Verwijder back-ups ouder dan 6 maanden:

duplicity remove-older-than 6M sftp://[email protected]:XXXXX//backups/rhel8

Herstel mijnbestand binnen de directory gacanepa zoals het was 2 dagen en 12 uur geleden:

duplicity -t 2D12h --file-to-restore gacanepa/myfile sftp://[email protected]:XXXXX//remotedir/backups /home/gacanepa/myfile

In het laatste commando kunnen we een voorbeeld zien van het gebruik van het tijdsinterval (zoals gespecificeerd door -t): een reeks paren waarbij elk bestaat uit een getal gevolgd door een van de tekens s, m, h, D, W, M, of J (aangevend seconden, minuten, uren, dagen, weken, maanden, of jaren respectievelijk).

Samenvatting

In dit artikel hebben we uitgelegd hoe je Duplicity gebruikt, een back-up hulpprogramma dat standaard versleuteling biedt voor bestanden en mappen. Ik raad je ten zeerste aan om een kijkje te nemen op de website van het Duplicity-project voor verdere documentatie en voorbeelden.

We hebben een man-pagina van Duplicity in PDF-formaat verstrekt voor jouw leesgemak, het is ook een volledige referentiegids.

Voel je vrij om ons te laten weten als je vragen of opmerkingen hebt.

Source:
https://www.tecmint.com/duplicity-create-encrypted-incremental-linux-backup/