HOW TO USE THE IMPORTER/EXPORTER -------------------------------- Citadel/UX now contains an importer/exporter module, affectionaly known as the "Art Vandelay" module (a not-so-obscure Seinfeld reference). It allows you to export the entire contents of your Citadel databases to a flat file, which may then be imported on another system. (This procedure is also known as "dump and load" to some database gurus.) Why would you want to do this? Here are some scenarios: -> You are moving a Citadel installation to another computer, which uses a different CPU. Since Citadel stores data in an architecture-dependent format, the data files wouldn't work on the new computer as-is. -> Your computer crashed, lost power, etc. and you suspect that your databases have become corrupted. -> You want to switch to a different back-end data store. (For example, from GDBM to Berkeley DB) So ... how do we work this magic? Follow these steps *exactly* as documented, and you should be able to do it all with very little trouble. 1. This should be obvious, but it's still worth mentioning: MAKE SURE YOU TAKE A BACKUP OF EVERYTHING BEFORE YOU START THIS!! You're performing a major operation here. Don't risk it. 2. First, get all the users logged off from your system. Disconnect it from the network if possible. You don't want anyone logging in while you're doing this. 3. Log on as root, or some other user that has read/write access to all relevant files. 4. Go to the directory that Citadel is installed in. For example, issue a command like "cd /usr/local/citadel" 5. Export the databases with the following command: ./sendcommand "ARTV export" >exported.dat This command may run for a while. On a very large system it could take an hour or more. Please be patient! 6. When the export completes, check to make sure that "exported.dat" exists and has some data in it. (Type "ls -l exported.dat") 7. Shut down the Citadel server. If you have a line in /etc/inittab that reads like this: c1:2345:respawn:/usr/local/citadel/citserver -h/usr/local/citadel ...then you should change the "respawn" to "off" and then type "/sbin/init q" to make the changes take effect. 8. Now it's time to delete your current binary databases. Type: rm citadel.config citadel.control data/*.gdbm 9. If you're moving Citadel to another computer, you should move the *entire* directory over at this time. exported.dat only contains the information that was in the binary databases. Information which was stored in portable formats doesn't need to be exported/imported, so you must bring it all over in its current form. 10. Now get Citadel running on the new computer (or whatever). Run setup (documented in install.txt) and turn the service back on (from /etc/inittab) but DO NOT log in. 11. As root, run the import command: ./sendcommand "ARTV import"