Rotera ZFS snapshots i FreeBSD: Difference between revisions
mNo edit summary |
m →Crontab |
||
Line 17: | Line 17: | ||
{{bc|1= | {{bc|1= | ||
@hourly /usr/local/sbin/zfs-autosnap.sh hourly | @hourly /usr/local/sbin/zfs-autosnap.sh hourly | ||
@daily /usr/local/sbin/zfs-autosnap.sh daily | @daily /usr/local/sbin/zfs-autosnap.sh daily | ||
@weekly /usr/local/sbin/zfs-autosnap.sh weekly | @weekly /usr/local/sbin/zfs-autosnap.sh weekly | ||
}} | }} |
Latest revision as of 19:44, 3 December 2015
Denna guide beskriver hur man automatiskt roterar snapshots på ZFS system.
Snapshot skript
Senaste version kan alltid hämtas via följande repository (kräver Gerrit-konto):
Logga in som root och kopiera skriptet till /usr/local/sbin/. Gör sen skriptet exekverbart:
Skriptet kräver bash för att fungera.
Crontab
För att automatiskt rotera varje timme, dagligen och varje vecka, kör kommandot crontab och lägg till följande rader:
@hourly /usr/local/sbin/zfs-autosnap.sh hourly @daily /usr/local/sbin/zfs-autosnap.sh daily @weekly /usr/local/sbin/zfs-autosnap.sh weekly
Kom ihåg att default PATH för cronjob är:
PATH = /bin:/usr/bin
Så för att kunna köra kommandon som zfs, krävs att även /usr/sbin finns med i PATH:en.
Rotera snapshots
För att rotera snapshots på ett ZFS filsystem, sätter man egenskapen: org.freebsd:snap:{hourly|daily|weekly}=<count>. Antal snapshots innan rotering, styrs via <count> variabeln. Sätts t.ex. värdet till 7, kommer snapshots 7 st snapshots sparas innan äldre raderas.
Exempel: Skapa snapshots av trunk/home/peter dagligen, spara 7 stycken innan den äldsta raderas: