PmWiki /
Backup and RestoreThis page has some background information on making backups and explains some basic *nix backup and restore procedures. IntroductionYour wiki installation contains some unique data in the following directories: local/ Local configuration scripts cookbook/ Recipes obtained from the Cookbook pub/ Publicly accessible files wiki.d/ Wiki pages uploads/ Uploaded files (attachments) A good backup plan will include periodically archiving these directories — or at bare minimum Simple Backup and Restore (*nix)When it comes to backup, simpler is better. Since the pmwiki distribution is very small (about 1/4 megabyte), it's simplest to just archive the distribution files along with the data. Making a Backup ArchiveThe following *nix command, executed from the parent directory of your wiki's directory, will put a complete backup archive of your site in your home directory. tar -zcvf ~/wiki-backup-`date +%Y%m`.tar.gz wiki/ Restoring the Backup ArchiveSimple MethodYour site can be restored and running in under 30 seconds with tar -zxvf ~/wiki-backup-200512.tar.gz find wiki/uploads/ -type d |xargs chmod 777 find wiki/wiki.d/ -type d |xargs chmod 777 A Slightly-More-Secure MethodThe simple restore commands above will give you world-writable files and directories. You can avoid world-writable permissions by letting PmWiki create directories with the proper attributes (ownership and permissions) for you. Start with tar -zxvf ~/wiki-backup-200512.tar.gz rm -rf wiki/wiki.d rm -rf uploads chmod 2777 wiki/ Now upload a file in each group that had uploads. If your site doesn't have uploads, just visit your site once so the wiki.d/ directory will be created. Finish your installation with chmod 755 wiki/ tar -zxvf ~/wiki-backup-200512.tar.gz DetailsThe commands on this page assume your site is in a directory called "wiki/". The test backup was made in December, 2005 so it's named accordingly. Your site will only have an uploads/ directory if uploads are enabled. The backup command uses a date stamp (YYYYMM) in the filename. If you automate the command via cron you'll wind up with monthly snapshots of your site. You can get a daily snapshot by appending %d to the date command ( MiscellaneousBackup via FTPDownload and install a ftp client like Filezilla
You can also very easily sync your FTP directories with your hard disc via this command line: wget -nv -np -m ftp://user:password@ftp.yourhost.net/
Download Wget for Windows (other systems normally have it installed). Alternatively, you can also mirror your FTP directories with lftp: lftp -u your_user_name,your_password -e "mirror --verbose /wiki.d /path/to/local/folder" ftp://your_host
(this will mirror only the /wiki.d folder, replace with / to mirror everything) Using rsyncSee Cookbook:BackupWithRsync and Cookbook:TwoWayMirroringWithRsync. See Also
This page may have a more recent version on pmwiki.org: PmWiki:BackupAndRestore, and a talk page: PmWiki:BackupAndRestore-Talk. |