Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Re: .tar fájlból való törlés biztonságos?

2 views
Skip to first unread message

Gabor Gombas

unread,
Jan 6, 2021, 3:58:22 AM1/6/21
to
On Wed, Jan 06, 2021 at 07:49:55AM +0100, Csaba wrote:

> Van egy nagyméretű .tar fájlom. Kicsomagolni nincs hely. A tartalmát
> tömörítőprogrammal (pl. 7-zip) is át tudom nézni, ki tudom
> szelektálni: mi az ami kell és mi az, ami nem.
> Ha a 7-zip segítségével a .tar fájlból törlök fájlokat, akkor a
> törlési művelet során fájlsérülés, tehát a többi, .tar-ban lévő fájl
> sérülése előfordulhat?
> Nincs tömörítve mással, sima tar parancs segítségével van tömörítve,
> sem gzip, sem bzip2 programmal nincs rátömörítve.
> Tudom hogy ezt nem itt kellene megkérdezni, de sajnos jelenleg az a
> helyzet, hogy Windows-os (Windows 10, 64 bit) legújabb 7-zip
> filemanager esetén is érdekelne hogy nem okozhat -e adatsérülést.

Nem egészen értem, hogy egy tar fájlhoz miért kellene 7-zip, miért nem
jó maga a tar. Viszont bármit is használsz törlésre, az helyben fogja a
fáljt felülírogatni, tehát ha menet közben történik valami (elmegy az
áram, vagy a helyi adatmaffia nyom egy Ctrl+C-t), akkor bizony fennáll
az adatsérülés veszélye.

Szerintem vágj bele - legrosszabb esetben visszaállítod backup-ból. Ha
nincs backup, akkor meg úgysem fontos az az adat, ugyebár...

Ugyan írtad, hogy a teljes archívumot kicsomagolni nincs hely. De ha a
megtartani kívánt részek összességének van elég hely, akkor a törlést
végezheted egy pipe segítségével, mert a doksi szerint a "tar --delete"
működik stdin/stdout használata esetén is. Ekkor biztosan nem fog
sérülni az eredeti adat.

Ja: "sima tar parancs segítségével van tömörítve" - ne beszéljünk
össze-vissza, kérem szépen. A tar _NEM_ tömörít, hanem csomagol. Könnyű
megjegyezni: egy tömörített izé kisebb, mint az eredeti izé, egy
becsomagolt izé viszont nagyobb, mint az eredeti izé. Még akkor is, ha
vékony papírba csomagolod.

Gábor
_________________________________________________
linux lista - li...@mlf.linux.rulez.org
http://mlf.linux.rulez.org/mailman/listinfo/linux

Csaba

unread,
Jan 6, 2021, 4:00:00 AM1/6/21
to
Szia!

Köszönöm a választ.

Gabor Gombas <gom...@digikabel.hu> írta, 2021. 01. 06.:
>
> Nem egészen értem, hogy egy tar fájlhoz miért kellene 7-zip, miért nem
> jó maga a tar. Viszont bármit is használsz törlésre, az helyben fogja a
> fáljt felülírogatni, tehát ha menet közben történik valami (elmegy az
> áram, vagy a helyi adatmaffia nyom egy Ctrl+C-t), akkor bizony fennáll
> az adatsérülés veszélye.

Többszáz fájl van benne, egyszerűbbnek tartom grafikus filemanager
segítségével kitörölgetni, ami nem kell.


>
> Szerintem vágj bele - legrosszabb esetben visszaállítod backup-ból. Ha
> nincs backup, akkor meg úgysem fontos az az adat, ugyebár...

Ez egy backup, viszonylag kevésbé fontos adatokról. :D


>
> Ugyan írtad, hogy a teljes archívumot kicsomagolni nincs hely. De ha a
> megtartani kívánt részek összességének van elég hely, akkor a törlést
> végezheted egy pipe segítségével, mert a doksi szerint a "tar --delete"
> működik stdin/stdout használata esetén is. Ekkor biztosan nem fog
> sérülni az eredeti adat.

Sose csináltam még ilyet és félek elrontanék valamit.


>
> Ja: "sima tar parancs segítségével van tömörítve" - ne beszéljünk
> össze-vissza, kérem szépen. A tar _NEM_ tömörít, hanem csomagol. Könnyű
> megjegyezni: egy tömörített izé kisebb, mint az eredeti izé, egy
> becsomagolt izé viszont nagyobb, mint az eredeti izé. Még akkor is, ha
> vékony papírba csomagolod.

Ebben teljesen igazad van, tévesen fogalmaztam: a .tar formátum nem
tömörített, ezt tudtam, csak arra akartam utalni hogy nem lett
összenyomva semmivel a .tar fájl, mivel akkor tömörítésről beszéltem,
ezért írhattam a tar parancs után is tömörítést.

Üdv: Csaba

Szládovics Péter

unread,
Jan 11, 2021, 12:01:48 AM1/11/21
to
2021. 01. 06. 9:05 keltezéssel, Gabor Gombas írta:
> Szerintem vágj bele - legrosszabb esetben visszaállítod backup-ból. Ha
> nincs backup, akkor meg úgysem fontos az az adat, ugyebár...


