Pagina 1 van 1

"versioning control" linux fileshare

Geplaatst: 14 okt 2012, 12:45
door honda4life
Hallo iedereen,

Ik ben al een tijdje aan het zoeken hoe ik via linux een fileshare kan maken geschikt voor backup.
De share aanmaken is geen enkel probleem, maar zoals je weet is verwijderen in een share definitief zonder prullenbak.

Ik ben op zoek naar de juiste software om alles dat ooit op die schijf gezet is bij te houden.
Het maakt toch niks uit als je 100 GB nuttig gebruikt dat je bijvoorbeeld 300 GB aan oude versies hebt zolang de schijf niet vol staat.
Ik denk dat ik moet zoeken naar iets timecapsule-achtig of niet?

Wie kan me verder helpen een goede backupserver te maken (raid configuratie is reeds dik in orde hoor).


Bedankt!

Re: "versioning control" linux fileshare

Geplaatst: 14 okt 2012, 15:23
door ubremoved_539
Misschien eens kijken om te backuppen op internet (in de cloud)... bestaan hier reeds diverse threads over.

Re: "versioning control" linux fileshare

Geplaatst: 14 okt 2012, 16:03
door honda4life
Nu kost het me niks :wink:
De bedoeling is ook nog een externe harde schijf buitenshuis te bewaren.

Cloud: Je hebt wel wat gratis ruimte, maar dan moet je weer beginnen met encryptie, splitsen,...
Ook is het blijven bestaan van zo'n diensten toch wat twijfelachtig, hoe weet je dat zo'n host in goede papieren zit?

Re: "versioning control" linux fileshare

Geplaatst: 14 okt 2012, 22:12
door meon
Op m'n Windows-server gebruik ik de Volume Shadow Copy Service, eigenlijk zoek je hier een *nix-tegenhanger voor eh?
Al google'nd kom ik dan bij LVM snapshots uit, maar hoe dat allemaal moet werken... dunno :)

Re: "versioning control" linux fileshare

Geplaatst: 15 okt 2012, 16:13
door Mathy
Als je FreeNAS installeert kan je instellen dat hij bijvoorbeeld elke 15 minuten een snapshot neemt, je kan dan altijd terug gaan. Dat is geen echte versioning want niet elke wijziging is opgeslagen, maar close enough :-)

Re: "versioning control" linux fileshare

Geplaatst: 15 okt 2012, 17:00
door boran_blok
Mijn vorige backup oplossing maakte gebruik van rDiff Backup.

Dit is een reverse diff backup oplossing waarbij de courante versie (v0) altijd volledig is, en V-1 een reverse diff is van V0, V-2 een reverse diff van V-1 etc.

Op windows had ik dan via cygwin, volume shadow copy (voor locked files) en cwRsync een backup scriptje opgezet naar de linux box.

Dit zette dan de volledige contents over anar de server. Daar draaide ik dan periodiek rDiff backup om versies bij te gaan houden.

Het kostte mij inderdaad geen geld, maar wel veel tijd en hoewel ik er mij mee geämuseerd heb was het toch niet zo waterdicht als mijn CrashPlan backup systeem dat ik nu heb opgezet.

Vooral omdat de periodieke backups arbeidsintensief waren voor de clients moest ik ofwel de PC snachts aan laten staan (electriciteitskosten) ofwel dit laten draaien if idle. Dit laatste had ik zo ingesteld en toen ik overschakeld was mijn meest recente backup reeds 6 maand geleden omdat mijn PC dus nooit idle was als hij aanstond.

enkele scripts kwestie dat je er misschien iets mee bent (waarschuwing, veel tekst).

makeBackupauto.cmd

Code: Selecteer alles

@echo off
call cleanup
cd C:\backup\cwRsync
vshadow -script=vss-setvar.cmd -exec=vss-exec.cmd c:
exit %errorlevel%
cleanup.cmd

Code: Selecteer alles

@echo off
call vss-setvar.cmd
vshadow -ds=%SHADOW_ID_1%
vss-setvar.comd (autogenerated elke run door vshadow)

