MEWBIES@: Facebook Twitter G+ YouTube DeviantArt Forum Wall
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
██ ██
█▌ - HOW TO INSTALL PHPSYSINFO FOR WINDOWS - █▌
█▌ █▌
█ ▐▌
█ phpSysInfo is fabulous PHP script to easily check on your computer's ▐▌
█ system information. From the site "It will display items such as Uptime, ▐▌
█ CPU, Memory, SCSI, IDE, PCI, Ethernet, Floppy, and Video Information." ▐▌
█ phpSysInfo site is HERE, SourceForge page is HERE and GitHub page HERE. ▐▌
█ There is a demo HERE. The forum is HERE and HERE. ▐▌
█ ▐▌
█ PREREQUISITES: ▐▌
█ `````````````` ▐▌
█ Web Server ▐▌
█ PHP 5.2 + ▐▌
█ ▐▌
█ INSTALL PHPSYSINFO: ▐▌
█ ``````````````````` ▐▌
█ It's as simple as extract the files from phpsysinfo-XXX.tar.gz to a ▐▌
█ directory, for example, phpsysinfo, and placing that directory in your ▐▌
█ htdocs directory. For example: D:\xampp\htdocs\phpsysinfo ▐▌
█ Now without doing any edits it works. View it by going to ▐▌
█ http://yoursite.com/phpsysinfo/ ▐▌
█ It will list SYSTEM VITAL, HARDWARE INFORMATION, MEMORY USAGE, MOUNTED ▐▌
█ FILESYSTEMS & NETWORK USAGE. ▐▌
█ ▐▌
█ I'm going to list all plugins and tools that are included in phpsysinfo ▐▌
█ even if I didn't manage to get them working. The reason being is that ▐▌
█ either I don't have the hardware for it (such as battery) or they aren't ▐▌
█ supported in Windows but each one I'm very close to having them work, if ▐▌
█ only... listed for each. ▐▌
█ ▐▌
█ PHPSYSINFO INCLUDED PLUGINS - WORKING ▐▌
█ PS ▐▌
█ PSSTATUS ▐▌
█ PLUGIN NOTES ▐▌
█ CHANGE HEADING TITLE ▐▌
█ PLUGINS & TOOLS I DON'T HAVE THE HARDWARE FOR ▐▌
█ APCUPSD ▐▌
█ BAT ▐▌
█ IPMI ▐▌
█ MDSTATUS ▐▌
█ NON WORKING WINDOW PLUGINS ▐▌
█ SMART ▐▌
█ QUOTA ▐▌
█ OTHER TOOLS NOT SUPPORTED IN WINDOWS (hddtemp & lmsensors) ▐▌
█ TROUBLE SHOOTING ▐▌
█ PASSWORD PROTECT PHPSYSINFO OR DISABLE IT ▐▌
█ ▐▌
█ PHPSYSINFO INCLUDED PLUGINS - WORKING: ▐▌
█ `````````````````````````````````````` ▐▌
█ Included with v3.0.4 are a variety of plugins (phpsysinfo/plugins/) to ▐▌
█ enable more information. Each plugin has its own *.config.php file ▐▌
█ containing instructions how to enable it. A few of them work very easily ▐▌
█ in Windows and the others simply do not at this point with the code ▐▌
█ provided. I'll list first the plugins that do work. ▐▌
█ ▐▌
█ PS: ▐▌
█ ``` ▐▌
█ Process Statistic Data - to show your currently running services. ▐▌
█ Open 'config.php', found here - ...phpsysinfo\config.php in a ▐▌
█ text editor, such as WordPad. ▐▌
█ Change this line: ▐▌
█ define('PSI_PLUGINS', false); ▐▌
█ To: ▐▌
█ define('PSI_PLUGINS', 'PS'); ▐▌
█ ▐▌
█ Reload your phpsysinfo page. It should now have a new section ▐▌
█ 'PROCESS STATUS' with a drop down tree 'System' showing your running ▐▌
█ services. ▐▌
█ ▐▌
█ PSSTATUS: ▐▌
█ ````````` ▐▌
█ Process Statistic Data for programs such as Explorer, httpd, mIRC, or ▐▌
█ whatever programs 'you' would like it to list. ▐▌
█ Note that you can include/exclude other applications if you like. ▐▌
█ ▐▌
█ Open 'config.php', found here - ...phpsysinfo\config.php ▐▌
█ Change this line: ▐▌
█ define('PSI_PLUGINS', false); ▐▌
█ To: ▐▌
█ define('PSI_PLUGINS', 'PSStatus'); ▐▌
█ Or if you had other plugins on it, it would be for example: ▐▌
█ define('PSI_PLUGINS', 'PS,PSStatus'); ▐▌
█ ▐▌
█ Then open 'PSStatus.config.php', found here ▐▌
█ ...\phpsysinfo\plugins\PSStatus\PSStatus.config.php ▐▌
█ Change this line: ▐▌
█ define('PSI_PLUGIN_PSSTATUS_PROCESSES', 'mysqld, sshd, explorer.exe'); ▐▌
█ to list the programs you would like it to report on, for example: ▐▌
█ define('PSI_PLUGIN_PSSTATUS_PROCESSES', 'cmd.exe, mysqld.exe, httpd.exe, mirc.exe, ftprush.exe, explorer.exe, firefox.exe, notepad++.exe, putty.exe, SecureCRT.exe, SecureFX.exe, xampp-control.exe');
█ ▐▌
█ If you aren't sure of a programs name - either look in it's directory for ▐▌
█ the main .exe or open Windows Task Manger - Ctrl+Alt+Del keys/ Processes ▐▌
█ tab, to view currently running processes. ▐▌
█ ▐▌
█ Reload your phpsysinfo page. It should now have a new section ▐▌
█ 'PROCESS STATUS' showing your running programs that you entered in above. ▐▌
█ ▐▌
█ PLUGIN NOTES: ▐▌
█ ````````````` ▐▌
█ 1) If a plugin isn't working correctly for you, you can trouble shoot the ▐▌
█ error by going to: ▐▌
█ http://yoursite.com/phpsysinfo/xml.php?plugin=PLUGINS_NAME, for example: ▐▌
█ http://yoursite.com/phpsysinfo/xml.php?plugin=MDStatus ▐▌
█ http://yoursite.com/phpsysinfo/xml.php?plugin=SMART ▐▌
█ ▐▌
█ 2) To have your phpsysinfo page display data from a file and not a command,▐▌
█ you would change in the plugin's *.config.php file 'command' to 'data'. ▐▌
█ For example I did this for BAT & MDStatus since I do not have either, but ▐▌
█ wanted to do the steps for this tutorial. Note that the data shown on ▐▌
█ phpsysinfo page will be false and or not up to date with this method-since ▐▌
█ it is only showing the data that you have given it in its *txt file. ▐▌
█ For my 'fake' data *.txt files I just used the same data as phpsysinfo, ▐▌
█ for example HERE, HERE and HERE. ▐▌
█ ▐▌
█ NOTE REGARDING 2) - This is not possible for all the plugins with the ▐▌
█ present code in Windows. The reason I stress this, is this could be the key▐▌
█ to getting the other plugins that do not work in Windows - to work easily. ▐▌
█ X program could be scheduled to run at x intervals with the results output ▐▌
█ to a data file, then phpsysinfo would read from it if it could only read ▐▌
█ from the data files in Windows. ▐▌
█ ▐▌
█ CHANGE HEADING TITLE: ▐▌
█ ````````````````````` ▐▌
█ If you don't want PS & PSStatus plugins to have the same section title ▐▌
█ 'PROCESS STATUS' you can change this, if you don't care skip this section. ▐▌
█ For example to change PSStatus section heading for example to: ▐▌
█ PROCESS STATUS - PROGRAMS ▐▌
█ Open this file ...\phpsysinfo\plugins\PSStatus\lang\en.xml ▐▌
█ Change: <exp>Process Status</exp> ▐▌
█ To: <exp>Process Status - Programs</exp> ▐▌
█ PS plugin open this file ...\phpsysinfo\plugins\PS\lang\en.xml and do the ▐▌
█ same thing to your preference. ▐▌
█ Reload your phpsysinfo page to view the changes. ▐▌
█ ▐▌
█ PLUGINS & TOOLS I DON'T HAVE THE HARDWARE FOR: ▐▌
█ `````````````````````````````````````````````` ▐▌
█ Listed here are plugins & tools that I do not have the hardware to try if ▐▌
█ they work in Windows. Tho I did try with a data file (as mentioned above ▐▌
█ in PLUGIN NOTES), and these do work with a data file. ▐▌
█ If you do have any of the plugins below working please inform us at ▐▌
█ mewbies forum so I may update them to working plugins. ▐▌
█ ▐▌
█ APCUPSD: ▐▌
█ ```````` ▐▌
█ At the end of phpsysinfo's config.php file you'll see an entry for UPS. I ▐▌
█ don't have a UPS so my install instructions are just some steps taken and ▐▌
█ notes. Note that your UPS must have a 'data port' (not just a power cable ▐▌
█ as some models). phpsysinfo supports Nut, which is only for Linux, and ▐▌
█ Apcupsd, which is for Linux, Mac & Win. ▐▌
█ ▐▌
█ Apcupsd site is HERE, they offer the program for Linux, Win & Mac. Download▐▌
█ Win version HERE. The project page is HERE. There isn't a forum but he does▐▌
█ have a mailing list HERE. ▐▌
█ Apcupsd sure is sweet if you have a UPS that is supported; check HERE. ▐▌
█ HERE is his real-time apcupsd, click on 'Local Host' for some goodies :) ▐▌
█ ▐▌
█ APCUPSD INSTALL: ▐▌
█ 1. Install it as a service, either on the same drive your web server is on ▐▌
█ or you'll receive the error 'Cannot open hosts file' if your web server ▐▌
█ isn't on your main C: drive. ▐▌
█ Or to install on to a different drive that your web server is on, for ▐▌
█ example C:, you'll need to (from manual.html) "relocate hosts.conf and ▐▌
█ apcupsd.css from the apcupsd install location to \apcupsd\etc\apcupsd on ▐▌
█ the appropriate drive". ▐▌
█ ▐▌
█ 2. After installing copy the contents of \apcupsd\cgi installation your ▐▌
█ web server's \cgi-bin\ directory, e.g. D:\xampp\cgi-bin\ ▐▌
█ ▐▌
█ 3. apcupsd will need to use a port, default is 3551 on your local box ▐▌
█ (127.0.0.1) to function. That port will need to be free or apcupsd will ▐▌
█ not function properly. ▐▌
█ ▐▌
█ If you aren't sure if a port is open or not, you can get a free little ▐▌
█ tool to check if open and forwarded correctly 'PFPortChecker' HERE. ▐▌
█ ▐▌
█ Exit APCUPSD tray icon, so that it is not trying that port, when you want ▐▌
█ to test it. Type in the port you want to test, such as 3551, click Check ▐▌
█ Me. If it states 'Could not connect to the portforward.com servers.' ▐▌
█ continue to the next step to forward the port. ▐▌
█ (You have to allow PFPortChecker out of your firewall for the test to ▐▌
█ work.) ▐▌
█ ▐▌
█ 4. You might need to 'forward the port'. You would do that in your router. ▐▌
█ Depending on your model is how you would do it. You can check HERE for ▐▌
█ directions for your model. ▐▌
█ ▐▌
█ For myself I have a D-Link and these are the steps that I take to forward ▐▌
█ a port: ▐▌
█ Open your router page- in your web browser enter: http://192.168.1.1 ▐▌
█ Then enter the name and pass, I think the default for most is admin admin. ▐▌
█ ▐▌
█ Advanced tab/Virtual Server button/LAN IP drop down box, make sure that is ▐▌
█ yours/click the radio button next to User/click Add button/Rule Name, ▐▌
█ enter anything you like such as apcupsd/Protocol TCP/Port Start, End, Map, ▐▌
█ Map End- enter 3551 for all, or whatever port you choose/click Apply/click ▐▌
█ Virtual Server button again/click User radio button again/you should now ▐▌
█ see your new entry, for example apcupsd. Select the new entry, click the ▐▌
█ 'Add>' button to send it to Applied Rules, then click Apply. ▐▌
█ ▐▌
█ Now in PFPortChecker test that port again. It should state 'Your port is ▐▌
█ OPEN!'. ▐▌
█ ▐▌
█ Once you have the port working that you want APCUPSD to use; close your ▐▌
█ router page and PFPortChecker, then start apcupsd Apctray (in your ▐▌
█ Programs/Apcupsd Menu). ▐▌
█ ▐▌
█ 5. Open apcupsd.conf, here \apcupsd\etc\apcupsd\apcupsd.conf, in a text ▐▌
█ editor and edit according to your UPS model. ▐▌
█ For example these are the entries on my apcupsd.conf file that I have ▐▌
█ changed: ▐▌
█ UPSNAME UPSTEST ▐▌
█ SCRIPTDIR D:\apcupsd\etc\apcupsd ▐▌
█ PWRFAILDIR D:\apcupsd\etc\apcupsd ▐▌
█ NOLOGINDIR D:\apcupsd\etc\apcupsd ▐▌
█ EVENTSFILE D:\apcupsd\etc\apcupsd\apcupsd.events ▐▌
█ STATFILE D:\apcupsd\etc\apcupsd\apcupsd.status ▐▌
█ ▐▌
█ 6. Done. Go to your http://yoursite/cgi-bin/multimon.cgi ▐▌
█ Click on the System name to go to http://yoursite/cgi-bin/upsstats.cgi ▐▌
█ ▐▌
█ You can right click on APCUPSD tray icon (\apcupsd\bin\apctray.exe) for ▐▌
█ more information/settings. ▐▌
█ ▐▌
█ If yours is still not working, you probably need to edit again your ▐▌
█ \apcupsd\etc\apcupsd\apcupsd.conf ▐▌
█ ▐▌
█ Once you have that working, move on to enabling this in phpsysinfo - ▐▌
█ ▐▌
█ INTEGRATE APCUPSD ONTO PHPSYSINFO PAGE: ▐▌
█ 1. Then add to your Environment Variables, under User apcupsd, for ▐▌
█ example: ;D:\apcupsd\bin ▐▌
█ If you don't know how to add to your Environment Variables read my ▐▌
█ tutorial HERE. ▐▌
█ Test the command is working in a fresh cmd prompt window by typing in: ▐▌
█ apcaccess ▐▌
█ Since I do not have a UPS, it will only state: ▐▌
█ Error contacting apcupsd @ localhost:3551: Unknown error ▐▌
█ ▐▌
█ 2. Open 'config.php' ...\phpsysinfo\config.php ▐▌
█ Change this: ▐▌
█ define('PSI_ADD_PATHS', false); ▐▌
█ To your install path\bin, for example: ▐▌
█ define('PSI_ADD_PATHS', 'D:\apcupsd\bin''); ▐▌
█ Or if you have smart on there it would be: ▐▌
█ define('PSI_ADD_PATHS', 'C:\smartmontools\bin,D:\apcupsd\bin'); ▐▌
█ ▐▌
█ And at the bottom of the file, change: ▐▌
█ define('PSI_UPS_PROGRAM', false); ▐▌
█ To: ▐▌
█ define('PSI_UPS_PROGRAM', 'Apcupsd'); ▐▌
█ ▐▌
█ 3. Done. Reload your phpsysinfo page to view the changes. ▐▌
█ ▐▌
█ BAT: ▐▌
█ ```` ▐▌
█ Since I'm not doing this on a laptop I can't test if a battery program on ▐▌
█ Windows would work for phpsysinfo page. I did tho try with a fake data ▐▌
█ file from HERE, which does work, click on 'plugin_bat' then download ▐▌
█ 'battery_info1.txt' & 'battery_state1.txt'. ▐▌
█ This is how if you want to use the fake data: ▐▌
█ Download those 2 text files, place them here ...\phpsysinfo\data\ ▐▌
█ Rename them to: 'bat_info.txt' & 'bat_state.txt' ▐▌
█ ▐▌
█ Open this file ...\plugins\BAT\BAT.config.php ▐▌
█ Change this line: ▐▌
█ define('PSI_PLUGIN_BAT_ACCESS', 'command'); ▐▌
█ To: ▐▌
█ define('PSI_PLUGIN_BAT_ACCESS', 'data'); ▐▌
█ ▐▌
█ Open 'config.php' ...\phpsysinfo\config.php ▐▌
█ Change this line: ▐▌
█ define('PSI_PLUGINS', false); ▐▌
█ To: ▐▌
█ define('PSI_PLUGINS', 'BAT'); ▐▌
█ Or if you had other plugins on it, it would be for example: ▐▌
█ define('PSI_PLUGINS', 'PS,PSStatus,BAT'); ▐▌
█ ▐▌
█ Reload your phpsysinfo page. It should now have a new section ▐▌
█ 'BATTERY STATUS' showing the fake data from the txt files. ▐▌
█ ▐▌
█ Since this plugin will read from a data file, I don't see why one could ▐▌
█ not get to work with a program that could output the results to a text ▐▌
█ file. ▐▌
█ ▐▌
█ IPMI (enabled devices) Statistic Data: ▐▌
█ `````````````````````````````````````` ▐▌
█ Intelligent Platform Management Interface ▐▌
█ I won't even list the things I tried to get this functioning on my XP - ▐▌
█ what a failed mess. Maybe some day when I have the mood again I'll start ▐▌
█ over. Some links if you want to give it a go, HERE, HERE, and HERE. And ▐▌
█ the IBM driver HERE and HERE. If you do have this functioning - please ▐▌
█ post at mewbies forum the details :). ▐▌
█ ▐▌
█ So to play, I use the fake data again, which can be found HERE (Download ▐▌
█ GNU tarball). Place it here ...\phpsysinfo\data\ipmi.txt {renaming it to ▐▌
█ ipmi.txt ▐▌
█ Open ...\phpsysinfo\plugins\ipmi\ipmi.config.php ▐▌
█ Change the command line to: ▐▌
█ define('PSI_PLUGIN_IPMI_ACCESS', 'data'); ▐▌
█ Open 'config.php' ...\phpsysinfo\config.php ▐▌
█ Change this line: ▐▌
█ define('PSI_PLUGINS', false); ▐▌
█ To: ▐▌
█ define('PSI_PLUGINS', 'ipmi'); ▐▌
█ Or if you had other plugins on it, it would be for example: ▐▌
█ define('PSI_PLUGINS', 'PS,PSStatus,BAT,ipmi'); ▐▌
█ ▐▌
█ Reload your phpsysinfo page. It should now have a new section 'IPMI Status'▐▌
█ showing the fake data from the txt files. Nice if I can get a working IPMI ▐▌
█ tool :) . Again this should be do-able if it reads from a text file, and ▐▌
█ the program above can output to a text file. ▐▌
█ ▐▌
█ MDSTATUS: ▐▌
█ ````````` ▐▌
█ RAID Statistic Data. I don't have RAID so couldn't test how it works in ▐▌
█ Windows. You can use a fake data file from HERE. ▐▌
█ Put it here ...\phpsysinfo\data\mdstat.txt {renaming it to mdstat.txt ▐▌
█ Open ...\phpsysinfo\plugins\MDStatus\MDStatus.config.php ▐▌
█ Change: ▐▌
█ define('PSI_PLUGIN_MDSTAT_ACCESS', 'file'); ▐▌
█ To: define('PSI_PLUGIN_MDSTAT_ACCESS', 'data'); ▐▌
█ ▐▌
█ Open 'config.php' ...\phpsysinfo\config.php ▐▌
█ Add on your plugin MDStatus, for example: ▐▌
█ define('PSI_PLUGINS', 'PS,PSStatus,BAT,ipmi,MDStatus'); ▐▌
█ Reload your phpsysinfo page. It should now have a new section ▐▌
█ 'RAID Status' showing the fake data from the txt file. ▐▌
█ Again this should be do-able if it reads from a text file and you have a ▐▌
█ program to output the text. ▐▌
█ ▐▌
█ NON WORKING WINDOW PLUGINS: ▐▌
█ ``````````````````````````` ▐▌
█ SMART: ▐▌
█ `````` ▐▌
█ S.M.A.R.T (enabled devices) Statistic Data ▐▌
█ ▐▌
█ I have the smart program working, but I can not get phpsysinfo to read ▐▌
█ from the program or a fake data file from HERE, tho it does on Linux. ▐▌
█ This is what I have done if you want to give it a try: ▐▌
█ ▐▌
█ Download the Windows version of 'S.M.A.R.T. Monitoring Tools' HERE. ▐▌
█ Important read BEFORE installing: ▐▌
█ 1. When installing check the box 'Add install dir to PATH'. (This is so ▐▌
█ that it sets up your Environmental Variable for the command). ▐▌
█ 2. Preference only - to right click on drive and run smartmontools check ▐▌
█ 'Add smartctl to drive menu'. ▐▌
█ 3. Install the program in a path that doesn't have a space in the path ▐▌
█ name, for example: C:\smartmontools\ ▐▌
█ ▐▌
█ After install is finished test that it was setup in your Environment ▐▌
█ Variable by opening cmd prompt and typing in: ▐▌
█ smartctl -h ▐▌
█ Output should be similar to: ▐▌
█ smartctl 5.39.1 2010-01-28 r3054 [i686-pc-mingw32-xp-sp3] ▐▌
█ (sf-win32-5.39.1-1) ▐▌
█ [snip] ▐▌
█ If your output is: ▐▌
█ 'smartctl' is not recognized as an internal or external command, operable ▐▌
█ program or batch file. ▐▌
█ You'll need to set up the Environment Variable for it. To do that view my ▐▌
█ tutorial HERE. Once you have that working continue here. ▐▌
█ ▐▌
█ Open 'config.php' ...\phpsysinfo\config.php ▐▌
█ Change this: ▐▌
█ define('PSI_ADD_PATHS', false); ▐▌
█ To your install path\bin, for example: ▐▌
█ define('PSI_ADD_PATHS', 'C:\smartmontools\bin'); ▐▌
█ ▐▌
█ Add on your plugin SMART, for example: ▐▌
█ define('PSI_PLUGINS', 'PS,PSStatus,BAT,ipmi,MDStatus,SMART'); ▐▌
█ ▐▌
█ Be your your drive is SMART enabled and your 'device type' by entering ▐▌
█ this cmd in a cmd prompt: ▐▌
█ smartctl --all --device C: ▐▌
█ Example of area to look for: ▐▌
█ Device is: In smartctl database [for details use: -P show] ▐▌
█ ATA Version is: 8 ▐▌
█ ATA Standard is: Exact ATA specification draft version not indicated ▐▌
█ [snip] ▐▌
█ SMART support is: Available - device has SMART capability. ▐▌
█ Enabled status cached by OS, trying SMART RETURN STATUS ▐▌
█ cmd. ▐▌
█ SMART support is: Enabled ▐▌
█ [snip] ▐▌
█ So from my output I can see it is SMART enabled and the device type is ▐▌
█ ATA. ▐▌
█ ▐▌
█ Open 'SMART.config.php' here ...\phpsysinfo\plugins\SMART\SMART.config.php ▐▌
█ Change these lines: ▐▌
█ define('PSI_PLUGIN_SMART_ACCESS', 'command'); ▐▌
█ define('PSI_PLUGIN_SMART_DEVICES', '/dev/sda, /dev/sdb'); ▐▌
█ define('PSI_PLUGIN_SMART_DEVICE', false); ▐▌
█ define('PSI_PLUGIN_SMART_IDS', ▐▌
█ '005-RAW_VALUE,194-RAW_VALUE,4-RAW_VALUE,009-RAW_VALUE,012-RAW_VALUE,193-RAW_VALUE,001-RAW_VALUE,007-RAW_VALUE,200-RAW_VALUE');
█ ▐▌
█ To: ▐▌
█ define('PSI_PLUGIN_SMART_ACCESS', 'command'); ▐▌
█ define('PSI_PLUGIN_SMART_DEVICES', 'C:'); ▐▌
█ define('PSI_PLUGIN_SMART_DEVICE', 'ata'); ▐▌
█ define('PSI_PLUGIN_SMART_IDS', '005-VALUE,194-VALUE,192-VALUE,193-VALUE'); ▐▌
█ ▐▌
█ The last line you don't need to change, these are the values it will read ▐▌
█ from smartctl output under the heading 'Vendor Specific SMART Attributes ▐▌
█ with Thresholds' ▐▌
█ View phpsysinfo demo page for a visual understanding under S.M.A.R.T HERE. ▐▌
█ ▐▌
█ Or to read from a data file, the first line should be: ▐▌
█ define('PSI_PLUGIN_SMART_ACCESS', 'data'); ▐▌
█ Place the fake data files here ...\phpsysinfo\data\ renaming them to ▐▌
█ SMART???.txt {I've tried at least 30 different names; none work. ▐▌
█ ▐▌
█ Reload your phpsysinfo page. It should now have a new section 'S.M.A.R.T ▐▌
█ Informations'. ▐▌
█ Mine only states (using command or data): No matching records found (which ▐▌
█ is stated from ...\phpsysinfo\js\jQuery\jquery.dataTables.js line 845: ▐▌
█ "sZeroRecords": "No matching records found", ). ▐▌
█ I can not solve why it won't read from the fake data file either. The ▐▌
█ plugin information page doesn't contain any error either; ▐▌
█ http://yoursite.com/phpsysinfo/xml.php?plugin=SMART ▐▌
█ The output style smartctl gives is the same as for Linux-same ID entries ▐▌
█ and 2 extra: 192, 193 ▐▌
█ ▐▌
█ Note that the file 'class.SMART.inc.php' line 75 states: ▐▌
█ if ((CommonFunctions::rfts(APP_ROOT."/data/SMART{$dn}.txt", ▐▌
█ $buffer))&&(!empty($buffer))){ ▐▌
█ ▐▌
█ I suspect the problem lies either: ▐▌
█ class.SMART.inc.php as smartctl is working in both command and output to ▐▌
█ file (see below) in the same format as it does for linux. ▐▌
█ Or ▐▌
█ -It must not be able to find the .txt file to parse it to the phpsysinfo ▐▌
█ page as even the headings aren't there - ▐▌
█ ...\phpsysinfo\plugins\SMART\lang\en.xml ▐▌
█ no idea, too many hours of trying :/ . ▐▌
█ ▐▌
█ SIDE NOTES: ▐▌
█ -If you have an external USB hard drive smartctl might not be able to read ▐▌
█ it. ▐▌
█ -To enable smart use the -s on variable, for example: ▐▌
█ smartctl --all --device ata D: -s on ▐▌
█ -The reason why PS and PSStatus works is - 'on WINNT information is ▐▌
█ retrieved every time through WMI'. ▐▌
█ ▐▌
█ SMARTMONTOOLS OUTPUT TO PHPSYSINFO: ▐▌
█ To have your smartctl output to a text file each time phpsysinfo page ▐▌
█ refreshes this is how: ▐▌
█ 1) Open a cmd prompt window. Adjust the size so that the window is set to ▐▌
█ at least 97 characters wide (or it will break the lines). ▐▌
█ 2) Issue the cmd, changing the path your own path: ▐▌
█ smartctl --all > D:\xampp\htdocs\phpsysinfo\data\SMART0.txt ▐▌
█ Now view your SMART0.txt in that path. ▐▌
█ 3) Once you have command working, we need to tell phpsysinfo to issue that ▐▌
█ same command: ▐▌
█ Open this file ...\phpsysinfo\plugins\SMART\class.SMART.inc.php ▐▌
█ Line 60 has this: ▐▌
█ if (CommonFunctions::executeProgram('smartctl', '--all' ▐▌
█ ▐▌
█ Change to (change path to your own web server path): ▐▌
█ if (CommonFunctions::executeProgram('smartctl', '--all > D:\xampp\htdocs\phpsysinfo\data\SMART0.txt'
█ ▐▌
█ Now every time phpsysinfo page refreshes, it overwrites the existing file ▐▌
█ with the new information. ▐▌
█ ▐▌
█ QUOTA: ▐▌
█ `````` ▐▌
█ The fake data text file from HERE will work. ▐▌
█ The problem lies in finding a tool that reports in a similar fashion for ▐▌
█ phpsysinfo to read and parse, or to change the manner ▐▌
█ (class.Quotas.inc.php &en.xml) in which it reads the file to parse it, or ▐▌
█ best for phpsysinfo to have a plug-in for a Windows tool :D. ▐▌
█ Using the built in Windows Quota Report output would be similar to: ▐▌
█ Quota Entries for Local Disk (C:) ▐▌
█ Status Name Logon Name Amount Used (MB) Quota Limit (MB) Warning Level (MB) Percent Used
█ OK BUILTIN\Administrators 39431.42 No Limit No Limit N/A ▐▌
█ [snip] ▐▌
█ ▐▌
█ Enable Disk Quota: ▐▌
█ Right click on the hard drive you want quota on, select Properties/Quota ▐▌
█ Tab/ check 'Enable quota management' /click Apply, a message box will ▐▌
█ state 'You should enable the quota system only if you intend to use quotas ▐▌
█ on this disk volume. When you enable quota system, the volume will be ▐▌
█ rescanned to update disk usage statistics. This might take several ▐▌
█ minutes'. Click OK. ▐▌
█ Wait for it to finish- the traffic light icon will be green when it is ▐▌
█ done. ▐▌
█ ▐▌
█ Create Disk Quota Reports - from HERE. ▐▌
█ 1. Right-click on the disk for which you want to create a report, click ▐▌
█ Properties, and then click the Quota tab. ▐▌
█ 2. Click 'Quota Entries' button. ▐▌
█ 3. While you are viewing the quota entries, open a document such as ▐▌
█ Microsoft Excel, select all the quota entries and drag and drop them into ▐▌
█ Excel. ▐▌
█ ▐▌
█ Use Windows fsutil in command line, for example open cmd prompt and enter: ▐▌
█ fsutil --help ▐▌
█ fsutil quota query C: ▐▌
█ ▐▌
█ How to set quotas view HERE & HERE. ▐▌
█ ▐▌
█ Some disk quota scripts HERE, HERE & HERE that you could customize to have ▐▌
█ a working report. ▐▌
█ ▐▌
█ Some programs with command line capabilities that look like they have ▐▌
█ potential to achieve the desired results: ▐▌
█ Sysinternals DU HERE. I'm yet to find other freeware soft to do this. ▐▌
█ ▐▌
█ Demoware my fav so far would be Jam TreeSize Pro HERE, 30 day trial, & ▐▌
█ WinQuota HERE, but both are expensive for this minor task :/ so the search ▐▌
█ continues. ▐▌
█ ▐▌
█ OTHER TOOLS NOT SUPPORTED IN WINDOWS - hddtemp & lmsensors: ▐▌
█ `````````````````````````````````````````````````````````` ▐▌
█ In config.php you'll see two more tools- hddtemp to read your hard drive ▐▌
█ temperatures, site is HERE, no Win version, and motherboard monitoring ▐▌
█ with a variety of programs to select from, no Win versions, such as ▐▌
█ lmsensors. ▐▌
█ You can use a fake data file from HERE for lmsensors. ▐▌
█ Place in your data directory renaming it to lmsensors.txt. ▐▌
█ Change these two lines: ▐▌
█ define('PSI_SENSOR_PROGRAM', false); ▐▌
█ define('PSI_SENSOR_ACCESS', 'command'); ▐▌
█ To: ▐▌
█ define('PSI_SENSOR_PROGRAM', 'LMSensors'); ▐▌
█ define('PSI_SENSOR_ACCESS', 'file'); ▐▌
█ ▐▌
█ Done. Reload your phpsysinfo page to view the changes, it should now have ▐▌
█ 3 new tables; VOLTAGE, TEMPERATURE, & FANS. So with the right program this ▐▌
█ again should be possible. These might be worth while looking into, HERE, ▐▌
█ HERE, HERE, and HERE. ▐▌
█ ▐▌
█ TROUBLE SHOOTING: ▐▌
█ 1. If you receive either one of these errors and your web page will not ▐▌
█ load: ▐▌
█ Strict Standards: Implicit cloning object of class 'Error' because of ▐▌
█ 'zend.ze1_compatibility_mode' or 'Fatal error: Can't be cloned in ▐▌
█ /phpsysinfo/includes/class.Error.inc.php on line 75' ▐▌
█ ▐▌
█ Fix this by editing your \xampp\php\php.ini: ▐▌
█ Search for: zend.ze1_compatibility_mode ▐▌
█ It will have this: ▐▌
█ zend.ze1_compatibility_mode = On ▐▌
█ Change it to: ▐▌
█ zend.ze1_compatibility_mode = Off ▐▌
█ ▐▌
█ Note: zend.ze1_compatibility_mode: Removed in PHP 5.3.+ Read HERE. ▐▌
█ ▐▌
█ Then restart your web server. Test your page again. ▐▌
█ ▐▌
█ 2. If you have an exclamation point icon top left- this is the debugging ▐▌
█ information. Click on it for more information to sort out the problems. ▐▌
█ ▐▌
█ 3. If your page shows: ▐▌
█ Bad Request ▐▌
█ Error 400: ▐▌
█ Your browser sent a request that this server could not understand. ▐▌
█ Size of a request header field exceeds server limit. ▐▌
█ Cookie: HardwareTree=24|22|20|7|<snip blah blah> ▐▌
█ ▐▌
█ This is because the cookie your browser is storing is either too large or ▐▌
█ it has been corrupted. Very easy to fix; remove the cookie for that site: ▐▌
█ Firefox: Tools/Options/Privacy/Show Cookies/Browse in the list to the ▐▌
█ site that you want to clear the cookie for, select it then click Remove ▐▌
█ Cookie, click Close/OK. Now try your page again. ▐▌
█ IE: Tools/Internet Options/General tab, under 'Browsing history' click the ▐▌
█ Settings button, click OK if prompted about size, Temporary Internet Files ▐▌
█ window click View Files/ explorer window will open, browse to the cookie ▐▌
█ you want to delete, for example cookie:user@yoursite.com, then delete it. ▐▌
█ Opera: Tools/Preferences/Advanced tab/select Cookies on left pane/click ▐▌
█ Manage Cookies button/browse the cookie you want to delete, click ▐▌
█ Delete/Close/OK. ▐▌
█ Safari: Edit/Preferences/Security/click Show Cookies button/browse to the ▐▌
█ cookie you want to delete, select it, click Remove/Done/Red X to close it. ▐▌
█ ▐▌
█ 4. Win2K users -If you receive an error similar to: ▐▌
█ Warning: (null)(): Invoke() failed: Exception occurred. Source: ▐▌
█ SWbemLocator Description: Access denied in ...\phpsysinfo\includes\os\ ▐▌
█ class.WINNT.inc.php on line 36 ▐▌
█ Fatal error: Call to a member function on a non-object in ....\phpsysinfo\ ▐▌
█ includes\os\class.WINNT.inc.php on line 44 ▐▌
█ Read HERE- "you need to set up a folder based authentication, so that when ▐▌
█ you open the site you are prompted to enter a user and pass. this is ▐▌
█ because only special users have the rights to read all required ▐▌
█ informations, like the administrator user" ▐▌
█ ▐▌
█ PASSWORD PROTECT PHPSYSINFO OR DISABLE IT: ▐▌
█ `````````````````````````````````````````` ▐▌
█ My preference only since I do not like the idea of phpsysinfo being ▐▌
█ available 'at all' when I don't need it, even tho my site is password ▐▌
█ protected, is to rename 'config.php' to disabled.config so the page won't ▐▌
█ load. ▐▌
█ ▐▌
█ Or you could password protect it. See my Apache tutorial HERE, under the ▐▌
█ section 'USER AUTHENTICATION | PASSWORD PROTECT YOUR SITE' ▐▌
█ ▐▌
█ //---------------------------------------------------------------------- ▐▌
█ ▐▌
█ If you find mistakes, have suggestions, and or questions please post at ▐▌
█ mewbies forum HERE - thank you. ▐▌
█ ▐▌
█ Last update on 12 Jul '10 ▐▌
█ ▐▌
█▌ █▌
█▌ - mewbies.com - █▌
█▌ █▌
██▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄██