PHP Fatal Error: Uncaught Error

    • OMV 4.x
    • Resolved
    • Upgrade 3.x -> 4.x
    • PHP Fatal Error: Uncaught Error

      So I didn't log into omv webinterface for quite a while. I previously upgraded from jessie to stretch.
      Now I need to set up new hdd and logging into webif I'm greeted with this message:


      Source Code

      1. Error #0: OMV\Rpc\Exception: Invalid RPC response. Please check the syslog for more information. in /usr/share/php/openmediavault/rpc/rpc.inc:186 Stack trace: #0 /usr/share/php/openmediavault/rpc/proxy/json.inc(95): OMV\Rpc\Rpc::call('System', 'getInformation', Array, Array, 3) #1 /var/www/openmediavault/rpc.php(45): OMV\Rpc\Proxy\Json->handle() #2 {main}


      Now choosing "disks" or "filesystems" tab it's just loading and not showing anything.
      Looking into syslog I see following errors:


      Source Code

      1. Nov 13 21:35:56 localhost omv-engined[2678]: PHP Fatal error: Uncaught Error: Call to undefined function bccomp() in /usr/share/php/openmediavault/functions.inc:689#012Stack trace:#012#0 /usr/share/openmediavault/engined/rpc/system.inc(428): binary_format('2093920256')#012#1 [internal function]: OMVRpcServiceSystem->getInformation(Array, Array)#012#2 /usr/share/php/openmediavault/rpc/serviceabstract.inc(123): call_user_func_array(Array, Array)#012#3 /usr/share/php/openmediavault/rpc/rpc.inc(86): OMV\Rpc\ServiceAbstract->callMethod('getInformation', Array, Array)#012#4 /usr/sbin/omv-engined(536): OMV\Rpc\Rpc::call('System', 'getInformation', Array, Array, 1)#012#5 {main}#012 thrown in /usr/share/php/openmediavault/functions.inc on line 689
      2. Nov 13 21:36:06 localhost omv-engined[2725]: PHP Fatal error: Uncaught Error: Call to undefined function OMV\System\Filesystem\bcmul() in /usr/share/php/openmediavault/system/filesystem/filesystem.inc:643#012Stack trace:#012#0 /usr/share/openmediavault/engined/rpc/filesystemmgmt.inc(155): OMV\System\Filesystem\Filesystem->getStatistics()#012#1 [internal function]: OMVRpcServiceFileSystemMgmt->enumerateFilesystems(NULL, Array)#012#2 /usr/share/php/openmediavault/rpc/serviceabstract.inc(123): call_user_func_array(Array, Array)#012#3 /usr/share/openmediavault/engined/rpc/filesystemmgmt.inc(311): OMV\Rpc\ServiceAbstract->callMethod('enumerateFilesy...', NULL, Array)#012#4 [internal function]: OMVRpcServiceFileSystemMgmt->getList(Array, Array)#012#5 /usr/share/php/openmediavault/rpc/serviceabstract.inc(123): call_user_func_array(Array, Array)#012#6 /usr/share/php/openmediavault/rpc/serviceabstract.inc(149): OMV\Rpc\ServiceAbstract->callMethod('getList', Array, Array)#012#7 /usr/share/php/openmediavault/rpc/serviceabstract.inc(565): OMV\Rpc\ServiceAbstract->OMV\Rpc\{closure}('/tmp/bgstatusrS...', '/tmp in /usr/share/php/openmediavault/system/filesystem/filesystem.inc on line 643
      3. Nov 13 21:36:35 localhost omv-engined[2768]: PHP Fatal error: Uncaught Error: Call to undefined function OMV\System\Filesystem\bcmul() in /usr/share/php/openmediavault/system/filesystem/filesystem.inc:643#012Stack trace:#012#0 /usr/share/openmediavault/engined/rpc/filesystemmgmt.inc(155): OMV\System\Filesystem\Filesystem->getStatistics()#012#1 [internal function]: OMVRpcServiceFileSystemMgmt->enumerateFilesystems(NULL, Array)#012#2 /usr/share/php/openmediavault/rpc/serviceabstract.inc(123): call_user_func_array(Array, Array)#012#3 /usr/share/openmediavault/engined/rpc/filesystemmgmt.inc(311): OMV\Rpc\ServiceAbstract->callMethod('enumerateFilesy...', NULL, Array)#012#4 [internal function]: OMVRpcServiceFileSystemMgmt->getList(Array, Array)#012#5 /usr/share/php/openmediavault/rpc/serviceabstract.inc(123): call_user_func_array(Array, Array)#012#6 /usr/share/php/openmediavault/rpc/serviceabstract.inc(149): OMV\Rpc\ServiceAbstract->callMethod('getList', Array, Array)#012#7 /usr/share/php/openmediavault/rpc/serviceabstract.inc(565): OMV\Rpc\ServiceAbstract->OMV\Rpc\{closure}('/tmp/bgstatusx9...', '/tmp in /usr/share/php/openmediavault/system/filesystem/filesystem.inc on line 643
      4. Nov 13 21:36:49 localhost omv-engined[2800]: PHP Fatal error: Uncaught Error: Call to undefined function bccomp() in /usr/share/php/openmediavault/functions.inc:689#012Stack trace:#012#0 /usr/share/php/openmediavault/system/storage/storagedevice.inc(72): binary_format('2000398934016')#012#1 /usr/share/openmediavault/engined/rpc/smart.inc(96): OMV\System\Storage\StorageDevice->getDescription()#012#2 [internal function]: OMVRpcServiceSmart->enumerateDevices(NULL, Array)#012#3 /usr/share/php/openmediavault/rpc/serviceabstract.inc(123): call_user_func_array(Array, Array)#012#4 /usr/share/openmediavault/engined/rpc/smart.inc(165): OMV\Rpc\ServiceAbstract->callMethod('enumerateDevice...', NULL, Array)#012#5 [internal function]: OMVRpcServiceSmart->getList(Array, Array)#012#6 /usr/share/php/openmediavault/rpc/serviceabstract.inc(123): call_user_func_array(Array, Array)#012#7 /usr/share/php/openmediavault/rpc/serviceabstract.inc(149): OMV\Rpc\ServiceAbstract->callMethod('getList', Array, Array)#012#8 /usr/share/php/openmediavault/rpc/serviceabstract.inc(565): OMV\Rpc\ServiceAbstract->OMV\Rpc\{closure}('/tmp in /usr/share/php/openmediavault/functions.inc on line 689
      5. Nov 13 21:36:52 localhost omv-engined[2814]: PHP Fatal error: Uncaught Error: Call to undefined function bccomp() in /usr/share/php/openmediavault/functions.inc:689#012Stack trace:#012#0 /usr/share/php/openmediavault/system/storage/storagedevice.inc(72): binary_format('2000398934016')#012#1 /usr/share/openmediavault/engined/rpc/smart.inc(96): OMV\System\Storage\StorageDevice->getDescription()#012#2 [internal function]: OMVRpcServiceSmart->enumerateDevices(NULL, Array)#012#3 /usr/share/php/openmediavault/rpc/serviceabstract.inc(123): call_user_func_array(Array, Array)#012#4 /usr/share/openmediavault/engined/rpc/smart.inc(165): OMV\Rpc\ServiceAbstract->callMethod('enumerateDevice...', NULL, Array)#012#5 [internal function]: OMVRpcServiceSmart->getList(Array, Array)#012#6 /usr/share/php/openmediavault/rpc/serviceabstract.inc(123): call_user_func_array(Array, Array)#012#7 /usr/share/php/openmediavault/rpc/serviceabstract.inc(149): OMV\Rpc\ServiceAbstract->callMethod('getList', Array, Array)#012#8 /usr/share/php/openmediavault/rpc/serviceabstract.inc(565): OMV\Rpc\ServiceAbstract->OMV\Rpc\{closure}('/tmp in /usr/share/php/openmediavault/functions.inc on line 689
      6. Nov 13 21:36:57 localhost omv-engined[2836]: PHP Fatal error: Uncaught Error: Call to undefined function bccomp() in /usr/share/php/openmediavault/functions.inc:689#012Stack trace:#012#0 /usr/share/php/openmediavault/system/storage/storagedevice.inc(72): binary_format('31914983424')#012#1 /usr/share/openmediavault/engined/rpc/diskmgmt.inc(85): OMV\System\Storage\StorageDevice->getDescription()#012#2 [internal function]: OMVRpcServiceDiskMgmt->enumerateDevices(NULL, Array)#012#3 /usr/share/php/openmediavault/rpc/serviceabstract.inc(123): call_user_func_array(Array, Array)#012#4 /usr/share/openmediavault/engined/rpc/diskmgmt.inc(119): OMV\Rpc\ServiceAbstract->callMethod('enumerateDevice...', NULL, Array)#012#5 [internal function]: OMVRpcServiceDiskMgmt->getList(Array, Array)#012#6 /usr/share/php/openmediavault/rpc/serviceabstract.inc(123): call_user_func_array(Array, Array)#012#7 /usr/share/php/openmediavault/rpc/serviceabstract.inc(149): OMV\Rpc\ServiceAbstract->callMethod('getList', Array, Array)#012#8 /usr/share/php/openmediavault/rpc/serviceabstract.inc(565): OMV\Rpc\ServiceAbstract->OMV\Rpc\{clos in /usr/share/php/openmediavault/functions.inc on line 689
      Display All
      I read that omv requires php 7.0. I guess I somwhere updated to php 7.2 :/

      But I still have php 7.0 installed.

      Now via update-alternatives --config php I saw that default php version is 7.2. So I changed it to 7.0 and rebooted.

      Unfortunatly this did not solve the issue :( How can I force omv to use php 7.0?
      Or maybe I should install php 5.6 and try that??
    • You probably upgraded to buster (Debian 10). Your system is a mess and I recommend starting over.
      omv 4.1.14 arrakis | 64 bit | 4.15 proxmox kernel | omvextrasorg 4.1.13
      omv-extras.org plugins source code and issue tracker - github

      Please read this before posting a question and this and this for docker questions.
      Please don't PM for support... Too many PMs!
    • ryecoaaron wrote:

      You probably upgraded to buster (Debian 10). Your system is a mess and I recommend starting over.
      No, I upgraded from debian jessie to debian stretch using omv-upgrade.


      I'm running omv on top of armbian os. Debian buster isn't avaiable via armbian stable.

      Is there nothing else I can do to fix this? I didn't think a dedicated nas app/os would break after a simple system upgrade. But to be honest, I just started using it a few month agao. I know too little about omv to judge here, maybe one should "stay in omv" and use it as an os rather than an app in you os. I saw there are many plugins for all sorts of apps also docker (which I still didn't tinker with yet).

      Armbian os is still rock solid after the upgrade.

      Is there at least a backup option of omv settings and network shares I can later restore? Some tabs in webif still work.

      The post was edited 1 time, last by trohn_javolta ().

    • Try to install the package php-bcmath which should be installed by the package manager automatically because it is a dependency of the openmediavault package.
      Absolutely no support through PM!

      I must not fear.
      Fear is the mind-killer.
      Fear is the little-death that brings total obliteration.
      I will face my fear.
      I will permit it to pass over me and through me.
      And when it has gone past I will turn the inner eye to see its path.
      Where the fear has gone there will be nothing.
      Only I will remain.

      Litany against fear by Bene Gesserit
    • trohn_javolta wrote:

      No, I upgraded from debian jessie to debian stretch using omv-upgrade.
      I'm sorry but iIf your system has php 7.2 on it, you at least upgraded some components to buster. There is no php 7.2 in stretch backports.

      trohn_javolta wrote:

      I'm running omv on top of armbian os. Debian buster isn't avaiable via armbian stable.
      armbian is Debian and uses the normal Debian repos. All it would take is an additional entry to sources.list (or another list in /etc/apt/sources.list.d/) to get buster packages.

      trohn_javolta wrote:

      Is there nothing else I can do to fix this? I didn't think a dedicated nas app/os would break after a simple system upgrade.
      Most upgrades are fine. Seems like some tinkering outside the normal upgrade happened.

      trohn_javolta wrote:

      Is there at least a backup option of omv settings and network shares I can later restore? Some tabs in webif still work.
      No.
      omv 4.1.14 arrakis | 64 bit | 4.15 proxmox kernel | omvextrasorg 4.1.13
      omv-extras.org plugins source code and issue tracker - github

      Please read this before posting a question and this and this for docker questions.
      Please don't PM for support... Too many PMs!
    • votdev wrote:

      Try to install the package php-bcmath which should be installed by the package manager automatically because it is a dependency of the openmediavault package.
      Oh no, apt-get tells me it's already installed :( Any other ideas?


      ryecoaaron wrote:

      I'm sorry but iIf your system has php 7.2 on it, you at least upgraded some components to buster. There is no php 7.2 in stretch backports.
      Hmm.. that's strange. I checked sources.list and all files in /etc/apt/sources.list.d and nowhere is a buster entry..
    • trohn_javolta wrote:

      I checked sources.list and all files in /etc/apt/sources.list.d and nowhere is a buster entry..
      What is the output of: dpkg -l | grep php
      omv 4.1.14 arrakis | 64 bit | 4.15 proxmox kernel | omvextrasorg 4.1.13
      omv-extras.org plugins source code and issue tracker - github

      Please read this before posting a question and this and this for docker questions.
      Please don't PM for support... Too many PMs!
    • ryecoaaron wrote:

      trohn_javolta wrote:

      I checked sources.list and all files in /etc/apt/sources.list.d and nowhere is a buster entry..
      What is the output of: dpkg -l | grep php

      Source Code

      1. ii libapache2-mod-php7.0 7.0.32-2+0~20181015120635.4+jessie~1.gbpa6b8cf armhf server-side, HTML-embedded scripting language (Apache 2 module)
      2. ii php-bcmath 2:7.2+68+0~20181104184927.10+jessie~1.gbp679ac9 all Bcmath module for PHP [default]
      3. ii php-cgi 2:7.2+68+0~20181104184927.10+jessie~1.gbp679ac9 all server-side, HTML-embedded scripting language (CGI binary) (default)
      4. ii php-common 2:68+0~20181104184927.10+jessie~1.gbp679ac9 all Common files for PHP packages
      5. ii php-mail 1.3.0-1 all Class that provides multiple interfaces for sending emails
      6. ii php-pam 1.0.3-1 armhf pam module for PHP 7
      7. rc php5-cgi 5.6.36+dfsg-0+deb8u1 armhf server-side, HTML-embedded scripting language (CGI binary)
      8. rc php5-cli 5.6.36+dfsg-0+deb8u1 armhf command-line interpreter for the php5 scripting language
      9. rc php5-common 5.6.36+dfsg-0+deb8u1 armhf Common files for packages built from the php5 source
      10. rc php5-fpm 5.6.36+dfsg-0+deb8u1 armhf server-side, HTML-embedded scripting language (FPM-CGI binary)
      11. rc php5-json 1.3.6-1 armhf JSON module for php5
      12. rc php5-pam 1.0.3-4 armhf pam module for PHP 5
      13. ii php7.0 7.0.32-2+0~20181015120515.7+jessie~1.gbpa6b8cf all server-side, HTML-embedded scripting language (metapackage)
      14. ii php7.0-bz2 7.0.32-2+0~20181015120635.4+jessie~1.gbpa6b8cf armhf bzip2 module for PHP
      15. ii php7.0-cli 7.0.32-2+0~20181015120635.4+jessie~1.gbpa6b8cf armhf command-line interpreter for the PHP scripting language
      16. ii php7.0-common 7.0.32-2+0~20181015120635.4+jessie~1.gbpa6b8cf armhf documentation, examples and common module for PHP
      17. ii php7.0-curl 7.0.32-2+0~20181015120635.4+jessie~1.gbpa6b8cf armhf CURL module for PHP
      18. ii php7.0-fpm 7.0.32-2+0~20181015120635.4+jessie~1.gbpa6b8cf armhf server-side, HTML-embedded scripting language (FPM-CGI binary)
      19. ii php7.0-gd 7.0.32-2+0~20181015120635.4+jessie~1.gbpa6b8cf armhf GD module for PHP
      20. ii php7.0-json 7.0.32-2+0~20181015120635.4+jessie~1.gbpa6b8cf armhf JSON module for PHP
      21. ii php7.0-mbstring 7.0.32-2+0~20181015120635.4+jessie~1.gbpa6b8cf armhf MBSTRING module for PHP
      22. ii php7.0-mcrypt 7.0.32-2+0~20181015120635.4+jessie~1.gbpa6b8cf armhf libmcrypt module for PHP
      23. ii php7.0-mysql 7.0.32-2+0~20181015120635.4+jessie~1.gbpa6b8cf armhf MySQL module for PHP
      24. ii php7.0-opcache 7.0.32-2+0~20181015120635.4+jessie~1.gbpa6b8cf armhf Zend OpCache module for PHP
      25. ii php7.0-readline 7.0.32-2+0~20181015120635.4+jessie~1.gbpa6b8cf armhf readline module for PHP
      26. ii php7.0-sqlite3 7.0.32-2+0~20181015120635.4+jessie~1.gbpa6b8cf armhf SQLite3 module for PHP
      27. ii php7.0-tidy 7.0.32-2+0~20181015120635.4+jessie~1.gbpa6b8cf armhf tidy module for PHP
      28. ii php7.0-xml 7.0.32-2+0~20181015120635.4+jessie~1.gbpa6b8cf armhf DOM, SimpleXML, WDDX, XML, and XSL module for PHP
      29. ii php7.0-zip 7.0.32-2+0~20181015120635.4+jessie~1.gbpa6b8cf armhf Zip module for PHP
      30. ii php7.2-bcmath 7.2.11-4+0~20181106031710.10+jessie~1.gbp789850 armhf Bcmath module for PHP
      31. ii php7.2-cgi 7.2.11-4+0~20181106031710.10+jessie~1.gbp789850 armhf server-side, HTML-embedded scripting language (CGI binary)
      32. ii php7.2-cli 7.2.11-4+0~20181106031710.10+jessie~1.gbp789850 armhf command-line interpreter for the PHP scripting language
      33. ii php7.2-common 7.2.11-4+0~20181106031710.10+jessie~1.gbp789850 armhf documentation, examples and common module for PHP
      34. ii php7.2-json 7.2.11-4+0~20181106031710.10+jessie~1.gbp789850 armhf JSON module for PHP
      35. ii php7.2-opcache 7.2.11-4+0~20181106031710.10+jessie~1.gbp789850 armhf Zend OpCache module for PHP
      36. ii php7.2-readline 7.2.11-4+0~20181106031710.10+jessie~1.gbp789850 armhf readline module for PHP
      Display All
    • Huh, those are php 7.2 packages built for jessie. Those definitely didn't come from a Debian repo. What is the output of:
      cat /etc/apt/sources.list
      cat /etc/apt/sources.list.d/*
      omv 4.1.14 arrakis | 64 bit | 4.15 proxmox kernel | omvextrasorg 4.1.13
      omv-extras.org plugins source code and issue tracker - github

      Please read this before posting a question and this and this for docker questions.
      Please don't PM for support... Too many PMs!
    • ryecoaaron wrote:

      Huh, those are php 7.2 packages built for jessie. Those definitely didn't come from a Debian repo. What is the output of:
      cat /etc/apt/sources.list
      cat /etc/apt/sources.list.d/*

      Source Code

      1. root@hc2:~# cat /etc/apt/sources.list
      2. deb http://httpredir.debian.org/debian stretch main contrib non-free
      3. #deb-src http://httpredir.debian.org/debian stretch main contrib non-free
      4. deb http://httpredir.debian.org/debian stretch-updates main contrib non-free
      5. #deb-src http://httpredir.debian.org/debian stretch-updates main contrib non-free
      6. #deb http://httpredir.debian.org/debian stretch-backports main contrib non-free
      7. #deb-src http://httpredir.debian.org/debian stretch-backports main contrib non-free
      8. deb http://security.debian.org/ stretch/updates main contrib non-free
      9. #deb-src http://security.debian.org/ stretch/updates main contrib non-free
      Display All

      Source Code

      1. deb http://apt.armbian.com stretch main stretch-utils stretch-desktop
      2. deb http://download.mono-project.com/repo/debian raspbianstretch main
      3. deb https://deb.nodesource.com/node_7.x jessie main
      4. deb-src https://deb.nodesource.com/node_7.x jessie main
      5. # This is file is generated.
      6. # OMV-Extras repos
      7. #
      8. # OMV-Extras.org
      9. deb https://dl.bintray.com/openmediavault-plugin-developers/arrakis stretch main
      10. # OMV-Extras.org Testing
      11. deb https://dl.bintray.com/openmediavault-plugin-developers/arrakis-testing stretch main
      12. deb http://httpredir.debian.org/debian stretch-backports main contrib non-free
      13. deb http://packages.openmediavault.org/public/ arrakis main
      14. deb https://openmediavault.github.io/packages/ arrakis main
      15. # deb http://downloads.sourceforge.net/project/openmediavault/packages/ arrakis main
      16. deb [trusted=yes] file:/var/cache/openmediavault/archives /
      17. deb https://packages.sury.org/php/ jessie main
      18. deb http://ppa.launchpad.net/webupd8team/java/ubuntu xenial main
      19. deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu xenial main
      Display All
      That sury.org/php line?..Damn...I did not add this. It could only be Atomic-Toolkit: github.com/htpcBeginner/AtoMiC-ToolKit I guess.. ;(
    • trohn_javolta wrote:

      That sury.org/php line?..Damn...I did not add this. It could only be Atomic-Toolkit: github.com/htpcBeginner/AtoMiC-ToolKit I guess.
      Technically you did add it. That toolkit looks like it takes over an install which is very bad for OMV. This is why running things in docker is much better because it doesn't add tons of things to your OMV install. So, I stand by my original statement that you need to re-install to fix this mess.
      omv 4.1.14 arrakis | 64 bit | 4.15 proxmox kernel | omvextrasorg 4.1.13
      omv-extras.org plugins source code and issue tracker - github

      Please read this before posting a question and this and this for docker questions.
      Please don't PM for support... Too many PMs!
    • ryecoaaron wrote:

      trohn_javolta wrote:

      That sury.org/php line?..Damn...I did not add this. It could only be Atomic-Toolkit: github.com/htpcBeginner/AtoMiC-ToolKit I guess.
      Technically you did add it. That toolkit looks like it takes over an install which is very bad for OMV. This is why running things in docker is much better because it doesn't add tons of things to your OMV install. So, I stand by my original statement that you need to re-install to fix this mess.
      That's a bummer. I don't understand why I can't just tell omv to us php 7.0? I read in debian stretch different php versions can run in parallel without problems. And with update-alternatives --config php I chose php 7.0 as default version. So why can't omv just use it?
    • trohn_javolta wrote:

      That's a bummer. I don't understand why I can't just tell omv to us php 7.0? I read in debian stretch different php versions can run in parallel without problems. And with update-alternatives --config php I chose php 7.0 as default version. So why can't omv just use it?
      OMV explicitly puts its configs in the /etc/php/7.0 directory. So, having the other packages on the system aren't the problem. The toolkit probably altered other files because it wants to configure a web server. I have no idea what it did but I wouldn't want to spend the time to figure it out. It would take less time to reinstall (at least for me).
      omv 4.1.14 arrakis | 64 bit | 4.15 proxmox kernel | omvextrasorg 4.1.13
      omv-extras.org plugins source code and issue tracker - github

      Please read this before posting a question and this and this for docker questions.
      Please don't PM for support... Too many PMs!
    • ryecoaaron wrote:

      OMV explicitly puts its configs in the /etc/php/7.0 directory. So, having the other packages on the system aren't the problem. The toolkit probably altered other files because it wants to configure a web server. I have no idea what it did but I wouldn't want to spend the time to figure it out. It would take less time to reinstall (at least for me).
      How can I remove openmediavault? I want to reinstall it via armbian-config to get omv again with optimised settings.
      Like that:
      apt-get purge openmediavault
      apt-get autoremove

      On armbian forum I didn't get an answer yet and uninstall via armbian-config is not implemented.
    • trohn_javolta wrote:

      How can I remove openmediavault? I want to reinstall it via armbian-config to get omv again with optimised settings.
      Like that:
      apt-get purge openmediavault
      apt-get autoremove
      Yes but I would use apt-get --purge autoremove. Just don't assume armbian-config is going to magically fix this system.
      omv 4.1.14 arrakis | 64 bit | 4.15 proxmox kernel | omvextrasorg 4.1.13
      omv-extras.org plugins source code and issue tracker - github

      Please read this before posting a question and this and this for docker questions.
      Please don't PM for support... Too many PMs!
    • Users Online 1

      1 Guest