As Coda is still an experimental system, the state of a Coda File System may sometimes get to the point where you will want to reinitialize all of the servers. Note that this is a fairly drastic step and should be treated as a last resort. It will typically take an entire day or more to perform and the system will be unavailable during that time. You will not be able to reintigrate after a reinitialization.
This chapter explains the steps necessary to reinitialize your system and restore your data on "clean" servers. The basic steps are as follows:
If the system is in a state that backups can be successfully run, we suggest running the backup.sh script to capture the most recent state. You may, however, use the tapes from your last successfule backup and skip this step. See Chapter XXX and backup (8) for more details on creating backups. You will need to create new dumplist files for the backups. If you include the volumes that you do not normally back up in the newly created dumplists, you will be able to restore those volumes rather than re-create their contents. See dumplist (5) for details on the format of these files. To create the dumplists, use the following steps:
Use rvmutl and rdsinit to initialize RVM. Unless you are reinitializing in order to change the size of the RVM heap, be sure to use the same sizes that you used previously. See section XXX for the details of initializing RVM.
Use createvol (8) and createvol_rep (8) to create all of the volumes that you backed up in section XXX.
First, restore the read only coda of the coda_root volume. This should have been backup up in section XXX. In section XXX, you should have created your coda_root.tmp volume. This will automatically be mounted when coda_root is restored. Next create a directory /coda/tmp/restore and use the volutil restore to restore each of the backup clones to /coda/tmp/restore. See the volutil (8) man page for more details on restoring the volumes.
Create a directory /coda/tmp/inited and mount all of the volumes created in XXX in this directory.
Run the script restorevolumes (8) to restore all of the volumes that were backed up in section XXX.
Use cfs rmmount to unmount all of the volumes in /coda/tmp/restored and /coda/tmp/inited. Then remove these directories. See the man page cfs (8) for more details on unmounting volumes.
You need to flush the client caches as they will not have the correct volume information anymore. Use the cfs flushcache command to do this.
After youve flushed the client caches the system is ready to run. Do some testing to make sure Coda is functioning correctly and allow the users back into the system.