Support

Akeeba Backup for Joomla!

#42039 restoring an old j3 site to j5

Posted in ‘Akeeba Backup for Joomla! 4 & 5’
This is a public ticket

Everybody will be able to see its contents. Do not include usernames, passwords or any other sensitive information.

Environment Information

Joomla! version
3.4
PHP version
5.3
Akeeba Backup version
4.7.7

Latest post by HDcms on Monday, 04 August 2025 08:14 CDT

HDcms

Hello

I succeeded in restoring the nmh-j3.4php5.3 version
The person gave me 2 files
the first without the media which is 3 jpa for a total of 4.5go
the zipped media.zip file which is also 4.5go
I had a problem with the media.zip file which after restoration broke the site!
Here's what I did
restore the site back and front-end
rename the media directory => mediaEx then move elsewhere
dezip media directory => backoffice and navigation problem

The restored site works fine without unzipping the media.zip file with images.
Any idea how to find the difference? or if it's a problem? as part of a migration test?

Regards

nicholas
Akeeba Staff
Manager

Extract the backup archive and proceed with the restoration.

Rename the media folder the media.bak

Unzip the ZIP file into the media folder as you did before

Copy the files from media.bak into media.

The reason is that the media folder contains the Joomla-version-specific JavaScript, not just user-provided media files. You can't use an older or newer version's media files.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

HDcms

Hello
Thank you it worked well :-)
I don't know if it's faster to go through a zip but it might be better to make 2 different akeeba profiles:
a small one with the site minus the media
a bigger one just with the media

Regards

HDcms

re

For a site hosted on a shared server (which I have to live with), what values would you recommend to reduce the backup time for a site that is several GB in size?
At the moment, it crashes after an hour!

The host tells me that it's possible to add these directives to the .htacces file of the site that has the heavy backup plugin, which will allow you to allocate more generous values than are possible in the N0C graphical interface. He also recommends setting good values for the following parameters
php_value memory_limit XXG
php_value post_max_size XXG
php_value upload_max_filesize XXG
php_value max_input_time XXX
php_value max_execution_time XXX

in the php environment, I set
memory_limit, post_max_size and upload_max_filesize =1g

regards

nicholas
Akeeba Staff
Manager

None of that will help. The backup does not run in a single page load. It splits the work in multiple page loads, each one running for a few seconds (see the documentation about the minimum and maximum execution time options in the Configuration page). Moreover, we already unset PHP's timeout, and set an ample memory size.

The configuration values for the post size, the upload max filesize and the max input time your host gave you are completely irrelevant. They have nothing to do with the backup. They just gave you a canned reply without bothering to understand the issue.

Are you taking the backup from the backend of the site? The problem would be that your device goes to sleep, your network connection is disrupted, or your browser put what it considers an inactive tab to sleep. The solution would be to disable device sleep, and have the browser tab running the backup run in the foreground.

Are you taking the backup using a CRON job? The problem would be the host's CPU usage limit (ulimit -t). They can change that; it's something that requires root privileges on the server.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

HDcms

HI again

Thank you for these clarifications; to the host's credit, he doesn't know everything you do to enable backups (or restorations) of large directories of site files.
I operate from my firefox at home from the backoffice; I understand that I have to disable standby (which I didn't see) and leave the tab in the foreground (which I wasn't doing because I was browsing elsewhere). So there's not much I can do and wait 1 hour if I have to?

For the 1st question, please answer me too :
I don't know if it's faster to go through a zip but it might be better to make 2 different akeeba profiles:
1/ a small one with the site minus the media
2/ a bigger one just with the media

Regards

nicholas
Akeeba Staff
Manager

So there's not much I can do and wait 1 hour if I have to?

Knowing the browser you are using makes answering this so much easier. The feature in Firefox is confusingly called "Tab Unloading", even though what it does is simply disable JavaScript timers i.e. tab sleep. I guess words have lost all meaning now. The linked article describes how you can disable tab unloading . If you disable tab unloading you don't have to wait for the backup to finish. Disabling tab unloading is a good idea, unless you make a habit of leaving dozens of tabs open in the background (a bad idea for so many reasons, including security and privacy).

