FreePBX 17 - Rebooted and Now Does Not Run

Worked just fine till a reboot for Time Zone change in System Admin inside FreePBX itself and now nothing loads.

FWCONSOLE RESTART OR START results in this…
root@voice:/usr/sbin# ./fwconsole start
Asterisk already running
Running FreePBX startup…
Taking too long? Customize the chown command, See https://sangomakb.atlassian.net/wiki/spaces/FP/pages/10289397/FreePBX+Chown+Conf
Setting Permissions…
Setting base permissions…Done in 2 seconds
Setting specific permissions…
14543 [============================]
Finished setting permissions
/usr/bin/env: ‘asterisk’: No such file or directory

In Start.class.php line 164:

preg_match(): Passing null to parameter #2 ($subject) of type string is dep
recated

start [–pre] [–post] [–skipchown] [–] […]

root@voice:/usr/sbin# ./fwconsole restart
Running FreePBX shutdown…

Running Asterisk pre from Cdrpro module
Stopping CDRpro Service…
Stopping CDRpro Service
The command “runuser 'asterisk' -s '/bin/bash' -c 'cd /var/www/html/admin/modules/pm2/node && mkdir -p /home/asterisk/.pm2 && mkdir -p /var/www/html/admin/modules/pm2/node/logs && export HOME=/home/asterisk && export PM2_HOME=/home/asterisk/.pm2 && export ASTLOGDIR=/var/log/asterisk && export ASTVARLIBDIR=/var/lib/asterisk && export PATH=$HOME/.node/bin:$PATH && export NODE_PATH=$HOME/.node/lib/node_modules:$NODE_PATH && export MANPATH=$HOME/.node/share/man:$MANPATH && /var/www/html/admin/modules/pm2/node/node_modules/pm2/bin/pm2 jlist'” failed.

Exit Code: 127(Command not found)

Working directory: /usr/sbin

Output:

Error Output:

sh: 1: runuser: not found

Running Asterisk pre from Core module
Stopping Call Transfer Monitoring Service
The command “runuser 'asterisk' -s '/bin/bash' -c 'cd /var/www/html/admin/modules/pm2/node && mkdir -p /home/asterisk/.pm2 && mkdir -p /var/www/html/admin/modules/pm2/node/logs && export HOME=/home/asterisk && export PM2_HOME=/home/asterisk/.pm2 && export ASTLOGDIR=/var/log/asterisk && export ASTVARLIBDIR=/var/lib/asterisk && export PATH=$HOME/.node/bin:$PATH && export NODE_PATH=$HOME/.node/lib/node_modules:$NODE_PATH && export MANPATH=$HOME/.node/share/man:$MANPATH && /var/www/html/admin/modules/pm2/node/node_modules/pm2/bin/pm2 jlist'” failed.

Exit Code: 127(Command not found)

Working directory: /usr/sbin

Output:

Error Output:

sh: 1: runuser: not found

Running Asterisk pre from Restapps module
The command “runuser 'asterisk' -s '/bin/bash' -c 'cd /var/www/html/admin/modules/pm2/node && mkdir -p /home/asterisk/.pm2 && mkdir -p /var/www/html/admin/modules/pm2/node/logs && export HOME=/home/asterisk && export PM2_HOME=/home/asterisk/.pm2 && export ASTLOGDIR=/var/log/asterisk && export ASTVARLIBDIR=/var/lib/asterisk && export PATH=$HOME/.node/bin:$PATH && export NODE_PATH=$HOME/.node/lib/node_modules:$NODE_PATH && export MANPATH=$HOME/.node/share/man:$MANPATH && /var/www/html/admin/modules/pm2/node/node_modules/pm2/bin/pm2 jlist'” failed.

Exit Code: 127(Command not found)

Working directory: /usr/sbin

Output:

Error Output:

sh: 1: runuser: not found

Running Asterisk pre from Sangomaconnect module
The command “runuser 'asterisk' -s '/bin/bash' -c 'cd /var/www/html/admin/modules/pm2/node && mkdir -p /home/asterisk/.pm2 && mkdir -p /var/www/html/admin/modules/pm2/node/logs && export HOME=/home/asterisk && export PM2_HOME=/home/asterisk/.pm2 && export ASTLOGDIR=/var/log/asterisk && export ASTVARLIBDIR=/var/lib/asterisk && export PATH=$HOME/.node/bin:$PATH && export NODE_PATH=$HOME/.node/lib/node_modules:$NODE_PATH && export MANPATH=$HOME/.node/share/man:$MANPATH && /var/www/html/admin/modules/pm2/node/node_modules/pm2/bin/pm2 jlist'” failed.

Exit Code: 127(Command not found)

Working directory: /usr/sbin

Output:

Error Output:

sh: 1: runuser: not found

Running Asterisk pre from Sangomartapi module
The command “runuser 'asterisk' -s '/bin/bash' -c 'cd /var/www/html/admin/modules/pm2/node && mkdir -p /home/asterisk/.pm2 && mkdir -p /var/www/html/admin/modules/pm2/node/logs && export HOME=/home/asterisk && export PM2_HOME=/home/asterisk/.pm2 && export ASTLOGDIR=/var/log/asterisk && export ASTVARLIBDIR=/var/lib/asterisk && export PATH=$HOME/.node/bin:$PATH && export NODE_PATH=$HOME/.node/lib/node_modules:$NODE_PATH && export MANPATH=$HOME/.node/share/man:$MANPATH && /var/www/html/admin/modules/pm2/node/node_modules/pm2/bin/pm2 jlist'” failed.

Exit Code: 127(Command not found)

Working directory: /usr/sbin

Output:

Error Output:

sh: 1: runuser: not found

Running Asterisk pre from Ucp module
The command “runuser 'asterisk' -s '/bin/bash' -c 'cd /var/www/html/admin/modules/pm2/node && mkdir -p /home/asterisk/.pm2 && mkdir -p /var/www/html/admin/modules/pm2/node/logs && export HOME=/home/asterisk && export PM2_HOME=/home/asterisk/.pm2 && export ASTLOGDIR=/var/log/asterisk && export ASTVARLIBDIR=/var/lib/asterisk && export PATH=$HOME/.node/bin:$PATH && export NODE_PATH=$HOME/.node/lib/node_modules:$NODE_PATH && export MANPATH=$HOME/.node/share/man:$MANPATH && /var/www/html/admin/modules/pm2/node/node_modules/pm2/bin/pm2 jlist'” failed.

Exit Code: 127(Command not found)

Working directory: /usr/sbin

Output:

Error Output:

sh: 1: runuser: not found

Shutting down Asterisk Gracefully. Will forcefully kill after 30 seconds.
Press C to Cancel
Press N to shut down NOW
/usr/bin/env: ‘asterisk’: No such file or directory
[============================] 30 secs
Killing asterisk forcefully.
/usr/bin/env: ‘asterisk’: No such file or directory

In Process.php line 272:

The command “runuser 'asterisk' -s '/bin/bash' -c 'cd /var/www/html/admin/m
odules/pm2/node && mkdir -p /home/asterisk/.pm2 && mkdir -p /var/www/html/a
dmin/modules/pm2/node/logs && export HOME=/home/asterisk && export PM2_HOME
=/home/asterisk/.pm2 && export ASTLOGDIR=/var/log/asterisk && export ASTVAR
LIBDIR=/var/lib/asterisk && export PATH=$HOME/.node/bin:$PATH && export NOD
E_PATH=$HOME/.node/lib/node_modules:$NODE_PATH && export MANPATH=$HOME/.nod
e/share/man:$MANPATH && /var/www/html/admin/modules/pm2/node/node_modules/p
m2/bin/pm2 jlist'” failed.

Exit Code: 127(Command not found)

Working directory: /usr/sbin

Output:

Error Output:

sh: 1: runuser: not found

restart [-i|–immediate] [–] […]

So I tried to fwconsole start and got as far as asterisk and it would not load.
So…
root@voice:/# systemctl status asterisk
○ asterisk.service - LSB: Asterisk PBX
Loaded: loaded (/etc/init.d/asterisk; generated)
Active: inactive (dead)
Docs: man:systemd-sysv-generator(8)
root@voice:/# systemctl start asterisk
root@voice:/# systemctl status asterisk
● asterisk.service - LSB: Asterisk PBX
Loaded: loaded (/etc/init.d/asterisk; generated)
Active: active (running) since Fri 2024-10-18 17:18:09 EDT; 2s ago
Docs: man:systemd-sysv-generator(8)
Process: 69093 ExecStart=/etc/init.d/asterisk start (code=exited, status=0/SUCCESS)
Tasks: 119 (limit: 19116)
Memory: 52.0M
CPU: 1.500s
CGroup: /system.slice/asterisk.service
└─69115 /usr/sbin/asterisk

