PhpSysInfo
Contents
Getting More Info
After the one click install of phpsysinfo in Amahi 6 or greater, you need to do some modifications to get all system information displayed.
Install lm-sensors
Fedora
open a terminal session and login as root or if you have sudo configured use sudo in front of all commands.
type
su -
at the prompt enter your root password
then type
yum install lm_sensors sensors-detect
- NOTE:
yum
(deprecated) has been replaced withdnf
as the package manager for Fedora 23 and greater.
- NOTE:
Ubuntu
sudo apt-get install lm-sensors sudo sensors-detect
Answer the questions. At the end of sensors-detect, Type "yes" to have sensors-detect insert modules into /etc/modules, or edit /etc/modules yourself service module-init-tools start
See Install and configure lm-sensors for additional help.
Configure Settings
first make a backup of your original configuration file
cd /var/hda/web-apps/phpsysinfo/html cp phpsysinfo.ini phpsysinfo.inibak
if neccessary
yum install nano
- NOTE:
yum
(deprecated) has been replaced withdnf
as the package manager for Fedora 23 and greater.
- NOTE:
modify the configuration file
nano phpsysinfo.ini
optional changes
DEFAULT_LANG="en" LOAD_BAR=true USE_VHOST=true SENSOR_PROGRAM="LMSensors" HDD_TEMP="command" HIDE_FS_TYPES="tmpfs,devtmpfs"
For Ubuntu run also
sudo dpkg-reconfigure hddtemp
and set suid to YES
after saving phpsysinfo.ini phpsysinfo will provide voltage, fan, temperature data and more
Configure SMART information
Ref: How to install phpSysInfo
yum install smartmontools
in phpsysinfo.ini (located in /var/hda/web-apps/phpsysinfo/html)
ADD_PATHS="/usr/sbin,/sbin"
PLUGINS="SMART"
DEVICES="/dev/sda,/dev/sdb"
You also need to change the plugin script and give apache permission to use smartctl with the sudo command:
Because the cmd 'smartctl' is only available to root; it will not work for your web server, we need to set some permissions on it and change the command it uses: First we make a copy of the original
cp /var/hda/web-apps/phpsysinfo/html/plugins/smart/class.smart.inc.php /var/hda/web-apps/phpsysinfo/html/plugins/smart/class.smart.inc.php.bak
Now edit the following file:
nano /var/hda/web-apps/phpsysinfo/html/plugins/smart/class.smart.inc.php
Search for (Ctrl+w) (line 60): --all It has this:
if ( trim($diskname != "") && (CommonFunctions::executeProgram('smartctl', '--all'.' '.$diskdev.' '.$diskname, $buffer, PSI_DEBUG))) {
Change it to:
if ( trim($diskname != "") && (CommonFunctions::executeProgram('sudo', 'smartctl --all '.' '.$diskdev.' '.$diskname, $buffer, PSI_DEBUG))) {
Just a note that all we changed was:
'smartctl', '--all'
To:
'sudo', 'smartctl --all '
Change yours to be the same, including the space: all '
Be sure that line isn't broken into multiple lines. If it is you'll see on your xml.php?plugin=SMART page errors containing \n
And be sure that smartctl
is the correct path.
Next we need to add your web server group to sudo to be able to run smartctl
cmds:
sudo visudo
Paste in this line under # User privilege specification, changing your
web server group (apache) to your own. For example I have pasted in:
apache ALL=NOPASSWD: /usr/sbin/smartctl