Sérült .doc file helyreállítása

Fórumok

LibreOffice 7.3 Writerrel létrehoztam egy .doc dokumentum fájlt, melyet szerkesztettem már több napja. A tegnapi napon is dolgoztam délelőtt a dokumentummal.

Délután szerettem volna folytatni a munkát, de a fájl megnyitásakor a LibreOffice azt mondta, hogy a fájl sérült, ezért nem nyitható meg. A felajánlott helyreállítás nem volt sikeres. Több, a neten fellelhető sérült dokumentum helyreállító programot is kipróbáltam eddig eredmény nélkül.

Esetleg van-e valakinek ötlete, tapasztalata e tekintetben a helyreállításra tekintettel?

Közben elkezdtem a munkát előröl, de nagy segítség lenne, ha a már elkészült részeket nem kellene újból megszülni.

Hozzászólások

Szerkesztve: 2022. 04. 30., szo – 11:01

Ez most nem fog segíteni rajtad, de én ebben az esetben elővenném a backup-ot. Igaz, napi szinten én sem mentek, de ha valamiben nagyon nagy munka van, akkor a legfeljebb egy hetes mentés is segíthet, illetve ha intenzíven dolgozom valamin, akkor arról a munkakönyvtárról csinálok egy

tar -cJf munkaneve.tar.xz munkakönyvtár/

ideiglenes mentést vagy másolatot munkafile.save névvel a munkafile mellé. Háttértárak megfekvése ellen pedig ilyenem van:

cat /proc/mdstat
Personalities : [raid1] 
md126 : active raid1 sdd1[1] sdb1[0]
      1951284288 blocks super 1.2 [2/2] [UU]
      bitmap: 2/15 pages [8KB], 65536KB chunk

md127 : active raid1 sda3[0] sdc3[2]
      484845568 blocks super 1.2 [2/2] [UU]
      bitmap: 1/4 pages [4KB], 65536KB chunk

unused devices: <none>

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Én egyszerűen tartok erre a pendrive-ot. Azon van egy Munka nevű mappa, majd ezen belül 1, 2, 3 stb.  almappák. Ide mentegetek, mindig a legutolsó számúba a legfrissebb verziót, minden módosítás után. Így aztán ott van mindig az új, de ott vannak a korábbiak is.

Szakdolgozatnál ezt még azzal fejeltem meg, hogy a normál .odt mellett kiexportáltam .rtf-be is, és azt is elmentettem mellette, hogy legalább a szövegem meglegyen, ha a formátumgenerátorba beüt valami zavar és rosszul mentene.

Pendrive az rossz ötlet, mert alapból filléres kínai szarok, és nagyon gyorsan feküdnek meg, előjel nélkül. Lehet rá menteni, de ne az egyetlen backup legyen, készüljön mentés valami másik külső meghajtóra, vagy felhőbe.

The world runs on Excel spreadsheets. (Dylan Beattie)

Azért erre ne fogadj. A verziókezelő egy csomó szempontból hasznos, nem csak programozóknak. Pl. rájössz, hogy a dokumentum végül nem úgy alakult, ahogy szeretted volna, és vissza akarsz térni az 5-tel ezelőtti verzióra, vagy a 2 nappal ezelőttire, mert akkor még jobban állt az egész. Vagy pl. ha többen is dolgoztok ugyanazon a dokumentumon. Esetleg mert általában online is könnyű szinkronizálni pl. egy git tárolóba, ezért nem téma, ha a Word felülcsapja, vagy a mentős pendrive-od is behal. Annyira azért nem nagy móka egy gitet megtanulni. Nem azt mondom, hogy kötelező, de nem olyan overkill meg morbid, mint az elsőre gondolnád, már humán emberkék is szoknak rá.

Számozott mappákkal, fájlokkal az a baj, hogy elfelejthetsz bizonyos módosítások után újraszámozni, és könnyelműen csak belementesz a régibe egy újabb verziót. Félre ne érts, én sem verziókezelek minden szart, de vannak esetek, amikról nem is gondolnád, hogy megérheti használni.

The world runs on Excel spreadsheets. (Dylan Beattie)

Tökéletes megoldás nincs, de még mindig jobb, mint kézzel verziószámozni, meg pendrive-ra szerencsétlenkedni. Amúgy meg bináris fájlok is simán verziókezelhetők, meg az odt, docx kicsomagható a zip konténerjéből (rtf-nél, tex-nél, még ennyi se kell, mert az alapból tömörítetlen), és kezelhető tömörítetlen XML-alapú plain textként is, az meg aztán bőven ugyanolyan jól verziókezelhető, mint egy C-ben írt szoftver vagy shell script.

The world runs on Excel spreadsheets. (Dylan Beattie)

