2025-06-21 21:10:46 +00:00
2025-06-21 20:49:17 +00:00
2025-06-21 21:10:46 +00:00
2025-06-21 20:53:15 +00:00

worm

Write once, read many-Speicher

Ablauf

Projektverzeichnisse vorbereiten

mkdir mein_repo
cd mein_repo
git init
mkdir Archiv  # Das ist dein WORM-Speicher im Git-Repo
mkdir Neu     # Hier legst du temporär neue Dateien ab

pre-commit-hook einrichten

Der Hook verhindert, dass Dateien in das Archiv aufgenommen werden, wenn dort bereits eine Datei mit gleichem Namen gespeichert ist. Siehe Datei "pre-commit". Sie muss im Verzeichnis Projektverzeichnis/.git/hooks mit dem Dateinamen "pre-commit" gespeichert werden. Der Hook muss ausführbar gemacht werden:

chmod +x .git/hooks/pre-commit

Die Scripte

Bei Nutzung der Scripte ist der pre-commit-Hook eigentlich nicht erforderlich; er dient als Schutzschicht, falls die Scripte fehlerhaft sein sollten.

Beide Scripte verfügen nicht über einen push.

Das Cron-Script einrichten

Um automatisiert Dateien dem WORM-Speicher zuzuführen, werden sie im Verzeichnis "Neu" gespeichert (auch Unterverzeichnisse). Cron sorgt für die Übertragung der Dateien von "Neu" nach "Archiv", die noch nicht im WORM-Speicher vorhanden sind (sync_archive.sh). Übertragene Dateien werden gelöscht, nicht übertragene Dateien verbleiben im Verzeichnis "Neu".

Script mit Umbenennung

Beim Aufruf des Scriptes "interactive_archive_sync.sh" werden alle neuen Dateien von "Neu" nach "Archiv" verschoben. Im "Archiv" bereits vorhandene Dateien können auf Wunsch mit einer Versionsnummer versehen werden und dann dem Archiv zugeführt werden.

Description
Write once, read many-Speicher
Readme 48 KiB
Languages
Shell 100%