Alternatively, you can set up the backup to run through a CRON job, scheduled task, or third party application/service. Since these methods do not go through the browser they are not affected by the tab unloading / tab sleep features.

I don't know if it's faster to go through a zip but it might be better to make 2 different akeeba profiles:

I would personally go with two backup profiles, not because it's faster, but because it's easier to manage. 

If you are going for sheer speed, using ZIP is always faster. ZIP is an archiver using native code, it can use as much RAM as you give it, and does not have to perform any of the checks Akeeba Backup does to decide what goes into the archive.

Do consider, though, that putting stuff in a ZIP file is just the beginning of it. You need to keep track of how they correlate with the main site backup, you need to remove older copies you no longer need, you need to upload the backups to off-site storage… Akeeba Backup handles all of that for you. If you go your own way for the media folder you'd have to reimplement all of that which is very expensive and very error-prone. But you are already paying for Akeeba Backup which solves these exact problems, so why not use it? And that's why I would personally go with two backup profiles.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

HDcms

Hello

Thank you for this precise information.

I will do that. It's true that I have several firefox profiles with dozens of tabs. I will think about the cron but if not, last question, for in general, is it better that I use Brave? or open a firefox profile with only the backup tab?

Regards

nicholas
Akeeba Staff
Manager

I mean, the ideal solution would be having any browser set up with tab sleep disabled just for running backups. I can't recommend a specific browser (unless you want some obscure Linux-only browser you've never heard of and can't use). All mainstream browsers have tab sleep enabled by default. It's up to you to choose whichever browser you trust, and disable tab sleep.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

HDcms

Hi

I think there's a deeper problem.
I run the backup and I get the message that I have a space problem. Maybe it's because akeeba is trying to save to the 2nd jpa that exists.
I deleted the old backup but I have the same problem.
I'm attaching the log file if it's clearer for you? and an image because I find that the 2 files don't have the same rights!

Regards

 

nicholas
Akeeba Staff
Manager

Set a smaller part size for split archives, e.g. 500 MiB. Set up a post-processing engine to upload the files to remote storage, and make sure to check the checkbox to upload the files immediately. This means that your backup requires about 2 to 2.5 times the part size for split archives in free space.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

HDcms

I'm sorry but I don't seem to have these settings on this old akeeba 4.7.7 version that I'm obliged to use to start this migration/update to php 5.3.

Regards

 

System Task
system
The ticket information has been edited by herve D (HDcms).

nicholas
Akeeba Staff
Manager

You have installed the Core version, not the Professional version, that's why.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

HDcms

Hi

In fact I had asked them to take out a pro license but I didn't check a few months later that they had taken out the core version. I ask them to buy a license.

In the meantime, I'm sorry again but as it can take more than an hour and ... I prefer to fine-tune the settings with you, especially as
a) I'm a planete hoster, I'm used to NOC storage, but on more recent versions, I'm obliged to set
"Bucket access" = path access legacy and I don't see it in the settings for akeeba version 4.7.7?
b) I didn't see the 500 MB limit setting?
c) if you see other parameters to correct, can you tell me by circling the parameter on the image or by telling me the category?

thanks in advance

nicholas
Akeeba Staff
Manager

Kindly note that you are asking me about a version of our software which is six major versions behind and has been end of life (EOL) for nine years. There's a limit to what I can help you with, and I think we've sailed right past it at this point.

My best guess reading the code from a decade ago is that our S3 integration always used path-style access. This might or might not be accurate. I honestly don't know for sure anymore.

The part size for split archives is definitely there, and it has luckily not changed how it works ever since it was added sometime between 2007 and 2008. There's an Archive Engine row with a Configure button next to it. Press it to find this configuration option. It might have a slightly different name, but it definitely has the words "part size" in it.

The option to upload the files as soon as they're created is definitely there in that version.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