Nyilván, a VCS-t nem tisztán kollaborációra csinálták, hanem verziókövetésre, de azért használható másra is. Nem is azért tukmálom a kollégára, mert kötelező lenne használni, meg garantáltan megváltaná számára a világot, csak látom a gondolkodásán, hogy nem érti mire jó, meg elzárkozik még a használatának a gondolatától is, közben meg annyira nem morbid és overkill, mint ő gondolja. Igazából még a pendrive-val sincs baj, ha nem egyetlen backup, meg még így is többet ér magában, mintha egyáltalán nem lenne semmilyen mentés.

The world runs on Excel spreadsheets. (Dylan Beattie)

De, a VCS-t kollaborációra csinálták, csak nem mindegy, hogy egy megfelelő IDE segítségével kell összerakni conflicted forráskódot, vagy olyan fájlokat kell összetákolni, amit egy pillanatra sem terveztek úgy, hogy human readable legyen.

Nem akarok többet ezen rugózni, szerintem docx/odt alapú fájlokon való kollaborációra klasszikus VCS-t használni faszság, ettől még másra lehet jó, de ezt egy szóval nem is vitatta senki. 

Ebből egy percig sem következik, hogy kötelező a kollaboráció. Egyedül írom egy műszer firmware-ét, használok svn repót, és ennek egyrészt az a célja, hogy a céges szerverről készül snapshot is, ritkábban backup is, meg a céges szervert elérem munkahelyen, de otthonról VPN-en keresztül, továbbá ki tudok húzni korábbi változatot a repóból. Nem nagyon kell, de azért volt már erre példa. Nem kell attól tartanom, hogy a kódot nagyon megreformálom, s közben elvész az addigi utolsó, még jól működő változat.

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Ti szándékosan nem veszitek figyelembe a thread tartalmát, amikor egy hsz-re reagáltok?

A verziókezelő egy csomó szempontból hasznos, [...] pl. ha többen is dolgoztok ugyanazon a dokumentumon.

Erre reagáltam, de már ott is idéztem a konkrét szöveget, hogy egyértelmű legyen.

Ugyanazon a dokumentumon többen dolgozás az nagyjából a fene megette szint. Írok át egy függvényemet, s közben valaki megokosítja, s már semmi sem igaz, amit eddig gondoltam róla, az kicsit sem vicces. Ha egy másik file-ban, másik alrendszeren dolgozik valaki, az elmegy, bár egyszer programoztam csak így, de több időt vitt el az ezzel való kínlódás, mintha teljesen egyedül csináltam volna.

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Akkor szerintem nem érted, hogy hogyan működik a docx, odt, pedig leírtam. Ezek lényegében sima .zip konténerben vannak, amit akár kézzel ki is csomagolhatsz, és visszacsomagolás nélkül is működnek. A zip-elés csak kényelmi feature, hogy egy fájl legyen, meg legyen egy kis helyspórolás, de működik enélkül is. Ha belenézel, teljesen szabályos plain text fájlok vannak benne, XML, rdf, stb. formátumban, épp olyan human readable, mint egy JS, HTML, C, Python, Rust, LaTeX, markdown, stb. kód.

Ha nem csomagolod ki, hanem bináris formában verziókezeled, az attól még épp úgy működik. A github, gittlab, stb. tele van tárolókkal, amelyeken van egy csomó png, pdf, stb. fájl, azok is simán verziókezelhetők.

The world runs on Excel spreadsheets. (Dylan Beattie)

Abszolút értékelem a jótanácsot, el is gondolkodtam rajta. De mivel egyszerű fájlokkal dolgozok, azt is ritkán, így nekem tényleg tök felesleges verziókezelőbe nyakig merülni. Mértéktelen és agyonbonyolított túlzás volna, bízni se tudnék benne pont emiatt.

A számozást is csak azért csinálom, ha nagyon elszúrok valamit akkor legyen meg a korábbi, de nagyon ritka hogy szükség volna a korábbira. Ha csak a legújabb volna meg mindig, az is elég volna.

A verziókezelő ágyúval verébre kategória az én esetemben

Egyáltalán nem. A saját dokumentumaimat én is verziókezelem. Néhány szerencsétlen baleset után rájöttem, hogy sokkal egyszerűbb és biztonságosabb megoldás (a verziókezelő dumpjait egy másik felhőbe, a gép winchesterére és egy külső winchesterre is mentem).

Pendrive-om se purcant még ki soha.

Szerintem a topiknyitó is hasonlót mondott pár nappal a topik megnyitása előtt.

Idézném a "LibreOffice a gyakorlatban" című kiadvány ide vonatkozó pontját.

1.3.4 Változatok kezelése

