Forum archive
TKLBAM restore issues
Hi.
I'm close to finally going live my employer's new TKL Drupal 6 appliance on Amazon EC2 via the TurnKey Hub.
Everything with the TK Hub seems to be working great, but I decided to try a disaster recovery scenario and was disappointed by the result. I'm hoping that I'm simply missing something.
I came up with the following recovery procedure for my boss, in case I'm not available when disaster strikes. Am I missing anything here? I included step three because, without it, Drupal keeps trying to launch its installation procedure. I'm confused as to why this happens if all original data is supposedly restored.
- apt-get update
- apt-get install tklbam
- tklbam-init {API key}
- tklbam-restore 1
- chmod +x /etc/cron.daily/tklbam-backup
- reboot
Post recovery, the Drupal site looks fine. Once I login with the administrator account, I see the following errors which are fixed by browsing to /admin/settings/performance and clicking the "Clear cached data" button. Once again, shouldn't the data restore replace the cached data, along with everything else in the database? Why would I need to do this if all data is being restored?
Is it possible that not all modifications to the TKL appliance are being captured during backup? The Drupal core version has also reverted to 6.14, but it was 6.19 before the initial TKLBAM backup. What am I missing?
- warning: include_once(user.pages.inc) [function.include-once]: failed to open stream: No such file or directory in /usr/share/drupal6/includes/theme.inc on line 613.
- warning: include_once() [function.include]: Failed opening 'user.pages.inc' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /usr/share/drupal6/includes/theme.inc on line 613.
- warning: include_once(user.pages.inc) [function.include-once]: failed to open stream: No such file or directory in /usr/share/drupal6/includes/theme.inc on line 613.
- warning: include_once() [function.include]: Failed opening 'user.pages.inc' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /usr/share/drupal6/includes/theme.inc on line 613.
- warning: include_once(user.pages.inc) [function.include-once]: failed to open stream: No such file or directory in /usr/share/drupal6/includes/theme.inc on line 613.
- warning: include_once() [function.include]: Failed opening 'user.pages.inc' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /usr/share/drupal6/includes/theme.inc on line 613.
Thank you for any suggestions,
-Derek
I think what you're missing is the concept of what directories in the appliance you are "allowed" to manipulate directly (e.g., anything in /etc, /usr/local, /var/www, etc.), vs what directories in the appliance are the responsibility of package management - touching these is naughty (e.g,. /usr/share). These "rules" aren't arbitrary, but are inherited from the Debian way of doing things. TKLBAM builds on these assumptions, so if you break them you will need to at least understand the consequences. I recommend you just don't break them.
In your case I'm guessing you installed your theme to the "wrong" place (e.g., /usr/share/drupal6/themes instead of /etc/drupal/6/sites/all/themes).
That didn't work because by default TKLBAM only backs up changes to directories that are not usually maintained by package management (e.g., apt-get) to avoid conflicts.
If you haven't done so already I recommend installing webmin-tklbam package:
That should make it easier to understand how TKLBAM's configuration works (e.g., which directories are backed up by default according to the profile for TurnKey Drupal6, etc.).To fix this problem, I recommend moving your theme on the backed up machine to the right location.
From the sound of it you also probably made the mistake of trying to overwrite files in the drupal6 Debian package by extracting a new Drupal6 tarball from upstream to the same location.
If you insist on maintaining drupal6 files directly rather than through package management add /usr/share/drupal6 to the overrides, but make sure you understand what this means. It's generally a bad idea to mess with files from package management as package upgrades will overwrite them. This is what /usr/local is for. It will be a bit more work, but if you really want to install Drupal6 from upstream, remove the drupal6 package (e.g., apt-get remove drupal6), and extract the tarball directly to /var/www.
Hope this helps!