HDcms

HI

If I'd known, I wouldn't have agreed to migrate this old site to joomla 5.
I'm used to joomla5 sites, j!4 or j!3.

Another thing that's causing this to fail is that I uploaded an old profile where I had media exclusions as shown in the image. That doesn't seem to be the case anymore :-(

I'm confused and if I understand correctly I have to redo this too!?

It's the same site, so if I remember correctly (rarely done) I need to uncheck the images column and the media/k2 subdirectory as seen in https://www.akeeba.com/documentation/akeeba-backup-joomla/exclude-data-from-backup.html. Ok?

nicholas
Akeeba Staff
Manager

K2… That's a name I haven't heard in a long time. But yes, I believe K2 had a folder in its media subdirectory where it stored cached files that you may have to remove. No idea why you had remove the images folder. Maybe because it was a really big folder and you were running out of space?

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

HDcms

Hi again

Yes, it's horrible. A redesign project that started 2 years ago!
I had a problem configuring the exclusions.  I've now got back to the fact that you first have to go into the profile and then out of it before configuring them in the extensions tab. It was a bit complicated for me.

a) Now I see that I've been stuck for 30 minutes on the backup of /home/XXX/nmh-j3.4php5.3/media/k2/items/cache
Can I exclude it from my backup of media files?

b) is there a way to view the file directory tree of a jpa backup to see if anything is missing?

regards

HDcms

a)

Here is the size occupied on the site
10G /home/XXXXX/nmh-j3.4php5.3/
4.3G /home/XXXXX/nmh-j3.4php5.3/images
5.3G /home/XXXXX/nmh-j3.4php5.3/media
4.8G /home/XXXXX/nmh-j3.4php5.3/media/k2
2.2G /home/XXXXX/nmh-j3.4php5.3/media/k2/items/cache

After nearly 2 days of finding the right akeeba settings, I'd like to ask you if it would be possible to zip
4.3G /home/XXXXX/nmh-j3.4php5.3/images
4.8G /home/XXXXX/nmh-j3.4php5.3/media/k2 (excluding 2.2G /home/XXXXX/nmh-j3.4php5.3/media/k2/items/cache)?

And make a single profile excluding these 2 very large directories?

 

nicholas
Akeeba Staff
Manager

a) Now I see that I've been stuck for 30 minutes on the backup of /home/XXX/nmh-j3.4php5.3/media/k2/items/cache

Yes. You had already asked me, and I confirmed it.

b) is there a way to view the file directory tree of a jpa backup to see if anything is missing?

If you are handy with the command line, you can run Kickstart in the command line with the --dry-run option to list the files.

You can also look at the log file. It will tell you exactly what is being skipped, and what is being included.

And make a single profile excluding these 2 very large directories?

I mean, sure? You already know how to use the file exclusion filters. Why are you asking me if you should use the file exclusion filter feature you are already using anyway…?

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

HDcms

Hi

I'm taking the liberty of continuing this thread because I'm still encountering a difficulty in the long road of migrating from a j!3.4 site to j!5.3 !!
I think I've created the right profile by excluding the 2 large directories and that I have enough space.
However, when I look at the log, I see that it goes into the k2 excluded directory and it doesn't work.
Can you think of a reason?

Regards

 

HDcms

No  file !!

HDcms

log file

nicholas
Akeeba Staff
Manager
INFO    |250702 09:11:53|Skipping directory <root>/media/k2

It definitely skipped over the media/k2 directory you excluded.

HOWEVER, if you look really closely you will see that you have a folder media/media/k2. NOTE THE DOUBLE media IN THERE!

It would appear that at some point you accidentally copied the media folder inside the media folder. It also looks like you then copied the images folder inside the media/media folder.

I'd say, start cleaning up this kind of mistakes on your site before trying to figure out the backups.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

HDcms

Hi again

Thanks

Sorry, you're absolutely right. I'd already done that (because I do everything with the host's explorer, which isn't easy) on the previous site but forgot to do it on this site.
I have to say that I do this incrementally
1 directory = 1 joomla version