A LibreOffice lehetőséget biztosít ugyanazon a dokumentum különböző változatainak tárolására. A dokumentum-változat első mentésekor vagy egy változat betöltésekor a Fájl menü Verziók parancsát adjuk ki.

Ha az Új verzió mentése bezáráskor jelölőnégyzetet bekapcsoljuk, akkor a dokumentumablak
minden lezárásakor automatikusan újabb változat keletkezik. A változat mentéséhez az Új verzió
mentése
gombra kattintunk.

Doc vagy docx? Docx egy zip, abbol talan a tartalom maga visszajon. 

Ezt sem értem. Ha LibreOffice-szal hozod létre, miért nem *.odt? Ha a végén *.doc kell, akkor is odt-ben írnám meg, s amikor elkészültem vele, akkor menteném le *.doc-ban is, de a forrásanyag mindig az alkalmazás legjobban támogatott, „természetes”, legjobben tesztelt, ez esetben odt formátumában lenne.

Még az is lehet, hogy a LibreOffice doc driver-ének bugjába futottál bele, ami tönkretette a munkafile-t. Rossz ötlet valamilyen kényszer kompatibilitási formátumban tartani a munkafile-t, s azon dolgozni vele.

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Legközelebb odt-ben írd, s csak akkor csinálj belőle doc - de inkább docx - mentést, amikor átadod a munkát windowsos környezetbe. Ha folytatod, akkor az odt-t szerkeszd tovább, abban javíts, majd átadás előtt megint csinálj docx vagy doc mentést belőle. Lényegében úgy, mintha pdf-et csinálnál. Ha a címzettnek nem kell szerkesztenie, eleve pdf-ben add neki az anyagot.

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Tudom, hogy már nem vígasztal, de legközelebb tényleg .odt-t vagy docx-et használj. Azok modern formátumok, több formázást is támogatnak, plusz mivel XML alapú plain text, bezippelve, ezért akár manuálisan, emberi szemmel is ki lehet belőle menteni dolgokat. A hagyományos, bináris Word .doc formátum már rettenet elavult, kb. 19 éves, rég nem nagyon használja senki se, még MS-os környezetben sem. Nem csak a LibreOffice, de a Word is már egyre gyérebben támogatja, épp csak olyan szinten, hogy be tudj olvasni régi fájlokat, és el tudd őket menteni modernebb formátumban.

The world runs on Excel spreadsheets. (Dylan Beattie)

Akár még az .rtf is jó, mert az is 7 bites ASCII plain text formátum, nyíltan dokumentált tag-ekkel, így plain text editorban is macerálható, kinyerhető belőle adat. Mindegy, csak ne ilyen zárt bináris formátumos szutyok legyen, mint a .doc.

The world runs on Excel spreadsheets. (Dylan Beattie)

file "foo.doc"

mit mond rá? Fájlméret mekkora? MS Office sem tudja helyreállítani? Belenézve a fájlba, látsz felismerhető szöveget (a sima doc-ban olvashatóan szerepelnie kéne, ha jól rémlik UCS-2, úgyhogy nézőtől függően minden betű előtt/után valami szemét, de ott kellene, hogy legyen)?

Ha nem szupertitkos, feltölthetnéd valahova a fájlt, úgy lehet, hogy inkább tudnánk segíteni, mint sötétben tapogatózni...

BlackY

"Gyakran hasznos ugyanis, ha számlálni tudjuk, hányszor futott le már egy végtelenciklus." (haroldking)

Fel nem bírom fogni h. így 2022-ben nem alapértelmezett a 10-15 percenkénti auto-backup az offisz klónokban?

Meg azt is nehez felfogni, hogy 15 ev alatt senkinek nem sikerult meg lemasolni az apple fele time machine mukodeset. Egyszer be kell kapcsolni es nem foglalkozni vele. 10+ eve hasznalom, es parszor mentette mar meg a helyzetet. Minden fontos nalam is a cloud-ban van, de vannak felkesz meg szerkesztes alatt allo file-ok, arra szerintem nincs jobb megoldas mint a time machine.

Igen, ezeket en is ismerem... sot mi is hasznaljuk server oldalon ezeket a megoldasokat. Viszont ehhez erteni kell valamilyen szinten hozza, foleg ha vissza is akarsz szedni valamit. OSX-en 1 click a bekapcsolas, es 1 click-el az adott mappaban es datum szerintem mehetsz is visszafele. Ezt amugy ennel egyszerubben nem lehet szerintem kivitelezni.

