Shellscript | Backups nach x Tagen löschen

Hier ein kleines snippet wie Ihr schnell und einfach über deinen Cron o.Ä. Backups löschen könnt

Gitlab

Initial suchte ich nach einer Lösung um alte Gitlab Backup Dateien zu löschen die unter /var/opt/gitlab/backup liegen. Diese verursachten nach einer Zeit, dass unser selbst gehosteter Gitlab Server nicht mehr aufrufbar war (Diskspace full).

Nun gibt es allerdings seit einige Zeit die Möglichkeit dies zu konfigurieren in:

nano /etc/gitlab/gitlab.rb

sucht Ihr nach backup_keep_time und kommentiert dies aus, sowie setzt eure Zeit:

## Limit backup lifetime to 7 days - 604800 seconds gitlab_rails['backup_keep_time'] = 604800

Normale Dateien

Bei „normalen“ Dateien oder wenn Ihr eure Backups umbenannt habt, könnt Ihr einfach eine delete_backups.sh Datei erstellen mit folgendem Inhalt:

#!/bin/bash

# This cleans out all backup files older then 7 days
find /var/opt/gitlab/backups/ -mindepth 1 -mtime +7 -type f -name '*backup.tar' -delete

Tipp: Tested das ganze vorher am besten ohne das -delete

Kurz erklärt: mit find sucht ihr in dem Fall nach Dateien (-type f) die im Ordner /var/opt/gitlab/backups/ liegen, älter als 7 Tage sind und mit backup.tar enden.

Habt Ihr mehrere Dateien oder Ordner, erstellt euch am besten ein Repository dazu (auf eurem Gitlab Server 😀 )

Anmerkung: I know I know, basic stuff, aber sowas braucht man öfter mal und ich nutze meinen Blog auch als Suche und vielleicht hilft es ja noch jemanden 🙂

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.