Projekt phpSysInfo (PHP System Information) umożliwia nam wyświetlanie informacji o serwerze na stronie internetowej. Został on napisany w PHP i potrafi wyświetlić takie informacje jak Uptime, obciążenie procesorów, zajętość pamięci, zamontowane dyski twarde, temperatury maszyny i tym podobne. Projekt wydawany jest na licencji GPL i działa na systemach z rodziny Linux, Unix, BSD, Mac OS X oraz Windows.

PhpSysInfo posiada obsługę kliku języków, w tym język polski. Obsługuje różnego rodzaju skórki, a jego konfiguracja jest bardzo prosta. Dzięki prostej i przejrzystej konfiguracji, możemy w szybki sposób wyświetlić tylko te informacje, które nas interesują.

phpSysInfo - ogólne informacje

Do poprawnego działania phpSysInfo, wymagany jest serwer WWW z obsługą PHP. Wersja demonstracyjna skryptu znajduje się na stronie phpsysinfo.sourceforge.net. Aby rozpocząć pracę z phpSysInfo, należy pobrać go i rozpakować do katalogu serwera WWW. Najczęściej jest to /var/www/html. Gotowe!

Wchodząc na stronę serwera powinna wygenerować się strona phpSysInfo. Cały skrypt konfiguruje się w pliku config.php. Możemy tam między innymi ustalić domyślną skórkę i język skryptu:

/**
 * Define the default language
 */
define('PSI_DEFAULT_LANG', 'pl');

/**
 * Define the default template
 */
define('PSI_DEFAULT_TEMPLATE', 'clean');

Bardzo ciekawą opcją jest możliwość wyświetlania informacji o temperaturach, napięciach jak i obrotach wentylatorów. Wykorzystuje do tego takie programy jak:

Jeżeli mamy zainstalowany jeden z tych programów na maszynie, należy skonfigurować phpSysInfo, aby z niego korzystało:

define('PSI_SENSOR_PROGRAM', 'LMSensors');

Sam projekt posiada również obsługę dodatkowych wtyczek, które wzbogacają stronę o dodatkowe informacje. Możemy pokazać informacje z systemu S.M.A.R.T., status macierzy RAID oraz listę procesów, czy poziom wyczerpania baterii. Pluginy definiujemy w następujący sposób:

define('PSI_PLUGINS', 'MDStatus');

Plugin MDStatus wyświetla informacje o macierzach RAID:

phpSysInfo - plugin MDStatus

Domyślnie dostępne są takie pluginy jak:

  • MDStatus – informacje na temat macierzy RAID
  • PS – drzewo procesów
  • PSStatus – graficzna reprezentacja czy dany proces jest uruchomiony
  • Quotas – informacje na temat quoty dyskowej
  • SMART – informacje z systemu S.M.A.R.T.
  • BAT – informacje na temat baterii

  • Pablo

    To jest świetne! Bardzo fajny artykuł. Postawiłem to na serwerze hostingu i ciekawych rzeczy się dowiedziałem.

  • Greg

    A jak jest wyłączone shellexecute() to też działa?

  • Artykuł bardzo przydatny. Trzeba przetestować skrypt :)

  • U mnie spokojnie działa na takich ustawieniach:

    <code>disable_functions = gzdeflate, base64_encode, popen, shell_exec, ini_alter, leak, listen, chgrp, dl, system, proc_terminate, proc_nice, proc_getstatus, passthru, escapeshellcmd, ini_restore, show_source, exec</code>

    Także jak widzisz <code>shell_exec</code> jest wyłączone.

  • Magda Nowak

    Bardzo fajne, ale generowanie drzewa procesów, czy listy punktów montowań potrafi mocno obciążyć maszynę.

  • Jestor

    A jak zrobić by było tak jak na screenie. To znaczy by nie pokazywał możliwości wyboru themesa oraz języka?

  • Greg

    A przejrzałeś config.php?

  • Proszę bardzo. Moje ustawienia:

    <code>define('PSI_DEFAULT_LANG', 'pl');

    define('PSI_DEFAULT_TEMPLATE', 'clean');

    define('PSI_SHOW_PICKLIST_LANG', false);

    define('PSI_SHOW_PICKLIST_TEMPLATE', false);</code>

  • Magda Nowak

    Ale ludzie są leniwi. Tylko na gotowce czekają.

  • A może po prostu nie wiedział jak to zrobić? Chciał sobie gotowy skrypt postawić, a nie wiedział jak go przerobić.

  • Magda Nowak

    A zajrzałeś do configa? Tam ustawiasz true lub false. Ot filozofia.

  • A czytasz uważnie? Pisze o nim, nie o sobie.

  • Jej chyba chodzi o to, że konfiguracja tego jest tak prosta, że nie potrzeba dawać przykładów, bo wystarczy zmieniać false na true i odwrotnie ;-)

  • Magda Nowak

    Grzesiu, ale mi chodziło o tym o czym pisze Kamil. Konfiguracja jest taka prosta, że takie pytania to lenistwo bo komuś nie chce się komentarza poczytać.

  • Pingback: phpSysInfo – informacje o serwerze w PHP | Posix, GNU, Linux, BSD, Unix, Open Source…()

  • Peter

    Poniewaz mam akurat urlop, śledzę poltare internetowe i czytam uważnie wszystko co dotyczy Pasłęka. Zbulwersowała mnie wypowiedź kogoś, kto nawet nie miał odwagi podpisać sie pod komentarzem. Ten osobnik zarzuca redakcji brak inicjatywy w zdobywaniu informacji. Jednak po analizie wpisf3w na prywatnym portalu burmistrza stwierdzam, że te informacje rzeczywiście pochodzą bezposrednio od samego szefa . Np. o administrowaniu cmentarzem i wygranym przetargu nie ma ani słowa na portalu urzędowym za to zaraz po podpisaniu tej umowy informacja pojawia się jak ciepła bułeczka na portalu prywatnym. Nie wierzę, ze ktoś z redakcji prywatnego portalu cały czas przebywa w urzędzie i dlatego ma te informacje od zaraz. Zresztą to doskonale wyjaśnia pismo z artykułu Dostęp do informacji publicznej

  • Hej, dzieki za skrypt. Ciekawa sprawa – jutro postaram sie to przetestowac na serweryminecraft.net.pl