Szerk. rosszul írom. Az autosave volt default, nem az autobackup. Akkor meg nem tudom, az tényleg jó lenne, ha default lenne. Lehet már most is az, régebben nagy LO felhasználó voltam, de már kb. 3 éve hozzá sem nyúltam, mióta XeTeX, markdown/html, LaTeX Beamer, sc, R, SQLite, stb. megy helyette terminálos minimalizmus címén. Régebben is ezek mentek helyette, de azért használgattam erre-arra. Nem tartom most se rossz szoftvernek, bloat, de hasznos, jobban preferálom, mint az MS Office-t, jobb a hagyományos, nem ribbonos UI benne, meg jobb formázási-tipográfiai támogatása van, de inkább csak úgy hozta a sors, hogy nincs rá szükségem, így az évek során azon kaptam magam, hogy elfelejtettem az aktuális telepítésre feltenni.

The world runs on Excel spreadsheets. (Dylan Beattie)

Kicsit off: verziókövetés működik doc esetén?

A diplomatervemet Lyx-ben csináltam, rcs verziókövetéssel, ezért kérdezem, vagy inkább javaslom.

Debian - The "What?!" starts not!
http://nyizsa.blogspot.com

Nem tudok róla, hogy alapból lenne, de ha van is, maximum csak valami infót ad a verzióról. Visszaállni, vagy a verziók között ide-oda váltani csak akkor tudsz, ha ahogy írtad, olyan szövegszerkesztőt használsz, amihez van normális verziókezelő.

Nem véletlen, hogy a Ms a vállalati környezetben a Sharepointot ajánlgatja fájlszerver helyett, mert a SP pótolja az egyébként csilliárd feature-rel teletömött Ms Office olyan aprócska hiányosságait, mint például egy normális verziókezelés, vagy azonos dokumentumon közös munka. Hiába van benne ezer éve a közös munka opció, ha sima fájlszerveren osztod meg a doksit, előbb-utóbb a fájl használhatatlan lesz, vagy csak simán felülcsapják egymást a konkurens verziók.

Van még néhány linuxos progi, ami kezeli a doc formátumot. AbiWord, Calligra Suite, OnlyOffice, ilyesmik. Meg lehet próbálni azokkal is megnyitni, hátha valami eredményre jutsz.

Próbáltad Google Docs-ban is megnyitni?

Minden hulla a Mount Everesten valamikor egy nagyon motivált ember volt.

Szerkesztve: 2022. 04. 30., szo – 13:55

Nem írtad a környezetet. Linux? Windows?
A LibO is létrehoz ideiglenes fájlt a háttérben mikor megnyitsz egy dokumentumot, amit mentés után töröl. Windows-on azt a könyvtárat ahol a doc fájlod volt, ellenőriztess le például egy Recuva-val. Ha szerencséd van, egy korábbi ideiglenes fájlból tudsz rekonstruálni egy korábbi állapotot. Linux-on ugyanígy például a photorec, vagy r-studio (https://www.r-studio.com/data_recovery_linux/). Az r-studio-ból win és linux változat is létezik.

Esetleg nyisd meg a doc fájlt a LibO egy újabb változatával, hátha...

Jó lett volna, ha azt a fájlrendszert amire dolgoztál, a hiba felfedezése után már nem írtad volna...

Végül mi lett az eredmény. Menyitotta valami? Hex viewerrel mi látszik a fájlból? Utóbbi azért lenne jobb, mint az OpenOffice meg az Abiword, mert a hex viewer low level szinten mutatja a karaktereket, nem néz formázást, meg megjeleníti a meg nem jeleníthető karaktereket is. Csak azért kérdem, mert valószínű, hogy a sérült doc fájlból is ki lehet nyerni azért ezt-azt, kellene lenniük benne felismerhető karakterláncoknak.

The world runs on Excel spreadsheets. (Dylan Beattie)

Nem tudom, ismeri-e meg valaki az AbiWord-ot. Nagyon kellemes igenytelen allat. A TC mellett tartom egy pendrive-on, mert mar tobbszor segitett. Serult dokumentum megnyitasaban is. Se az MS se a Libre nem boldogult vele, az Abi meg siman megnyitotta.

Egy esetben a felhasznalo, egy csomo (30-40) fullHD printscreen-t Rakott a docba. Jo otletnek tunt szamara... Hagyjuk... Se a Word se a Writer nem boldogult vele. Vegul az Abi nyitotta meg, es tudtam kiszedegetni belole a kepeket minosegvesztes nelkul....

Egy probat talan ez is meger amikor valami nagyon kell...

Ami egy példányban van meg - az nincs meg/nem fontos...

Ez alapvetően igaz, de a topikbeli eset annyiból speciális, hogy azon nem segített volna egy backup. Előfordul ugyanis, hogy a Word felülcsapja, rosszul ír rá a fájlra, ami lehet olyan friss, hogy az időszaki mentésben sem szerepel még, hacsak nem 1 percenként készül.

The world runs on Excel spreadsheets. (Dylan Beattie)