Nl:Het herstellen van een corrupt gegevensbestand

From Gramps
Revision as of 15:39, 23 June 2011 by Romjerome (talk | contribs) (Kunnen jullie dat niet oplossen ?)
Jump to: navigation, search


Dit is een poging om uit te leggen hoe een gegevensbestand corrupt wordt. Hoe kan je je gegevens herstellen en hoe voorkom je dat je gegevens corrupt worden.


Waarom worden de gegevens corrupt?

De voornaamste oorzaak is het verplaatsen van een grdb-bestand. Indien u dit bestand verplaatst naar een andere map, de bestandsnaam verandert, het bestand kopiëert naar een ander bestand, het bestand verplaatst naar een andere computer of een andere gebruiker kunnen de gegevens 'corrupt' worden.

Hoe komt dit?

Het grdb-bestand heeft een gegevensbestandsomgeving nodig -- dit is een map met log-bestanden, slot-bestanden, tijdelijke bestanden enz.

De huidige stabiele GRAMPS-versie slaat deze bestandsomgeving op in een ~/.gramps/env boomstruktuur.

Stel dat u het grdb-bestand /home/gebruiker/genealogie/MijnGegevens.grdb noemt, dan is de gegevensbestandsomgeving in de /home/gebruiker/.gramps/env/home/gebruiker/genealogie/MijnGegevens.grdb map te vinden.

Indien u dus het gegevensbestand verplaatst, kopiëert of herbenoemt zullen de gegevens wel verplaatst worden, maar niet de opmgeving. Zo geraken de gegevens corrupt.

Wat moet ik nu doen?

Dat hangt er van af of u nog over de correcte omgeving van het gegegevensbestand beschikt. Indien u enekel een bestand kopieerde, bestaat de oorspronkelijke omgeving waarschijnlijk nog. Indien u echter het gegevensbestand zelf veranderd hebt, is de kans groot dat de omgeving ook veranderd werd. Hebt u echter de volledige .gramps verwijderd, dan is de hele omgeving verloren.

Dus afhankelijk van de situatie moet u onderstaande doen.

De omgeving bestaat nog

Hebt u nog steeds de omgevingsmap voor het bestand:

Voorbeeld
U kopieerde /home/user/genealogie/MijnGegevens.grdb naar /home/user/genealogie/backup/BackupData.grdb en het nieuwe bestand werkt niet.
Oplossing
Kopieer de /home/user/.gramps/env/home/user/genealogie/MijnGegevens.grdb map naar /home/user/.gramps/env/home/user/genealogie/backup/BackupData.grdb en het probleem zou verholpen moeten zijn.


De omgeving is verloren

Hebt u de originele omgeving van het bestand niet meer kan u proberen de Berkeley DB gereedschappen te gebruiken. Dit is echter afhankelijk van uw computersysteem. Deze gereedschappen worden gestart met onder andere db_dump en db_load, db41_dump en db41_load, db4.4_dump en db4.4_load. Er zijn nog mogelijkheden, maar er moet steeds een dump en een load gereedschap zijn en de versie van de gereedschappen moet 4 of hoger zijn.

Wat u eigenlijk doet met dump is dat u het gegevensbestand opslaat in een tekstbestand. Van dit tekstbestand wordt dan een nieuwe grdb>/code>bestand aangemaakt:


   $ db4.4_dump BackupData.grdb > eenbestand.txt
   $ db4.4_load nieuwbestand.grdb < eenbestand.txt

kruis dan uw vingers en hoop dat nieuwbestand.grdb kan geopend worden in gramps.

Hoe een corrupt bestand voorkomen?

De hoofdoorzaak is het verplaatsen van het gegevensbestand. Maar er zijn blijkbaar nog een paar andere mogelijke oorzaken, die echter niet zo vaak voorkomen of die we nog niet volledig begrijpen. Daarom is voorkomen beter dan herstellen.


Daarom is het belangrijk om uw gegevens te backuppen. Deze reservekopieen gebeuren in het XML-formaat (het .gramps formaat). Vergeet niet uit te schakelen privacy filters ... XML is leesbaar door mens en machine. Het is bovendien vrij klein en volledig. Doe deze zaken dan ook regelmatig

  1. Exporteer van tijd tot tijd naar XML zeker wanneer u vele aanpassingen deed.
  2. Exporteer naar XML voor u grote wijzigingen aanbrengt, zoals het importeren van nieuwe gegevens vanuit bv. GEDCOM in een bestaand gegevensbestand. Ofindien u gegevens gaat combineren die de oorspronkelijk gegevens sterk zullen wijzigen
  3. Exporteer naar XML voor u de grampsversie opwaardeerd. Natuurlijk doet u dit met de oude versie voor u de nieuwere versie installeerd!
  4. Exporteer naar XML voor u uw OS opwaardeerd.

Gebruik ook het XML-formaat voor gelijk welke gegevensmigratie naar een andere computer, doorsturen van uw gegevens naar uw grootmoeder, kopieren van gegevens naar een andere gebruiker op dezelfde computer.... . In al deze gevallen gebruikt u het XML-formaat.

Kunnen jullie dat niet oplossen ?

Vanaf GRAMPS versie 3.x werd het bestandssysteem volledig herwerkt en wordt nu gebruik gemaakt van de eenvoudigere Familiestamboombeheerder.


Maar de fout DB_RUNRECOVERY kan nog steeds optreden ! Indien dit gebeurd, kan u het volgende proberen:

gramps -l

Om de <doelmap> te vinden in ~/.gramps/grampsdb doet u

cp -a <doelmap> <reservemap>

Om het oude bestand te herstellen

cd /home/<user>/.gramps/grampsdb/<doelmap>
db4.6_recover -c