Как организовать управление группой ПК: различия между версиями

Материал из IT в школе
Перейти к навигацииПерейти к поиску
нет описания правки
Строка 1: Строка 1:




Строка 665: Строка 666:
<?php
<?php


$myip=$_SERVER['SERVER_ADDR'];
$webroot="/var/www/html/";
$webroot="/var/www/html/";
$base=$webroot."base/";
$base=$webroot."base/";
#ссылка на установленный webssh
$webssh="http://".$myip.":8081";
#ссылка на установленный novnc
$novnc="http://".$myip.":6080";
#Список компьютерных классов
$cc=array("КАБ34" => "m648-1-34a","КАБ21"=>"m648-1-21a","КАБ41"=>"m648-1-41","КАБ42"=>"m648-1-42");
#файл токенов novnc
$confignovnc="/etc/novnc/token.list";




#сохранение именив "базе"
function save_name($nm,$ip)
function save_name($nm,$ip)
{
{
Строка 678: Строка 689:
};
};


 
#вернуть текстовый файл
function rettext($text,$name){
function rettext($text,$name){
header("Content-Type: text/plain");
header("Content-Type: text/plain");
Строка 687: Строка 698:
exit();
exit();
};
};
#вывод одного раздела таблицф
function print_table($mask)
{
global $base;
global $webssh;
global $novnc;
echo "<table> <tr> <th>NAME</th> <th>IP</th> <th>LAST TIME</th><th>SSH</th> <th>VNC</th></tr>";
$dir=`ls $base/$mask`;
foreach (explode("\n",$dir) as $n) {
$name=basename($n);
$ip=file_get_contents($base.$name);
$ssh=$webssh."/?hostname=$ip&username=root&privatekey=localfile";
$vnc=$novnc."/vnc_lite.html?p=&scale=true&path=websockify/?token=$name";
$tm=date ("d/m H:i:s", filemtime($base.$name));
if($name !="")
{
echo "<tr> <th>$name</th> <th>$ip</th> <th>$tm</th> <th><a href=\"$ssh\">SSH</a></th> <th><a href=\"$vnc\">VNC</a></th> </tr>\n";
};
};
echo "</table>";
};
#обновление таблицы novnc
function renewvnc()
{
global $confignovnc;
global $base;
$dir=`ls $base/?*`;
foreach (explode("\n",$dir) as $n) {
$name=basename($n);
$ip=file_get_contents($base.$name);
$ar[]=$name.": ".$ip.":5900";
};
asort($ar);$s=join("\n",$ar);
$x=file_get_contents($confignovnc);
if($s!=$x) { file_put_contents($confignovnc,$s); };
};




Строка 718: Строка 771:
exit();
exit();
};
};
renewvnc();


?>
?>


<!DOCTYPE html><html>
<!DOCTYPE html><html>
Строка 739: Строка 796:
</head>
</head>
<body>
<body>
<table>
<tr> <th>NAME</th> <th>IP</th> <th>SSH</th> </tr>
<?php
$dir=`ls $base`;


<?php
echo "<h1>Ссылки на оборудование</h1>";
echo "<h2>Доски</h2>";
print_table("p*");
echo "<h2>Моноблоки</h2>";
foreach ($cc as $k=>$v) {
echo "<h3>$k</h3>";
print_table($v."*");
}
echo "<h2>Ноутбуки</h2>";
print_table("n*");


foreach (explode("\n",$dir) as $name) {
$ip=file_get_contents($base.$name);
$ssh="cch://".$ip;
if($name !="")
{
echo "<tr> <th>$name</th> <th>$ip</th> <th><a href=\"$ssh\">SSH</a></th>  </tr>\n";
};
};
?>
?>
</table>
</body>
</body>
</html>
</html>
</syntaxhighlight>
</syntaxhighlight>


Навигация