PHP Fatal error on install

I’m trying to install FreePBX 2.9.0 and I get this error.
After looking at the file it looks like it’s trying to verify that I’m logged
in as root and then crashes.

Running RHES 6.1
Dell Linux install - new PowerEdge R310 server
409 updates completed yesterday
kernel 2.6.32-131.12.1.el6.x86-64
php.x86-64 5.3.3-3.el16
Asterisk 1.8.5.0

I did a yum erase php then a yum install php earlier this morning.
That didn’t make a difference.

[root@******** freepbx-2.9.0]# ./install_amp
Checking for PEAR DB…OK
PHP Warning: date(): It is not safe to rely on the system’s timezone settings. You are required to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‘America/Los_Angeles’ for ‘PDT/-7.0/DST’ instead in /usr/src/freepbx-2.9.0/amp_conf/htdocs/admin/libraries/utility.functions.php on line 71
Checking for PEAR Console::Getopt…OK
PHP Warning: date(): It is not safe to rely on the system’s timezone settings. You are required to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‘America/Los_Angeles’ for ‘PDT/-7.0/DST’ instead in /usr/src/freepbx-2.9.0/amp_conf/htdocs/admin/libraries/utility.functions.php on line 71
Checking user…PHP Fatal error: Call to undefined function posix_getpwuid() in /usr/src/freepbx-2.9.0/install_amp on line 684

Type cat /etc/sysconfig/clock in a shell, the text after ZONE= you need to put into /etc/php.ini in section date.timezone.

Example for Sweden:

[root@localhost etc]# cat /etc/sysconfig/clock
ZONE="Europe/Stockholm"

Edit /etc/php.ini and change date.timezone:

date.timezone = Europe/Stockholm

Then do yum install php-process to solve the undefined error.

I made these changes:

Edit /etc/php.ini and change date.timezone:
date.timezone = America/Los Angeles

;;;;;;;;;;;;;;;;;;;
; Module Settings ;
;;;;;;;;;;;;;;;;;;;

[Date]
; Defines the default timezone used by the date functions
; http://www.php.net/manual/en/datetime.configuration.php#ini.date.timezone
date.timezone = America/Los Angeles

; http://www.php.net/manual/en/datetime.configuration.php#ini.date.default-latitude
;date.default_latitude = 31.7667

Ran
[root@PWCAsterisk freepbx-2.9.0]# yum install php-process
Loaded plugins: product-id, refresh-packagekit, rhnplugin, subscription-manager
Updating Red Hat repositories.
Setting up Install Process
No package php-process available.
Error: Nothing to do

[root@PWCAsterisk freepbx-2.9.0]# ./install_amp
Checking for PEAR DB…OK
PHP Warning: date(): It is not safe to rely on the system’s timezone settings. You are required to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‘America/Los_Angeles’ for ‘PDT/-7.0/DST’ instead in /usr/src/freepbx-2.9.0/amp_conf/htdocs/admin/libraries/utility.functions.php on line 71
Checking for PEAR Console::Getopt…OK
PHP Warning: date(): It is not safe to rely on the system’s timezone settings. You are required to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‘America/Los_Angeles’ for ‘PDT/-7.0/DST’ instead in /usr/src/freepbx-2.9.0/amp_conf/htdocs/admin/libraries/utility.functions.php on line 71
Checking user…PHP Fatal error: Call to undefined function posix_getpwuid() in /usr/src/freepbx-2.9.0/install_amp on line 684
[root@PWCAsterisk freepbx-2.9.0]#

You need to restart apache.
As for the other error, you need to find and install the rpm that contains the function posix_getpwuid.

Google is your friend.