Ez azért nem mindig van így... A backup nem isten. A restore az esetek
90+%-ában adatvesztéssel jár, mert az utolsó backup és a restore
időpontja közötti adatváltozás elvész. De poénnak elmegy :)

Máskülönben szerintem a --delete nem véletlenül van az
argumentumlistában évtizedek óta, minden bizonnyal jól működik - bár én
próbálgatáson kívül nem foglalkoztam vele. Ami biztos: tömörített
archivum esetén nem működik kicsomagolás nélkül, mivel a 'tar -cz'
tulajdonképpen egy 'tar | gzip', azaz a tar.gz csak egy gzip bináris,
nem több, ahhoz, hogy egyáltalán csak belenézzünk, már ki kell bontani
valahol.

Én azt mondom, fogd meg a tar fájlt, másold le valahová, és kísérletezz
vele másutt, ha félsz tőle, hogy baja esik.

Ám, érdemes utána nézni a technikai specifikációnak is, hogy a törlés
megvalósítása hogyan történt, nem képződik-e (akár csak ideiglenesen is)
a törlés közben egy másik archivum. A tar fájl felépítéséből ítélve nem
feltétlenül képződik, de az ördög nem alszik.

Kiss Gabor

unread,
Jan 12, 2021, 2:27:22 PM1/12/21
to

On 1/10/21 10:20 PM, Szládovics Péter wrote:

> Én azt mondom, fogd meg a tar fájlt, másold le valahová, és kísérletezz
> vele másutt, ha félsz tőle, hogy baja esik.

Lemásolni? Minek? Csak össze tud rakni egy 431 byte-os tesztfile-t. :)
És legyen kéznél a strace!

kissg

Gabor Gombas

unread,
Jan 12, 2021, 11:52:06 PM1/12/21
to
On Tue, Jan 12, 2021 at 07:45:59PM +0100, Kiss Gabor wrote:
>
> On 1/10/21 10:20 PM, Szládovics Péter wrote:
>
> > Én azt mondom, fogd meg a tar fájlt, másold le valahová, és kísérletezz
> > vele másutt, ha félsz tőle, hogy baja esik.
>
> Lemásolni? Minek? Csak össze tud rakni egy 431 byte-os tesztfile-t. :)
> És legyen kéznél a strace!

Ez a teszt semmit nem mond. Lesz benne 1 db read() es 1 db write()
(nagyjából).

A fő veszély nem az, hogy a "tar --delete" hibás. A dokumentáció szerint
a "--delete" helyben írja felül a fájlt, és lassú. Ha nincs hely
kicsomagolni, az arra utal, hogy az archívum nem kicsi. Mivel a művelet
dokumentáltan lassú, a parancs várhatóan jóóó sokáig fog futni, tehát
szemmel látható esély van arra, hogy közben valami történik, és a
művelet megszakad. Márpedig a dokumentáció semmit nem mond arról, hogy
egy félbeszakított "--delete" mit hagy maga után - a tar nem tud
tranzakciókat.

Gábor

Gabor Gombas

unread,
Jan 12, 2021, 11:52:46 PM1/12/21
to
On Sun, Jan 10, 2021 at 10:20:39PM +0100, Szládovics Péter wrote:

> Máskülönben szerintem a --delete nem véletlenül van az
> argumentumlistában évtizedek óta, minden bizonnyal jól működik - bár én
> próbálgatáson kívül nem foglalkoztam vele.

Hát izé. Ha már archeológia - https://bugzilla.redhat.com/show_bug.cgi?id=66047:

"well, according to Paul Eggert, the current maintainer of GNU tar,
there are several unfixed bugs in delete. it's unfortunate that
the man page, info page, and all the source documentation neglect to
mention this."

Ez már régen volt, szóval lehet tippelni, hogy mennyi bug lett azóta
kijavítva :-)

Gábor

Kiss Gabor

unread,
Jan 13, 2021, 12:16:49 AM1/13/21
to

On 1/12/21 10:16 PM, Gabor Gombas wrote:
>> Lemásolni? Minek? Csak össze tud rakni egy 431 byte-os tesztfile-t. :)
>> És legyen kéznél a strace!
>
> Ez a teszt semmit nem mond. Lesz benne 1 db read() es 1 db write()
> (nagyjából).

Az openek az érdekesek.

> A fő veszély nem az, hogy a "tar --delete" hibás. A dokumentáció szerint
> a "--delete" helyben írja felül a fájlt, és lassú. Ha nincs hely

Hol olvashatnám én is azt dokumentációt? Mánuel nem mond erről semmit. :)

kissg

Csaba

unread,
Jan 13, 2021, 12:16:53 AM1/13/21
to
Sziasztok!

Mindenki válaszát köszönöm!
7-zip segítségével csináltam, a törlés után maradt fájlokra írogatta,
hogy "replicating" és valóban, elég sokáig tartott a művelet.

Csaba

Gabor Gombas

unread,
Jan 13, 2021, 4:41:00 AM1/13/21
to
On Wed, Jan 13, 2021 at 06:01:23AM +0100, Kiss Gabor wrote:

> Hol olvashatnám én is azt dokumentációt? Mánuel nem mond erről semmit. :)

apt install tar-doc; info tar

Gábor

0 new messages