Nikos's picture

Hi guys,

I am running the Joomla TKL app locally and I have linked it to our tunkey hub account and have successfully performed my frist backup - BTW:this is a crazy development advancement - what I call a 'game-changer!' :)

I have 2 questions -1. how is it that my first backup (initial) is only 2.1 MB in size when I've created a joomla-virtuemart site that is 380MB + in size - surely the initial backup routine backups up all the files that have been changed/added since the TKL application's creation - is not correct?

2. I have a TKL Joomla server running in the hub and would like to restore the backup that I have just created to that server instance - do I ssh into it and simply run the restore command?


Liraz Siri's picture

1) Yes, the backup is supposed to include all the files that have changed/added since installation BUT there's one exception - files in locations that are supposed to be maintained by package management. We usually don't touch those.

So you've probably just put your virtuemart files in a naughty file location and need to add a manual override to force TKLBAM to back up those files.

You can examine the logs (e.g., /var/log/tklbam-backup and /var/log/tklbam-restore) to see which files are being picked up by TKLBAM, but for best results I highly recommend you always test your backups to make sure they work. If you don't test, best to assume it doesn't work.

2) Yes, for a correctly configured backup, restoring is as easy as following the instructions in the Hub and executing in a shell the following command:

tklbam-restore YOUR-BACKUP-ID
You can also do that via the Webmin interface if you like.

Glad to hear you are digging TKL & TKLBAM!

Nikos's picture

Hi Liraz,

As I had simply copied all of my joomla-vm files all to a subdirectory within the /usr/share/joomla15 it is no surprise that they were not backed up. Could you please shed some light on what is the correct procedure to follow for creating a new Joomla site within the TKL joomla application?
I had posted up this question in the forum on yesterday but got no response - maybe you could provide a step through?
If you're also able to answer any questions on the APC side of things that too would be much appreciated! :)
I read your comment on a derek's TKLBAM issues ( where you mention how its important not to place folders in 'naughty' places however your reference was to Drupal themes - I would really appreciate some guidlines for porting a joomla site in my TKL joomla app & a definative list of directories not to touch.
Many thanks

Liraz Siri's picture

When a step by step guide is needed that's a user experience failure. We'd like everything to just work out of the box as a reasonable user might expect.

Unfortunately, Joomla is currently a special, rather obnoxious case as we packaged it ourselves and haven't done a good job of updating the packaging to play nice with TKLBAM. We had good intentions - to make updating Joomla easier via the package management system but we soon discovered it was a maintenance nightmare to keep track of Joomla. And now this. Most other web applications in the library just go to /var/www from an upstream tarball and that makes everything easier to understand. No special instructions needed. That's what we should be doing with Joomla as well.

Anyhow for now I recommend you just add the directory where you dumped your files, naughty or not, to the list of TKLBAM overrides. It will work.

FYI, which directories are backed up and which are not is defined in the profile for that specific appliance. The profile is downloaded by TKLBAM from the Hub to /var/lib/tklbam/profile. See the dirindex.conf file.

Alternatively, you can access this file via the Webmin module (advanced configuration -> overrides). Click on the 'backup profile' link.

Nikos's picture

Hi Liraz,

Thanks for your reply - I figured I would just have to go ahead and add my joomla site path to the TKLBAM overrides if I want it backed up.

On a related note - the Joomla TKL App's default path is /usr/share/joomla15 however I see there are appropriate apache configuration references in /etc/joomla15 (with appropriate symlinks from /etc/apache2/sites-enables --> /etc/apache2/sites-availble) & a blank configuration file in /etc/apache2/conf.d/joomla15.

As I would like to add a new joomla directory to /usr/share/ which would be the best practise to follow to set up apache configuration files similar to those in place for the default joomla15 site?

Liraz Siri's picture

I'm not sure I completely understand you but if you're going to add a new installation of Joomla I recommend putting it in /var/www and then configuring Apache appropriately. It's bad form to put files in /usr/share as that is where the package manager usually maintains files and that could lead to unintended conflicts.

In summary...

Short answer: put webapps in /var/www.

Long answer: consult the Debian Filesystem Hierarchy Standard. We try to.

Liraz Siri's picture

Thanks for bringing the issue to our attention Nikos. We decided it would be simpler to just install Joomla from source to /var/www/joomla rather than try to package Joomla ourselves and do it poorly.

With Joomla in /var/www TKLBAM should now work better out of the box. You won't need to add any overrides to the configuration.

Nikos's picture

Hi Liraz, thanks for keeping us updated with this issue - I have moved along following your advise and have placed my Joomla sites in the /var/www - and things seemed to work without any hicups. Does this new change mean that TKLBAM is not automatically configured to backup whatever is in the /var/www folder?

Liraz Siri's picture

Making backups work out of the box like users intuitively expect (e.g., include user themes in subdirectories) was one of the main reasons we now install Joomla directly from source code.

That way the prohibition on messing around with files maintained by the package management system does not apply as conflict with the package management system is impossible for files we install directly from source code to a user maintained directory such as /var/www.

Add new comment