I prefer to leave this thread open as I'm now juggling between joomla versions, akeeba, php environment ...

Regards

HDcms

Hello

I'm continuing this work which requires me to repeat all these long steps because I've seen problems on higher versions of the jooomla site!

I start again on the joomla 3.4 site by deleting extensions, then I want to import it on the next site in joomla 3.6.5.
The archive is ~100 MB in size and I'm not touching the images and medias/k2 directories. I'd like to save time and avoid restarting with a complete archive + 2 large zip files.

When restoring the joomla 3.4 site to the joomla 3.6.5 site, I get the error 

 

The extraction has failed

Extraction of the backup archive has failed.
The last error message was:

Invalid header in archive file, part 0, offset 19

 What's the best, quickest way?
Regards

nicholas
Akeeba Staff
Manager

When restoring the joomla 3.4 site to the joomla 3.6.5 site

That's… that's not how it works. When you restore a site you are overwriting the site's files and database. You are not transferring content. It is also a SPECTACULARLY BAD idea mixing files from two different Joomla versions. It mathematically leads to a broken site and I've got a very clean warning about this in the documentation since the Joomla 1.5 /1.6 times fifteen years ago.

Here's how it works.

You restore the Joomla 3.4 site into an empty subdomain.

You upgrade any extensions, and maybe PHP if necessary.

You take a backup.

You upgrade to Joomla! 3.6.

You take a backup.

You upgrade any extensions and maybe PHP.

You take a backup.

You upgrade to probably 3.8 or 3.9 (because a jump to 3.10 will likely be way too much).

You take a backup.

You upgrade any extensions and maybe PHP.

You take a backup.

You upgrade to 3.10.

You take a backup.

You upgrade any extensions and maybe PHP.

You take a backup.

You upgrade to 4.0 (because a jump to 4.4 will probably be too much).

You take a backup.

You upgrade any extensions and maybe PHP.

You take a backup.

You upgrade to 4.4.

You take a backup.

You upgrade to 5.0 (because a jump to 5.3 will probably be too much).

You take a backup.

You upgrade any extensions and maybe PHP.

You take a backup.

You upgrade to 5.3.

Obviously, if an upgrade fails you download the backup, clear the subdomain, restore the backup and now you're back at the immediately previous step before running the failed update. Fix any problems you had, take a new backup, and retry the update. Rinse and repeat until the update actually works.

I will have to say this again, even though it's falling on deaf ears. Waiting 13 years for an upgrade is by definition going to be painful, no matter if you use Joomla or WordPress. Three years is probably the longest you can go before a complete rebuild is becoming less trouble than trying to upgrade something across long-obsolete versions of your CMS, your extensions, PHP, and MySQL.

The best thing you can do is small, incremental updates every 6 months at most. Keep up with the new versions of extensions, the CMS, PHP, and MySQL. The time you will spend is a tiny fraction of the colossal amount of time you will burn trying to upgrade a 10+ year old site. When you're trying to go from the Stone Age to the Space Age it's always gonna be painful and have a very low probability of success.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

HDcms

Hi