Code: Selecteer alles

@echo.
@echo [This script is generated by VSHADOW.EXE for the shadow set {e5a649fe-aa39-4635-af3d-f7e9e93b7468}]
@echo.

SET SHADOW_SET_ID={e5a649fe-aa39-4635-af3d-f7e9e93b7468}
SET SHADOW_ID_1={770231d2-513b-466c-911c-bb7cd73365c2}
SET SHADOW_DEVICE_1=\\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy1
vss-exec.cmd (de main logica)

Code: Selecteer alles

@echo off
call %~dp0vss-setvar.cmd

REM Define temporary drive letter
dosdev X: %SHADOW_DEVICE_1%

@ECHO OFF

REM Make environment variable changes local to this batch file
SETLOCAL

REM ** CUSTOMIZE ** Specify where to find rsync and related files (C:\CWRSYNC)
SET CWRSYNCHOME=C:\backup\cwRsync

REM Set CYGWIN variable to 'nontsec'. That makes sure that permissions
REM on your windows machine are not updated as a side effect of cygwin
REM operations.
SET CYGWIN=nontsec

REM Set HOME variable to your windows home directory. That makes sure 
REM that ssh command creates known_hosts in a directory you have access.
SET HOME=%HOMEDRIVE%%HOMEPATH%

REM Make cwRsync home as a part of system PATH to find required DLLs
SET CWOLDPATH=%PATH%
SET PATH=%CWRSYNCHOME%\BIN;%PATH%

REM ** CUSTOMIZE ** Enter your rsync command(s) here

SET USER=usr
SET RSYNC_PASSWORD=pass

REM we store the errorlevel after this command, because this is the critical command, all the rest is pre and post processing.
rsync -rv --del --delete-excluded --exclude-from=excludes.txt --chmod=Dugo+X "/cygdrive/x/Documents and Settings/user/My Documents" nas::user/MyDocuments
SET errorNum=%errorlevel%
echo Backup van %date% %time% : %errorNum% >> backuplog.txt

REM Delete temporary drive letter
dosdev -r -d X:

exit %errorNum%
Diff & Cleanup script (op de server):

Code: Selecteer alles

#! /bin/sh

mailtoOK="[email protected]"
mailtoFAIL="[email protected] root"

rdiff-backup --force --remove-older-than 26W /mnt/raid/rdiff 2>&1 | tee backupLog.tmp
if [ $? != 0 ]; then
        cat backupLog.tmp | mail -s "rdiff-backup cleaning failed" $mailtoFAIL
else
        cat backupLog.tmp | mail -s "rdiff-backup cleaning completed" $mailtoOK
fi

rdiff-backup /mnt/raid/rsync /mnt/raid/rdiff 2>&1 | tee backupLog.tmp
if [ $? != 0 ]; then
        cat backupLog.tmp | mail -s "rdiff-backup failed" $mailtoFAIL
else
        cat backupLog.tmp | mail -s "rdiff-backup completed" $mailtoOK
fi

had dan nog verdere scripts die die backuplog parseten om te kijken of er errorlevels != 0 in kwamen en bij 5 failed runs klein warninkje op desktop etc, zoals ik al zei, ik heb mij er wel wat mee geämuseerd.

Re: "versioning control" linux fileshare

Geplaatst: 15 okt 2012, 18:27
door honda4life
freenas lijkt me een behoorlijk goed idee, maar toch liver een linux omgeving waar ik nog het één en het ander zelf aan kan aanpassen :wink:

Edit: Blijkbaar bestaar er vfs_recycle voor samba, misschien is dit wel de oplossing :wink:

Re: "versioning control" linux fileshare

Geplaatst: 17 okt 2012, 10:20
door Mathy
Euh... FreeNAS is gewoon BSD hoor, daar kan je ook dingen mee als je het niet erg vindt om wat te prutsen. En met de huidige versies heb je ook plugins voor zaken zoals torrent, ...