Any wayto upgrade a freepbx 16 to 17?

OK, so I have a freepbx 16 system which I managed to install on Debian 12, but of course it has problems. Is there any way to upgrade this to 17? I had to hold back all php packages, which I can release, but is there a way to do this, or do I have to start overr?

Thanks for any suggestions.

The most common advice is:
Make a backup with FreePBX 16 and restore this in FreePBX 17.
This is a supported migration route.

The other way is using the module listed under Admin tab.
It’s called “Bulk Handler”.
You can import and export various parts of the system seperately.
Like the Extentions /Users/DiD’s.
However Dial Patters must be done somewhere else. It’s a mixed bag.
But better then starting from scatch.

2 Likes

If you are already on Debian 12, thn running the script probably won’t break what is working but take a backup first,

But you said “but of course it has problems” , what problems ?, I have many and none have any such thing.

How do I do the backup – I have always just backed up the whole system somewhere. After I do the backup, do I have to start over with a clean Debian system, or can I take what I have and fully update it by releasing the holds on php packages and install freepbx17? The script wants you to start over from a “clean” debian system.

Thanks.

Main problem is that the system won’t make outgoing calls, I am not sure exactly what is happening there.

Nor am I :slight_smile: maybe a log or two, but yes unpin anything you pinned

Backup for just the FreePBX part of the system.
open the FreePBX dashboard,
Goto Admin tab > and click “Backup & Restore”

My approach would be (UNTESTED) (1) install php 8.2 from the standard Deb 12 repo, (2) download the FreePBX 17 zip which is basically just the framework module (https://github.com/FreePBX/framework/archive/refs/heads/release/17.0.zip) and run the install script within.

The modules will probably be in a half-17, half-16 state at that point so run fwconsole ma upgradeall and/or fwconsole ma installall to get modules upgraded and install the rest.

OK, in the 17.0.zip there is no install of any sort, so where would I get it?

Thanks.

There is a script called install . It’s a php script. You can set it executable (chmod +x install) and run it like ./install

I did find it within the Framework-release-17.0, but when I run it says no direct script access allowed.

You need to run install not install.php

OK, so that was correct, but upon running the install, I get the following output

Preliminary checks done. Starting FreePBX Installation
Checking if this is a new install…No (/etc/freepbx.conf file detected)

In FreePBX.class.php line 19:

Class “Ramsey\Uuid\Exception\UnsatisfiedDependencyException” not found

install [–dbengine DBENGINE] [–dbname DBNAME] [–dbhost DBHOST] [–dbport DBPORT] [–cdrdbname CDRDBNAME] [–dbuser DBUSER] [–dbpass DBPASS] [–user USER] [–group GROUP] [–dev-links] [–skip-install] [–webroot WEBROOT] [–astetcdir ASTETCDIR] [–astmoddir ASTMODDIR] [–astvarlibdir ASTVARLIBDIR] [–astagidir ASTAGIDIR] [–astspooldir ASTSPOOLDIR] [–astrundir ASTRUNDIR] [–astlogdir ASTLOGDIR] [–ampbin AMPBIN] [–ampsbin AMPSBIN] [–ampcgibin AMPCGIBIN] [–ampplayback
AMPPLAYBACK] [-r|–rootdb] [-f|–force]

looks like its telling you this is not a new install , try with a fresh install … “/etc/freepbx.conf file detected”

Its not a new install, its over the top of freepbx 16 that I had, if you look at the previous posts, I was told to download the .zip and run the install script.

Just throw whatever you had away and start with a clean slate, it works. You can then restore a backup from 16.

I cannot run 16 anymore, how can I create a backup manually – is it just a matter of doing a mariadb-dump of the asterisk database, or is there something else I need to back up?

why does 16 no longer run ? mysqldump will get most things, sqlite3 can get you more, any customization in /etc/asterisk/* need replication as do any files in /var/spool/asterisk/ for voicemails and custom audio, /var/lib/asterisk/ and /home/asterisk/ might contain ssl and binaries and more you use, but stitching it all together is better done by a well qualified tech.

1 Like

16 does not run because I upgraded my php as mentioned in a previous post. I have an older freepbx 16 on another computer, how can I back that up and restore the backup to the computer on which I want to have freepbx 17?
What files do I need to move over or does that backup contain what I need?

Save the working system backup to somewhere, install 17, when it’s working then restore the working backup from thatwhere
if you did a bunch of mods, then /etc/asterisk/, /var/lib/asterisk/, /var/spool/asterisk/ and /home/asterisk/ might have stuff not included in a standard backup, but only you would know