Dude Malformed db repair

Avui es d’aquells dies que per el matí m’he espantat… resulta que al meu dude que mantinc i faig créixer fa més de 10 anys, s’ha parat i no podia accedir-hi de cap manera. Donava error “Database disk image is malformed” com el tinc en una virtual de proxmox amb backups diaris, he recuperat la d’ahir, posat en marxa i ha tornat a funcionar diguem que durant 5 minuts…. llavors… patapam !! suor freda i parat altre vegada.

Llegint he vist que es un error frequent i m’he posat mans a la obra per reparar-ho.

Resulta que el dude.db m’ocupava prop de 300 megues entre la configuració de la xarxa i els històrics.

Aviso…. perquè perdreu els històrics de tràfics i demés…. però al final tindreu tot com ho tenieu que crec que es el més important per tal de seguir monitorant la vostra xarxa i rebent avisos, etc…

Bàsicament cal baixar-vos el fitxer dude.db, instal.lar-vos sqlite3 (sudo apt-get install sqlite3) i aneu seguint les passes

  • execute <echo .dump | sqlite3.exe dude.db > dude.sql> (export dude.db into sql text file)
  • edit dude.sql file with notepad++
  • save all lines starting with <INSERT INTO “objs”> into a new textfile <objs.sql>
  • in user folder delete dude.db , dude.db-journal and dude.view files
  • start dude (new empty dude.db file will be created)
  • close dude and copy new dude.db file into sqlite3 folder
  • start sqlite3 and execute <.open dude.db>
  • execute <pragma integrity_check;> (check dude.db)
  • with <delete from objs;> delete entries in objs
  • with <.read objs.sql> data from objs.sql will be importet into dude.db
  • <.quit> to close sqlite3
  • put new dude.db file from sqlite3 folder back into user directory
  • in user folder, delete any existing <dude.db-journal> and <dude.view> files
  • start dude and service. all settings will be back, just without history values
  • as soon, everithing works well, do a backup export out of dude. The new file should be much smaller in size

Al final m’ha ocupat tansols 5 megues i tinc tot el dude perfectament com abans, però sense històrics (per això ja tinc el cacti)

Salut !!