Portál AbcLinuxu, 14. května 2025 03:59

Dotaz: Nahradi odstraneni presunem

17.10.2013 16:48 Koren
Nahradi odstraneni presunem
Přečteno: 377×
Odpovědět | Admin
Potreboval bych na debianu zfalsovat smazani souboru za jeho presun do jine slozky. Tedy v momente kdy uzivatel nerootovej smaze soubor a to jak pomoci rm, nebo pomoci PHP ci cehokoliv, provest presun souboru s pozmenenym jmenem do jine slozky. Prvni myslenka byla zmenit rm binarku, jenze pak tu mame napriklad shred, ktery soubor nejdriv prepise a pak dalsi alternativy. Zkousel jsem inotify, ale to mi zase jenom rekne ze neco bylo smazano a uz s tim nic nenadelam. Nejake napady kam se ubirat? Jde o to ze na filesystem se musi dat dale zapisovat a uzivatel musi mit pocit ze soubor byl smazan. (fakt ze se neuvolni misto nevadi)
Nástroje: Začni sledovat (2) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

wamba avatar 17.10.2013 18:34 wamba | skóre: 38 | blog: wamba
Rozbalit Rozbalit vše Re: Nahradi odstraneni presunem
Odpovědět | | Sbalit | Link | Blokovat | Admin
no napadá mě udělat hard link někam hned a až klesne number of hard links na 1 (popř. o 1 klesne) tak ho přesunout do příslušné složky
This would have been so hard to fix when you don't know that there is in fact an easy fix.
17.10.2013 21:06 Koren
Rozbalit Rozbalit vše Re: Nahradit odstraneni presunem
Vyborne. Proc me to sakra nenapadlo. Diky. :o)
21.10.2013 18:55 mikky | skóre: 25 | blog: Ghlog | M. L. - Praha
Rozbalit Rozbalit vše Re: Nahradit odstraneni presunem
Na ty linky bych si dal pozor:

1) nepomůže to při úpravě dat (truncate, shred?) 2) může to způsobit problémy v okamžiku, kdy opravdu bude třeba soubory smazat (hledání všech linků..) 3) nebude to fungovat mezi filesystemy

Výměna binárky rm bude mít víceméně stejnej efekt, ale rm neni jedinej způsob, jak smazat soubor (aniž by bylo nutné ho při tom přepisovat) - tady by bylo koncepčnější řešení přepsat (LD_PRELOAD?) funkci unlink(). Což ovšem stále neřeší přepis typu shred.

Co ve skutečnosti potřebuješ je nějaká forma zálohování/verzování.

-m.
Je vám méně než 30 ? (jsme vrstevnící => budeme si tykat) : (jsem pro vás bažant => můžete mi tykat);
17.10.2013 19:30 dustin | skóre: 63 | blog: dustin
Rozbalit Rozbalit vše Re: Nahradi odstraneni presunem
Odpovědět | | Sbalit | Link | Blokovat | Admin
Třeba http://codeincluded.blogspot.cz/2011/07/collectfs-trash-collecting-userspace.html ?
Jendа avatar 18.10.2013 13:44 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Nahradi odstraneni presunem
Odpovědět | | Sbalit | Link | Blokovat | Admin
A když uživatel soubor truncatne (na nulovou délku) nebo ho přepíše nulama, tak to nevadí?

Jinak můžeš si udělat globální LD_PRELOAD. A nebo rovnou patchnout jádro ;).
19.10.2013 11:15 Koren
Rozbalit Rozbalit vše Re: Nahradi odstraneni presunem
vadi. Jenze to bychom museli verzovat vse, protoze nektere soubory jsou editovatelne, ale musi tak zustat. Potrebujeme je chranit pred smazanim. Pokud si to nekdo prepise obsah, jeho pech.
Aleš Janda avatar 19.10.2013 11:46 Aleš Janda | skóre: 23 | blog: kýblův blog | Praha
Rozbalit Rozbalit vše Re: Nahradi odstraneni presunem
A k čemu to má vlastně být? Co použít snapshoty třeba u btrfs nebo nilfs2?
Špekodlak avatar 19.10.2013 11:50 Špekodlak | skóre: 2 | Praha
Rozbalit Rozbalit vše Re: Nahradi odstraneni presunem
Mě zase napadl rdiff-backup :-)

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.