Oct 18 17:18:08 voice systemd[1]: Starting asterisk.service - LSB: Asterisk PBX…
Oct 18 17:18:09 voice asterisk[69093]: Starting Asterisk PBX: asterisk.
Oct 18 17:18:09 voice systemd[1]: Started asterisk.service - LSB: Asterisk PBX.
root@voice:/# /usr/sbin/fwconsole start
Asterisk already running
Running FreePBX startup…
Taking too long? Customize the chown command, See https://sangomakb.atlassian.net/wiki/spaces/FP/pages/10289397/FreePBX+Chown+Conf
Setting Permissions…
Setting base permissions…Done in 2 seconds
Setting specific permissions…
14543 [============================]
Finished setting permissions
/usr/bin/env: ‘asterisk’: No such file or directory

In Start.class.php line 164:

preg_match(): Passing null to parameter #2 ($subject) of type string is deprecated

start [–pre] [–post] [–skipchown] [–] […]

Running fwconsole ma updateall went okay but repeated the same error 3 times

In Process.php line 272:

The command “runuser ‘asterisk’ -s ‘/bin/bash’ -c ‘cd /var/www/html/admin/modules/pm2/node && mkdir -p /home/asterisk/.pm2 && mkdir -p /var/www/html/admin/modules/pm2/node/logs && export HOME=/home/asterisk
&& export PM2_HOME=/home/asterisk/.pm2 && export ASTLOGDIR=/var/log/asterisk && export ASTVARLIBDIR=/var/lib/asterisk && export PATH=$HOME/.node/bin:$PATH && export NODE_PATH=$HOME/.node/lib/node_modules:$
NODE_PATH && export MANPATH=$HOME/.node/share/man:$MANPATH && /var/www/html/admin/modules/pm2/node/node_modules/pm2/bin/pm2 jlist’” failed.

Exit Code: 127(Command not found)

Working directory: /

Output:

Error Output:

sh: 1: runuser: not found

Looks like maybe a permissions problem or asterisk user doesn’t exist for some reason.

try

fwconsole chown

For starters. If that doesn’t work make sure asterisk user exists.

grep asterisk /etc/passwd

You should get a response that looks like this.

asterisk:x:1000:1000:Asterisk User:/home/asterisk:/bin/bash

Mine looks like this
‘‘asterisk:x:999:994:Asterisk User:/home/asterisk:/bin/bash’’

fwconsole chown runs fine and completes, no errors. fwconsole start stalls at starting Asterisk after 30 seconds according to timer while executing script. Seems like permission issue with Asterisk itself maybe? Does it matter that the username is asterisk and not Asterisk? I deployed using the standard deployment script for Debian 12 for FreePBX17. First go around with 17 as 16 and 15 were CentOS base SNG deployments.

runuser will normally be found in /usr/sbin/ in debian, echo $PATH , it can only be executed by root.

Issue resolved. Reran fwconsole chown and then immediately rebooted the whole server, this resolved the issue. Not sure why but it did. Thank you all for the assistance.

Follow-Up question:
PostFix won’t rewrite from postmap like everyone has been doing for years. Did the process change with Debian and FreePBX17?

what is exactly is postmap not doing?

rewriting the from address using /etc/postfix/generic

even copied from another server and changed everything to those settings just to test but no avail
Changed everything to match but in debug it still shows the wrong from values. Very strange.

main.cf shows smtp_generic_maps = hash:/etc/postfix/generic the custom section and all the necessary entries are in generic as well.

Do I have to purge the smtp queue in postfix for any setting changes take effect? Do not recall having to do this.

purged all messages in queue and restarted postfix, did not help any, still not rewriting from address, never seen this in FreePBX 14/15/16

Postfix seems to acts a little bit differently on Debian 12 compared to CentOS 6/7, so don’t expect identical behaviour if you are trying to reuse your old config. I know that I have to configure main.cf a little different compared to how I did it before.

This topic was automatically closed 31 days after the last reply. New replies are no longer allowed.