<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <meta http-equiv="Content-Type" content="$HTMLDocType" /> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>CoolCleveland.com - PmWiki - Backup and Restore</title> <link href='https://wiki.coolcleveland.com/wiki/pub/skins/triad/css/pm-core.css' rel='stylesheet' type='text/css' /> <!--HTMLHeader--><style type='text/css'><!-- span.anchor { float: left; font-size: 10px; margin-left: -10px; width: 10px; position:relative; top:-0.1em; text-align: center; } span.anchor a { text-decoration: none; } span.anchor a:hover { text-decoration: underline; } ol.toc { text-indent:-20px; list-style: none; } ol.toc ol.toc { text-indent:-40px; } div.tocfloat { font-size: smaller; margin-bottom: 10px; border-top: 1px dotted #555555; border-bottom: 1px dotted #555555; padding-top: 5px; padding-bottom: 5px; width: 38%; float: right; margin-left: 10px; clear: right; margin-right:-13px; padding-right: 13px; padding-left: 13px; background-color: #eeeeee; } div.toc { font-size: smaller; padding: 4px; border: 1px dotted #cccccc; background: #f7f7f7; margin-bottom: 10px; } #left-box { width: 170px; } #right-box { width: 170px; } --></style><script type="text/javascript"> function toggle(obj) { var elstyle = document.getElementById(obj).style; var text = document.getElementById(obj + "tog"); if (elstyle.display == 'none') { elstyle.display = 'block'; text.innerHTML = "hide"; } else { elstyle.display = 'none'; text.innerHTML = "show"; } } </script> <meta name='robots' content='noindex,nofollow' /> <script type='text/javascript' > var fontSizeDefault = 90; var increment = 10; var cookieName = 'setfontsize'; var fsLabel = 'Text Size'; var fsBigger = 'bigger'; var fsNormal = 'default'; var fsSmaller = 'smaller'; </script> <script type='text/javascript' src='https://wiki.coolcleveland.com/wiki/pub/skins/triad/fontsizer.js'></script> <script type='text/javascript' > var toggleCookies = '1'; var lcookie = 'triad_setLshow'; var rcookie = 'triad_setRshow'; var lshow = '1'; var rshow = '1'; var show = 'Show'; var hide = 'Hide'; var lwidth = '170px'; var rwidth = '170px'; </script> <script type='text/javascript' src='https://wiki.coolcleveland.com/wiki/pub/skins/triad/togglebars.js'></script> <link href='https://wiki.coolcleveland.com/wiki/pub/skins/triad/css/layout-triad.css' rel='stylesheet' type='text/css' /> <link href='https://wiki.coolcleveland.com/wiki/pub/skins/triad/css/layout-main.css' rel='stylesheet' type='text/css' /> <link href='https://wiki.coolcleveland.com/wiki/pub/skins/triad/css/layout-print.css' rel='stylesheet' type='text/css' media='print' /> <link href='https://wiki.coolcleveland.com/wiki/pub/skins/triad/css/font-verdana.css' rel='stylesheet' type='text/css' media='screen' /> <link href='https://wiki.coolcleveland.com/wiki/pub/skins/triad/css/c-white.css' rel='stylesheet' type='text/css' media='screen' /> <script type="text/javascript" src="https://wiki.coolcleveland.com/wiki/pub/js/coolcleveland.js"></script> <link rel="stylesheet" href="https://wiki.coolcleveland.com/wiki/pub/css/user_management.css" type="text/css" /> </head> <body > <script type='text/javascript' ><!-- document.cookie = 'javascript=1; path=/'; if (fontSize) { fontSize.fontSizeInit();} // document.write("<a href='#'></a >"); --></script> <table id="outer-box" border="0" cellspacing="0" cellpadding="0" > <tr> <td id="header-box" colspan="3" valign="top"> <!--PageHeaderFmt--> <div id='header' class='pageheader'><div class='rfloat' > <form class='wikisearch' action='https://wiki.coolcleveland.com/wiki/PmWiki/BackupAndRestore' method='get'><div><input type='text' name='q' value='Search' class='inputbox searchbox' size='18' onfocus="preval=this.value; this.value=''; " /> <input type='submit' class='inputbutton searchbutton' value='Go' /><input type='hidden' name='focus' value='on' /><input type='hidden' name='action' value='search' /></div></form> <span style='font-size:83%'> <script type='text/javascript' > <!-- if (fsinit==1) document.write(fontSize.allLinks); else if (fontSize) { fontSize.fontSizeInit(); document.write(fontSize.allLinks); } --></script> </span> </div><div class='lfloat' > <p><span style='color: maroon;'><big><strong><a style='color: maroon' class='wikilink' href='https://wiki.coolcleveland.com/wiki/Sandbox/HomePage'>CoolCleveland Sandbox</a></strong></big></span> </p></div> <div class="clearer"><!-- this is a clearer div --></div> </div> <!--/PageHeaderFmt--> <!--PageTopMenuFmt--> <div id="topnavbox"> <div id="topnav" class="nav"> <div id="toggleleft"> <script type='text/javascript' ><!-- if (toggleLeft) document.write("<input name='lb' type='button' class='togglebox' value='Hide ↓' onclick='toggleLeft()' />") --></script> </div> <div id="toggleright"><script type='text/javascript' ><!-- if (toggleRight) document.write("<input name='rb' type='button' class='togglebox' value='↓ Hide' onclick='toggleRight()' />") --></script> </div> <div class='lnav' > </div> <div class='rnav' > <ul><li><big><a accesskey='e' rel='nofollow' class='wikilink' href='https://wiki.coolcleveland.com/wiki/PmWiki/BackupAndRestore?action=edit'>Edit</a></big> </li><li><big><a accesskey='ak_htmlt' rel='nofollow' class='wikilink' href='https://wiki.coolcleveland.com/wiki/PmWiki/BackupAndRestore?type=htmlsource'>HTML</a></big> </li><li><big><a accesskey='ak_attr' rel='nofollow' class='wikilink' href='https://wiki.coolcleveland.com/wiki/PmWiki/BackupAndRestore?action=attr'>Attr</a></big> </li><li><big><a accesskey='ak_attr' rel='nofollow' class='wikilink' href='https://wiki.coolcleveland.com/wiki/PmWiki/GroupAttributes?action=attr'>GroupAttr</a></big> </li><li><big><a accesskey='h' rel='nofollow' class='wikilink' href='https://wiki.coolcleveland.com/wiki/PmWiki/BackupAndRestore?action=diff'>History</a></big> </li><li><big><a accesskey='c' class='wikilink' href='https://wiki.coolcleveland.com/wiki/PmWiki/RecentChanges'>Recent Changes</a></big> </li></ul></div> </div></div> <!--/PageTopMenuFmt--> </td> </tr> <tr> <!--PageLeftFmt--> <td id="left-box" valign="top"> <div id='sidebar'> <div id='sidebarpage'><p><a class='wikilink' href='https://wiki.coolcleveland.com/wiki/Sandbox/Admin'>Sandbox Admin</a><br /><br /> <strong><span style='font-size:144%'><a class='wikilink' href='https://wiki.coolcleveland.com/wiki/Sandbox/ThomasMulready'>TM</a></span></strong><br /><br /><br /> <strong><span style='font-size:144%'><a class='wikilink' href='https://wiki.coolcleveland.com/wiki/Sandbox/Podcasts'>PODCASTS</a></span></strong><br /><br /><br /> <strong><span style='font-size:144%'><a class='wikilink' href='https://wiki.coolcleveland.com/wiki/Sandbox/Jenna'>Jenna</a></span></strong><br /><br /><br /> <strong><span style='font-size:144%'><a class='wikilink' href='https://wiki.coolcleveland.com/wiki/Sandbox/Stephan'>Stephan</a></span></strong><br /><br /><br /> <strong><span style='font-size:144%'><a class='wikilink' href='https://wiki.coolcleveland.com/wiki/Sandbox/ThomasMulreadyAds'>ADS</a></span></strong><br /><br /><br /> <strong><span style='font-size:144%'><a class='wikilink' href='https://wiki.coolcleveland.com/wiki/Sandbox/NewsletterSandbox'>ISSUES</a></span></strong><br /><br /><br /> <strong><span style='font-size:144%'><a class='wikilink' href='https://wiki.coolcleveland.com/wiki/Sandbox/CurrentIndex'>CURRENT</a></span></strong><br /><br /><br /><br /> </p> <p class='vspace'><span style='font-size:69%'><a class='wikilink' href='https://wiki.coolcleveland.com/wiki/Site/SideBar?action=edit'>Edit this Menu</a></span> </p> </div> <div id="sidebarfooter"> <p><a class='wikilink' href='https://wiki.coolcleveland.com/wiki/PmWiki/TriadSkin'>TriadSkin</a><br />powered by <a class='wikilink' href='https://wiki.coolcleveland.com/wiki/PmWiki/PmWiki'>PmWiki</a> </p> </div> </div> </td><!-- end div left --> <!--/PageLeftFmt--> <td id="center-box" valign="top"> <div id="contentbox"> <!--PageTitleFmt--> <div id= 'titlebarbox'> <div id='titlebar' > <div class='pagegroup' > <p><a class='wikilink' href='https://wiki.coolcleveland.com/wiki/PmWiki/PmWiki'>PmWiki</a> </p></div><div class='pagetitle' style='text-align: center;' > <h1></h1> </div> </div> </div> <!--/PageTitleFmt--> <div id='content'> <!--PageText--> <div id='wikitext'> <p> <a name='trailstart' id='trailstart'></a> </p><div style='clear:right; float:right; font-size:smaller; background-color:#eee;' > <p><span class='wikitrail'>< <a class='wikilink' href='https://wiki.coolcleveland.com/wiki/PmWiki/Upgrades'>Upgrades</a> | <a class='createlinktext' rel='nofollow' href='https://wiki.coolcleveland.com/wiki/PmWiki/Documentation?action=edit'>index(#trailstart#trailend)|+</a><a rel='nofollow' class='createlink' href='https://wiki.coolcleveland.com/wiki/PmWiki/Documentation?action=edit'>?</a> | <a class='wikilink' href='https://wiki.coolcleveland.com/wiki/PmWiki/Uploads'>administration</a> ></span> </p></div> <div style='clear:right;' > </div> <p class='vspace'>This page has some background information on making backups and explains some basic *nix backup and restore procedures. </p> <div class='vspace'></div><h2>Introduction</h2> <p>Your wiki installation contains some unique data in the following directories: </p> <div class='vspace'></div><pre> local/ Local configuration scripts cookbook/ Recipes obtained from the <a class='urllink' href='http://www.pmwiki.org/wiki/Cookbook/Cookbook' rel='nofollow'>Cookbook</a> pub/ Publicly accessible files wiki.d/ Wiki pages uploads/ <a class='createlinktext' rel='nofollow' href='https://wiki.coolcleveland.com/wiki/PmWiki/UploadsUploaded?action=edit'>files</a><a rel='nofollow' class='createlink' href='https://wiki.coolcleveland.com/wiki/PmWiki/UploadsUploaded?action=edit'>?</a> (attachments) </pre><p class='vspace'>A good backup plan will include periodically archiving these directories — or at bare minimum <code class='escaped'>local/</code> and <code class='escaped'>wiki.d/</code>. Good practice dictates keeping your backup archives on a separate machine. </p> <div class='vspace'></div><h2>Simple Backup and Restore (*nix)</h2> <p>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. </p> <div class='vspace'></div><h3>Making a Backup Archive</h3> <p>The 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. </p> <div class='vspace'></div><div class='indent'><pre class='escaped'> tar -zcvf ~/wiki-backup-`date +%Y%m`.tar.gz wiki/ </pre> </div><p class='vspace'><a name='restore' id='restore'></a> </p><h3>Restoring the Backup Archive</h3> <h4>Simple Method</h4> <p>Your site can be restored and running in under 30 seconds with </p> <div class='vspace'></div><div class='indent'><pre class='escaped'> tar -zxvf ~/wiki-backup-200512.tar.gz find wiki/uploads/ -type d |xargs chmod 777 find wiki/wiki.d/ -type d |xargs chmod 777 </pre> </div><div class='vspace'></div><h4>A Slightly-More-Secure Method</h4> <p>The simple restore commands above will give you world-writable files and directories. You can avoid world-writable permissions by letting <span class="wikiword"><a class='wikilink' href='https://wiki.coolcleveland.com/wiki/PmWiki/PmWiki'>Pm Wiki</a></span> create directories with the proper attributes (ownership and permissions) for you. </p> <p class='vspace'>Start with </p> <div class='vspace'></div><div class='indent'><pre class='escaped'> tar -zxvf ~/wiki-backup-200512.tar.gz rm -rf wiki/wiki.d rm -rf uploads chmod 2777 wiki/ </pre> </div><p class='vspace'>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. </p> <p class='vspace'>Finish your installation with </p> <div class='vspace'></div><div class='indent'><pre class='escaped'> chmod 755 wiki/ tar -zxvf ~/wiki-backup-200512.tar.gz </pre> </div><div class='vspace'></div><h3>Details</h3> <p>The 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. </p> <p class='vspace'>Your site will only have an uploads/ directory if uploads are enabled. </p> <p class='vspace'>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 (<code class='escaped'>`date +%Y%m%d`</code> will get you YYYYMMDD). Be wary of space limitations if you have a large uploads/ directory. </p> <div class='vspace'></div><h2>See Also</h2> <ul><li>A <a class='urllink' href='http://thread.gmane.org/gmane.comp.web.wiki.pmwiki.user/20317|' rel='nofollow'>thread</a> [gmane.org] on the pmwiki-users mailing list. </li><li>A <a class='urllink' href='http://www.pmwiki.org/wiki/Cookbook/Backup' rel='nofollow'>Pages</a> recipe in the cookbook. </li><li>A <a class='urllink' href='http://www.pmwiki.org/wiki/Cookbook/Backup' rel='nofollow'>HTML Zip</a> recipe in the cookbook. </li></ul><div class='vspace'></div><h2>Miscellaneous</h2> <div class='vspace'></div><h2>Backup via FTP</h2> <p>Download and install a ftp client like <a class='urllink' href='http://filezilla-project.org/download.php?type=client|Filezilla' rel='nofollow'>http://filezilla-project.org/download.php?type=client|Filezilla</a> </p> <div class='vspace'></div><ol><li>Using the ftp client connect to the server where you host pmWiki using <ol><li>the IP address (ex: 123.234.56.67) or the ftp name (ex: ftp.myhost.com) </li><li>supply your account name (ex: mylogin) and password (ex: myp4ssw0rd) </li></ol></li><li>Move to your pmWiki directory (ex: <code>/usr/mylogin/web/wiki/</code> or <code>/tahi/public_html/pmwiki</code> ) </li><li>Select the folder you want to backup as explained before (probably either only the data or the whole wiki directory) <ul><li>for data you will want to backup both the directories <ul><li><code>wiki.d</code> for user page data </li><li><code>pmwikiuploads</code> (or <code>uploads</code>) for your attachments (uploads) </li></ul></li><li>for system you will want, at a minimum, to backup both the directories <ul><li><code>local</code> for configuration data </li><li><code>pub</code> for local CSS and skins customisations </li></ul></li></ul></li><li>Download them to a local folder </li><li>Use <a class='urllink' href='http://www.7-zip.org/' rel='nofollow'>| 7zip</a> or a similar software to build an archive of this backup </li></ol><p class='vspace'>You can also very easily sync your FTP directories with your hard disc via this command line: </p><div class='indent'> <code class='escaped'> wget -nv -np -m ftp://user:password@ftp.yourhost.net/ </code> </div><p><small>Download <a class='urllink' href='http://gnuwin32.sourceforge.net/packages/wget.htm' rel='nofollow'>| Wget for Windows</a> (other systems normally have it installed).</small> </p> <p class='vspace'>Alternatively, you can also mirror your FTP directories with lftp: </p><div class='indent'><code class='escaped'> lftp -u your_user_name,your_password -e "mirror --verbose /wiki.d /path/to/local/folder" ftp://your_host </code> </div><p>(this will mirror only the /wiki.d folder, replace with / to mirror everything) </p> <p class='vspace'><a name='rsync' id='rsync'></a> </p><h2>Using rsync</h2> <p>See <a class='urllink' href='http://www.pmwiki.org/wiki/Cookbook/BackupWithRsync' rel='nofollow'>Cookbook:BackupWithRsync</a> and <a class='urllink' href='http://www.pmwiki.org/wiki/Cookbook/TwoWayMirroringWithRsync' rel='nofollow'>Cookbook:TwoWayMirroringWithRsync</a>. </p><div style='clear:right; float:right; font-size:smaller; background-color:#eee;' > <p><span class='wikitrail'>< <a class='wikilink' href='https://wiki.coolcleveland.com/wiki/PmWiki/Upgrades'>Upgrades</a> | <a class='createlinktext' rel='nofollow' href='https://wiki.coolcleveland.com/wiki/PmWiki/Documentation?action=edit'>index(#trailstart#trailend)|+</a><a rel='nofollow' class='createlink' href='https://wiki.coolcleveland.com/wiki/PmWiki/Documentation?action=edit'>?</a> | <a class='wikilink' href='https://wiki.coolcleveland.com/wiki/PmWiki/Uploads'>administration</a> ></span> </p></div> <p><a name='trailend' id='trailend'></a> <a class='createlinktext' rel='nofollow' href='https://wiki.coolcleveland.com/wiki/PmWiki/LtLt?action=edit'><<</a><a rel='nofollow' class='createlink' href='https://wiki.coolcleveland.com/wiki/PmWiki/LtLt?action=edit'>?</a> </p><div style='background-color: #ffe; border-top: 1px solid black; font-size: .8em;' > <p>This page may have <span class='commentout-pmwikiorg'> a more recent version on <a class='urllink' href='http://www.pmwiki.org' rel='nofollow'>pmwiki.org</a>: <a class='urllink' href='http://www.pmwiki.org/wiki/PmWiki/BackupAndRestore' rel='nofollow'>PmWiki:BackupAndRestore</a>, and </span> a talk page: <a class='urllink' href='http://www.pmwiki.org/wiki/PmWiki/BackupAndRestore-Talk' rel='nofollow'>PmWiki:BackupAndRestore-Talk</a>. </p></div> </div> <div class="clearer"><!-- this is a clearer div --></div> </div> </div><!-- end div contentbox --> <!--PageFootMenuFmt--> <div id ='footnavbox'> <div id='footnav' class='navbuttons'><ul><li><a rel='nofollow' class='wikilink' href='https://wiki.coolcleveland.com/wiki/PmWiki/BackupAndRestore?action=edit'>Edit</a> </li><li><a rel='nofollow' class='wikilink' href='https://wiki.coolcleveland.com/wiki/PmWiki/BackupAndRestore?action=diff'>Page History</a> </li><li><a accesskey='ak_source' rel='nofollow' class='wikilink' href='https://wiki.coolcleveland.com/wiki/PmWiki/BackupAndRestore?action=source'>Source</a> </li><li><a accesskey='ak_upload' rel='nofollow' class='wikilink' href='https://wiki.coolcleveland.com/wiki/PmWiki/BackupAndRestore?action=upload'>Attach File</a> </li><li><a rel='nofollow' class='wikilink' href='https://wiki.coolcleveland.com/wiki/Site/Search?q=link=PmWiki.BackupAndRestore'>Backlinks</a> </li><li><a rel='nofollow' class='wikilink' href='https://wiki.coolcleveland.com/wiki/Site/Search?q=PmWiki/'>List Group</a> </li></ul><div class='vspace'></div><div class='indent'><em>Page last modified on August 02, 2017, at 07:37 PM</em> </div> </div> </div> <!--/PageFootMenuFmt--> </td><!-- end div center --> <!--PageRightFmt--> <td id="right-box" valign="top"> <div id="rightbar"><p><br /> </p><ul><li><a class='urllink' href='http://www.coolcleveland.com/' rel='nofollow'>Home</a> </li><li><a class='wikilink' href='https://wiki.coolcleveland.com/wiki/Sandbox/Admin'>Admin</a> </li><li><a class='urllink' href='https://wiki.coolcleveland.com/wiki/AdminPanel/AdminPanel' rel='nofollow'>Admin Panel</a> </li><li><a class='wikilink' href='https://wiki.coolcleveland.com/wiki/Main/UserSettings'>UserSettings</a> </li><li><a class='wikilink' href='https://wiki.coolcleveland.com/wiki/Main/UserAccount'>UserAccount</a> </li></ul><p class='vspace'><span class='rfloat'> </span> <small><a class='wikilink' href='https://wiki.coolcleveland.com/wiki/Site/RightBar?action=edit'>Edit this menu</a></small> </p> <div class='vspace'></div> </div> </td><!-- end div right --> <!--/PageRightFmt--> </tr> <tr> <!--PageFooterFmt--> <td id="footer-box" colspan="3" valign="top"> <div id="footer"><p style='text-align: center;'><a class='createlinktext' rel='nofollow' href='https://wiki.coolcleveland.com/wiki/Site/Triad-ConfigurationSkin?action=edit'>config</a><a rel='nofollow' class='createlink' href='https://wiki.coolcleveland.com/wiki/Site/Triad-ConfigurationSkin?action=edit'>?</a> <em>** pmwiki-2.2.107 **</em> </p> </div> </td> <!--/PageFooterFmt--> </tr> </table><!-- end div outer --> <!--HTMLFooter--> </body> </html>