I had my suspicions, but I was hoping that a shorter route would be possible. This is the 3rd time I've done the cycle again because on the previous occasions I didn't have the right information or the right person and I deleted extensions that were used in "hidden places" :-(
I had to find forks like for jmootips, vianora slider or new reservation extensions.
I managed to make direct jumps to 3.10.12 or 5.2, maybe by luck!

I'm perfectly aware that 13 years is a long time. After all, I'm not the decision-maker and it's a big joomla intranet that has the merit of having worked well
On the other hand, I hope that my experience will serve me or others to charge a fair price, it's a huge, fine and long job indeed.

Thank you and thank you again for your support
Regards

nicholas
Akeeba Staff
Manager

I know it's not up to you. I live here in the real world together with my clients :)

I am giving you ammo –in the form of the qualified opinion of a long-time Joomla extensions developer and former core contributor who deals with backups and site upgrades on a daily basis– to convince the stakeholders not to let their sites rot for over a decade next time. Because, you know, with Joomla getting a new major release every 2 years the maximum span of time you can leave a site without updates is getting shorter, to about 5 years tops before you start having major update woes.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

HDcms

Hi again

As you said, I'm back in a new repertoire. When restoring the database, I get this message

I've never had this before :-( during my 2 previous restore scyles.

ErrNo #1347
'evjtvkbd_nmh-j365.V_atlas_resaNMH_veloAuto' is not of type 'VIEW'
SQL=CREATE OR REPLACE ALGORITHM=UNDEFINED VIEW `V_atlas_resaNMH_veloAuto` AS select `res`.`id_resources` AS `id`,`res`.`name` AS `name`,`cat`.`name` AS `categorie`,`req`.`name` AS `Nom`,`req`.`startdate` AS `startdate`,`req`.`starttime` AS `starttime`,`req`.`enddate` AS `enddate`,`req`.`endtime` AS `endtime`,concat(`req`.`startdate`,' ',`req`.`starttime`) AS `datetime_debut`,concat(`req`.`enddate`,' ',`req`.`endtime`) AS `datetime_fin` from ((`joom34_sv_bookpro3_requests` `req` join `joom34_sv_bookpro3_resources` `res`) join `joom34_sv_bookpro3_categories` `cat`) where `req`.`request_status` = 'accepted' and `req`.`resource` = `res`.`id_resources` and `res`.`published` = 1 and `cat`.`id_categories` = `res`.`category_id` and `cat`.`id_categories` in (7,8,10,11,12,13,14,15,21,22,19,20,25,27,28,29,30,32,33,34,35,36)
Texte de la requête Raw :

CREATE OR REPLACE ALGORITHM=UNDEFINED VIEW `V_atlas_resaNMH_veloAuto` AS select `res`.`id_resources` AS `id`,`res`.`name` AS `name`,`cat`.`name` AS `categorie`,`req`.`name` AS `Nom`,`req`.`startdate` AS `startdate`,`req`.`starttime` AS `starttime`,`req`.`enddate` AS `enddate`,`req`.`endtime` AS `endtime`,concat(`req`.`startdate`,' ',`req`.`starttime`) AS `datetime_debut`,concat(`req`.`enddate`,' ',`req`.`endtime`) AS `datetime_fin` from ((`#__sv_bookpro3_requests` `req` join `#__sv_bookpro3_resources` `res`) join `#__sv_bookpro3_categories` `cat`) where `req`.`request_status` = 'accepted' and `req`.`resource` = `res`.`id_resources` and `res`.`published` = 1 and `cat`.`id_categories` = `res`.`category_id` and `cat`.`id_categories` in (7,8,10,11,12,13,14,15,21,22,19,20,25,27,28,29,30,32,33,34,35,36)

See the settings in pictures
Regards

nicholas
Akeeba Staff
Manager

With Existing -> Drop Same Prefix

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

HDcms

Hi again
I've restarted the restore by setting: delete database and setting a new prefix "joom365_"
I get the same error 
I've misunderstood.?
regards

HDcms

re

It seems that the drop button didn't work.
I had to manually delete all the tables
I continue

nicholas
Akeeba Staff
Manager

I have a feeling you are trying to restore this on Windows or macOS with the database on a case-insensitive filesystem such as NTFS, FAT32, HFS+, or APFS?

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

HDcms

Hello
No, that wasn't it, but I cleaned up and I'm continuing to do so.
Regards

Support Information

Working hours: We are open Monday to Friday, 9am to 7pm Cyprus timezone (EET / EEST). Support is provided by the same developers writing the software, all of which live in Europe. You can still file tickets outside of our working hours, but we cannot respond to them until we're back at the office.

Support policy: We would like to kindly inform you that when using our support you have already agreed to the Support Policy which is part of our Terms of Service. Thank you for your understanding and for helping us help you!