Fórum Ubuntu CZ/SK

Ubuntu pro osobní počítače => Software => Příkazový řádek a programování pro GNU/Linux => Téma založeno: okoun 27 Února 2009, 18:29:14

Název: kontrola zařízení
Přispěvatel: okoun 27 Února 2009, 18:29:14
Ahoj, potřebuji nějaký scriptík, který bude sledovat jestli je na dané IP adrese otevřen daný port a pokud nebude tak aby poslal notifikační email, že je zařízení nedostupné.

Možná by šel spustit tento script nějak pomocí php-cli ale nevím jak to udělat  ::)
Kód: [Vybrat]
<?php
$host 
'10.27.X.X';
if(
$socket fsockopen($host80$errno$errstr1)) {
$srsniste 1;
echo 
'Dostupne';
fclose($socket);
} else {
echo 
'Nedostupne';
}
?>


Nevím co je lepší jestli něco přímo naprogramovat pro linux neb to php-cli ??
Název: Re: kontrola zařízení
Přispěvatel: Martin Kiklhorn 28 Února 2009, 22:31:22
Pokud to opravdu chcete přes php-cli tak mi prozraďte co vám nefunguje.
na 192.168.4.9 mám server, na 192.168.4.122 ne
Kód: [Vybrat]
root@hej-hq:/usr/src/navicat8_mysql_en# php
Program 'php' není v současné době nainstalován.  Můžete jej nainstalovat napsáním:
apt-get install php5-cli
bash: php: command not found
root@hej-hq:/usr/src/navicat8_mysql_en# apt-get install php5-cli
Čtu seznamy balíků... Hotovo
Vytvářím strom závislostí       
Čtení stavových informací... Hotovo
Navrhované balíky:
  php-pear
Následující NOVÉ balíky budou nainstalovány:
  php5-cli
0 aktualizováno, 1 nově instalováno, 0 k odstranění a 7 neaktualizováno.
Potřebuji stáhnout 2570kB archivů.
After this operation, 5779kB of additional disk space will be used.
Mám:1 http://cz.archive.ubuntu.com hardy-updates/main php5-cli 5.2.4-2ubuntu5.5 [2570kB]
Staženo 2570kB za 6s (406kB/s)                                                                                                                                                                       
Instaluji balík php5-cli.
(Čtu databázi ... nyní je nainstalováno 248589 souborů a adresářů.)
Rozbaluji php5-cli (z .../php5-cli_5.2.4-2ubuntu5.5_amd64.deb) ...
Nastavuji balík php5-cli (5.2.4-2ubuntu5.5) ...

Creating config file /etc/php5/cli/php.ini with new version

root@hej-hq:/usr/src/navicat8_mysql_en# cd ~
root@hej-hq:~# mkdir test
root@hej-hq:~# cd test/
root@hej-hq:~/test# touch test.php
root@hej-hq:~/test# pico test.php
root@hej-hq:~/test# cat test.php
<?php
$host 
'192.168.4.9';
if(
$socket fsockopen($host80$errno$errstr1)) {
$srsniste 1;
echo 
'Dostupne';
fclose($socket);
} else {
echo 
'Nedostupne';
}
?>

root@hej-hq:~/test# php test.php
Dostupneroot@hej-hq:~/test# pico test.php
root@hej-hq:~/test# cat test.php
<?php
$host 
'192.168.4.122';
if(
$socket fsockopen($host80$errno$errstr1)) {
$srsniste 1;
echo 
'Dostupne';
fclose($socket);
} else {
echo 
'Nedostupne';
}
?>

root@hej-hq:~/test# php test.php

Warning: fsockopen(): unable to connect to 192.168.4.122:80 (Connection timed out) in /home/martin/test/test.php on line 3
Nedostupneroot@hej-hq:~/test#

pak jsou tady i jiné krásné věci jako nmap, nebo tcp připojení na port ať už v bashi telnet na port + poslání headeru, nebo nějaký perl třeba: http://www.linuxjournal.com/article/3531