Advertisement
Black_Lava

php - SMART

Nov 22nd, 2020 (edited)
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.78 KB | None | 0 0
  1. <?php
  2. echo "<html><head><title>Server</title></head><body>";
  3. exec ('sudo smartctl -i /dev/sda',$name1); /* Получаем данные об устройстве SDA и заносим в массив $name1 */
  4. exec ('sudo smartctl -A /dev/sda',$out1); /* Получаем данные SMART устройства SDA и заносим в массив $out1 */
  5. echo "<table>";
  6.     echo "<tr><td valign='top'><table border='1'>";
  7.         echo "<tr><td colspan='10'>";
  8.         $i = 4; /* начинаем цикл с 4 строки, первые 3 не относятся к данным об устройстве */
  9.         while ($i <= count($name1)-2) { /* последние 2 строки убираем т.к. пустышка */
  10.             echo $name1[$i]."<br>";
  11.             $i++;
  12.         }
  13.         echo "</td></tr>";
  14.         $i = 6;
  15.         while ($i <= count($out1)-2) { /* из цикла убираем две последние строки т.к. они пустые, начинаем с 6-й строки т.к. то что в них не несёт никакой полезной информации */
  16. /* эти прибавки выбиваются из таблицы и рушат форматирование таблицы, потому их убираем:  */
  17.             $output1 = explode(" (Average ", $out1[$i]);
  18.             $output1 = $output1[0];
  19.             $output1 = str_ireplace (" (Min/Max 20/54)", "", $output1);
  20. /* Убираем лишние пробелы в строке: */
  21.             $output1 = preg_replace('| +|', ' ', $output1);
  22. /* Удаляем пробелы перед строкой*/
  23.             $output1 = ltrim($output1);
  24. /* Теперь имеем разделитель между значениями ячеек таблицы в виде пробела. Форматируем строку и заменяем пробелы на HTML-тэги конца и начала ячейки */
  25.             $output1 = str_replace (" ", "</td><td>", $output1);
  26.             echo "<tr><td>".$output1."</td></tr>";
  27.             $i++;
  28.     }
  29.  
  30.     echo "</table></td>";
  31.    
  32.     exec ('sudo smartctl -i /dev/sdb',$name2);
  33.     exec ('sudo smartctl -A /dev/sdb',$out2);
  34.     echo "<td  valign='top'><table border='1'>";
  35.         echo "<table border='1'>";
  36.         echo "<tr><td colspan='10'>";
  37.         $i = 4;
  38.         while ($i <= count($name2)-2) {
  39.             echo $name2[$i]."<br>";
  40.             $i++;
  41.         }
  42.         echo "</td></tr>";
  43.         $i = 6;
  44.         while ($i <= count($out2)-2) {
  45.             $output2 = explode(" (Average ", $out2[$i]);
  46.             $output2 = $output2[0];
  47.             $output2 = str_ireplace (" (Min/Max 20/54)", "", $output2);
  48.             $output2 = preg_replace('| +|', ' ', $output2);
  49.             $output2 = ltrim($output2);
  50.             $output2 = str_replace (" ", "</td><td>", $output2);
  51.             echo "<tr><td>".$output2."</td></tr>";
  52.             $i++;
  53.         }
  54.     echo "</table></td></tr>";
  55. echo "</table>";
  56. echo "<a href='http://server.media.loc:32400/'>Plex Media Server</url>";
  57. echo "</body></html>";
  58. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement