Véletlen törlés megakadályozása.

Adott egy W2K3 szerver, ami fájlszerverként funkcionál, semmi extra, teszi a dolgát. Ezen a szerveren tárolunk fájlokat 2-300.000 darabot (dokumentumok, fotók, projekt fájlok, stb.), a teljes méret 5-600GB között mozog. A rendszeres mentés meg van oldva, csak az a gond, hogy a törléseket is átvezeti a backup, és néha későn vesszük észre, hogy valaki valamit (véletlenül) letörölt.
Arra kéne valami megoldás, hogy törlés esetén a fájlok ne törlődjenek valóságosan, hanem egy átmeneti tárolóba kerüljenek, amit egy arra jogosult személy kezelhet. Ami fontos lenne, hogy ez a dolog ne kliens oldalon működjön, hanem szerver oldalon, a felhasználók beavatkozása nélkül.

Tudtok erre valami programot, vagy megoldást javasolni?

Hozzászólások

Én rsync-el csinálnék növekményes mentést róla.

Sajnos nem jó, mert rengeteg "legális" törlés van amit úgymond tovább kell vinni a backup felé, különben néhány héten belül akkora "katyvasz" lenne az egész, hogy nem tudnánk kiválogatni mi a jó és mi a rossz.

----------------------------------------------------------------------------------------------------
Hármas........alá............kettes.........................egyest írtam be.

Nem lenne katyvasz.

Mivel nem írtad, hogy milyen algoritmus alapján dől el, hogy legális vagy nem legális törlés történt, feltételezem, hogy minden törölt állományt jóvá kell hagyni (természetesen a módosításokat nem). Amit én csinálnék:


rsync ... --backup-dir törölt-2011.06.23 forrás cél

utána végigmennék a backup könyvtáron valamivel:


for f in törölt-2011.06.23
  if f in cél: rm f # ez csak módosítás, törölhető

(A vizsgálat módja persze a várható mennyiségektől függően választandó meg.)

ezek után a törölt-2011.06.23 könyvtárban csak olyan állományok vannak, amik az előző mentéskor még megvoltak, most nincsenek (vagyis legális vagy illegális törlés áldozatai lettek.)

Mindez ugye akkor adódik eleve, ha az "átvezeti a backup" rsync-et jelent -- mert arról nem írtál...

szaszi

Hmm... értem a dolog logikáját.
Végül is win alatt is meg lehetne (talán) oldani egy "tükör" és egy "fordított különbség" backupal.

Az a gond, hogy ehhez a módszerhez minél "sűrűbb" full backuppal kell rendelkezni... Az meg elég sok tárhely.
Vagy nem jól látom?

----------------------------------------------------------------------------------------------------
Hármas........alá............kettes.........................egyest írtam be.

1 full backup van.


rsync ... --delete --backup --backup-dir törölt-2011.06.23 forrás cél

Itt az 1 db full backup-ra ("cél") szinkronizál rá. A "törölt-2011.06.23" tartalmazza az előző full-hoz képesti növekményes mentést, ebben (for f...) csak azokat az állományokat hagyom meg, amik előtte megvoltak, most már nincsenek benne a full-ban.

Ha minden nap megcsinálom, akkor a törölt-dátum könyvtárban rendre az aznap _törölt_ fájlok lesznek.

PS: van windowson is rsync
http://rsync.net/resources/howto/windows_rsync.html

Robocopy.
Nagyjabol igy hasznaljuk sok user fajljainak mentesere. Monduk helyet foglal boven a dolog, minden naprol van kulon mentes, torleseket nem "visszuk at". Egy bat igy nez ki:

net use \\server\share /u:user pass
robocopy x:\path \\server\share\nap /S /B /R:0 /NC /log:x:\path\to\log
net use \\server\share /d

Igen, igen, van benne pass.. azt meg nem tudtam kikerulni.

A /R:0 fontos - retry-ok szama sikertelen masolasnal (eg hasznalatban van fajl), default 1 millio probalkozas...
Kulon megadott /purge jelenti azt, hogy a mentesben eltavolitja azt ami mar nincs ott a sourceon.

Nem is lenne hülyeség:-)
Csak az a gond, hogy a távolról törölt fájlok, nem kerülnek be se a szerveren, se klienseken a lomtárba.
Ezt igazából nem is tudom, hogy miért...

----------------------------------------------------------------------------------------------------
Hármas........alá............kettes.........................egyest írtam be.