⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 class.linux.inc.php

📁 国外很不错的一个开源OA系统Group-Office
💻 PHP
📖 第 1 页 / 共 2 页
字号:
            unset($results[$file]['capacity']);          }           fclose($fd);        }       }     }     closedir($handle);    asort($results);    return $results;  }   function scsi () {    $results = array();    $dev_vendor = '';    $dev_model = '';    $dev_rev = '';    $dev_type = '';    $s = 1;    if ($fd = fopen('/proc/scsi/scsi', 'r')) {      while ($buf = fgets($fd, 4096)) {        if (preg_match('/Vendor/', $buf)) {          preg_match('/Vendor: (.*) Model: (.*) Rev: (.*)/i', $buf, $dev);          list($key, $value) = split(': ', $buf, 2);          $dev_str = $value;          $get_type = 1;          continue;        }         if ($get_type) {          preg_match('/Type:\s+(\S+)/i', $buf, $dev_type);          $results[$s]['model'] = "$dev[1] $dev[2] ($dev_type[1])";          $results[$s]['media'] = "Hard Disk";          $s++;          $get_type = 0;        }       }     }     asort($results);    return $results;  }   function usb () {    $results = array();    $devstring = 0;    $devnum = -1;    if ($fd = fopen('/proc/bus/usb/devices', 'r')) {      while ($buf = fgets($fd, 4096)) {        if (preg_match('/^T/', $buf)) {          $devnum += 1;        }         if (preg_match('/^S/', $buf)) {          $devstring = 1;        }         if ($devstring) {          list($key, $value) = split(': ', $buf, 2);          list($key, $value2) = split('=', $value, 2);          $results[$devnum] .= " " . trim($value2);          $devstring = 0;        }       }     }     return $results;  }   function sbus () {    $results = array();    $_results[0] = "";     // TODO. Nothing here yet. Move along.    $results = $_results;    return $results;  }   function network () {    $results = array();    if ($fd = fopen('/proc/net/dev', 'r')) {      while ($buf = fgets($fd, 4096)) {        if (preg_match('/:/', $buf)) {          list($dev_name, $stats_list) = preg_split('/:/', $buf, 2);          $stats = preg_split('/\s+/', trim($stats_list));          $results[$dev_name] = array();          $results[$dev_name]['rx_bytes'] = $stats[0];          $results[$dev_name]['rx_packets'] = $stats[1];          $results[$dev_name]['rx_errs'] = $stats[2];          $results[$dev_name]['rx_drop'] = $stats[3];          $results[$dev_name]['tx_bytes'] = $stats[8];          $results[$dev_name]['tx_packets'] = $stats[9];          $results[$dev_name]['tx_errs'] = $stats[10];          $results[$dev_name]['tx_drop'] = $stats[11];          $results[$dev_name]['errs'] = $stats[2] + $stats[10];          $results[$dev_name]['drop'] = $stats[3] + $stats[11];        }       }     }     return $results;  }   function memory () {    if ($fd = fopen('/proc/meminfo', 'r')) {      $results['ram'] = array();      $results['swap'] = array();      $results['devswap'] = array();      while ($buf = fgets($fd, 4096)) {        if (preg_match('/^MemTotal:\s+(.*)\s*kB/i', $buf, $ar_buf)) {          $results['ram']['total'] = $ar_buf[1];        } else if (preg_match('/^MemFree:\s+(.*)\s*kB/i', $buf, $ar_buf)) {          $results['ram']['free'] = $ar_buf[1];        } else if (preg_match('/^Cached:\s+(.*)\s*kB/i', $buf, $ar_buf)) {          $results['ram']['cached'] = $ar_buf[1];        } else if (preg_match('/^Buffers:\s+(.*)\s*kB/i', $buf, $ar_buf)) {          $results['ram']['buffers'] = $ar_buf[1];        } else if (preg_match('/^SwapTotal:\s+(.*)\s*kB/i', $buf, $ar_buf)) {          $results['swap']['total'] = $ar_buf[1];        } else if (preg_match('/^SwapFree:\s+(.*)\s*kB/i', $buf, $ar_buf)) {          $results['swap']['free'] = $ar_buf[1];        }       }       $results['ram']['shared'] = 0;      $results['ram']['used'] = $results['ram']['total'] - $results['ram']['free'];      $results['swap']['used'] = $results['swap']['total'] - $results['swap']['free'];      fclose($fd);      $swaps = file ('/proc/swaps');      $swapdevs = split("\n", $swaps);      for ($i = 1; $i < (sizeof($swapdevs) - 1); $i++) {        $ar_buf = preg_split('/\s+/', $swapdevs[$i], 6);        $results['devswap'][$i - 1] = array();        $results['devswap'][$i - 1]['dev'] = $ar_buf[0];        $results['devswap'][$i - 1]['total'] = $ar_buf[2];        $results['devswap'][$i - 1]['used'] = $ar_buf[3];        $results['devswap'][$i - 1]['free'] = ($results['devswap'][$i - 1]['total'] - $results['devswap'][$i - 1]['used']);        $results['devswap'][$i - 1]['percent'] = round(($ar_buf[3] * 100) / $ar_buf[2]);      }       // I don't like this since buffers and cache really aren't      // 'used' per say, but I get too many emails about it.      $results['ram']['t_used'] = $results['ram']['used'];      $results['ram']['t_free'] = $results['ram']['total'] - $results['ram']['t_used'];      $results['ram']['percent'] = round(($results['ram']['t_used'] * 100) / $results['ram']['total']);      $results['swap']['percent'] = round(($results['swap']['used'] * 100) / $results['swap']['total']);    } else {      $results['ram'] = array();      $results['swap'] = array();      $results['devswap'] = array();    }     return $results;  }   function filesystems () {    $df = execute_program('df', '-kP');    $mounts = split("\n", $df);    $fstype = array();    if ($fd = fopen('/proc/mounts', 'r')) {      while ($buf = fgets($fd, 4096)) {        list($dev, $mpoint, $type) = preg_split('/\s+/', trim($buf), 4);        $fstype[$mpoint] = $type;        $fsdev[$dev] = $type;      }       fclose($fd);    }     for ($i = 1, $max = sizeof($mounts); $i < $max; $i++) {      $ar_buf = preg_split('/\s+/', $mounts[$i], 6);      $results[$i - 1] = array();      $results[$i - 1]['disk'] = $ar_buf[0];      $results[$i - 1]['size'] = $ar_buf[1];      $results[$i - 1]['used'] = $ar_buf[2];      $results[$i - 1]['free'] = $ar_buf[3];      $results[$i - 1]['percent'] = round(($results[$i - 1]['used'] * 100) / $results[$i - 1]['size']) . '%';      $results[$i - 1]['mount'] = $ar_buf[5];      ($fstype[$ar_buf[5]]) ? $results[$i - 1]['fstype'] = $fstype[$ar_buf[5]] : $results[$i - 1]['fstype'] = $fsdev[$ar_buf[0]];    }     return $results;  }   function distro () {   if ($fd = fopen('/etc/debian_version', 'r')) {      $buf = fgets($fd, 1024);      fclose($fd);      $result = 'Debian ' . trim($buf);   } elseif ($fd = fopen('/etc/SuSE-release', 'r')) {      $buf = fgets($fd, 1024);      fclose($fd);      $result = trim($buf);   } elseif ($fd = fopen('/etc/mandrake-release', 'r')) {      $buf = fgets($fd, 1024);      fclose($fd);      $result = trim($buf);   } elseif ($fd = fopen('/etc/fedora-release', 'r')) {      $buf = fgets($fd, 1024);      fclose($fd);      $result = trim($buf);   } elseif ($fd = fopen('/etc/redhat-release', 'r')) {      $buf = fgets($fd, 1024);      fclose($fd);      $result = trim($buf);   } elseif ($fd = fopen('/etc/gentoo-release', 'r')) {      $buf = fgets($fd, 1024);      fclose($fd);      $result = trim($buf);   } elseif ($fd = fopen('/etc/slackware-version', 'r')) {      $buf = fgets($fd, 1024);      fclose($fd);      $result = trim($buf);   } elseif ($fd = fopen('/etc/eos-version', 'r')) {      $buf = fgets($fd, 1024);      fclose($fd);      $result = trim($buf);   } elseif ($fd = fopen('/etc/trustix-release', 'r')) {      $buf = fgets($fd, 1024);      fclose($fd);      $result = trim($buf);   } elseif ($fd = fopen('/etc/arch-release', 'r')) {      $buf = fgets($fd, 1024);      fclose($fd);      $result = trim($buf);   } else {      $result = 'N.A.';   }   return $result;  }  function distroicon () {      if (file_exists('/etc/debian_version')) {      $result = 'Debian.gif';   } elseif (file_exists('/etc/SuSE-release')) {      $result = 'Suse.gif';   } elseif (file_exists('/etc/mandrake-release')) {      $result = 'Mandrake.gif';   } elseif (file_exists('/etc/fedora-release')) {      $result = 'Fedora.gif';   } elseif (file_exists('/etc/redhat-release')) {      $result = 'Redhat.gif';   } elseif (file_exists('/etc/gentoo-release')) {      $result = 'Gentoo.gif';   } elseif (file_exists('/etc/slackware-version')) {      $result = 'Slackware.gif';   } elseif (file_exists('/etc/eos-version')) {      $result = 'free-eos.gif';   } elseif (file_exists('/etc/trustix-release')) {      $result = 'Trustix.gif';   } elseif (file_exists('/etc/arch-release')) {      $result = 'Arch.gif';   } else {      $result = 'xp.gif';   }   return $result;  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -