firebird:fb_windows_kill
Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Obě strany předchozí revizePředchozí verzeNásledující verze | Předchozí verze | ||
firebird:fb_windows_kill [2011/02/16 12:32] – Karel Petrů | firebird:fb_windows_kill [2019/09/03 11:42] (aktuální) – [Nastavení doby detekce ukončeného klientského spojení] Petr Kristan | ||
---|---|---|---|
Řádek 8: | Řádek 8: | ||
=== Windows === | === Windows === | ||
+ | |||
+ | [[https:// | ||
V registry \HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\TCPIP\Parameters\ (doby v minisekundach) | V registry \HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\TCPIP\Parameters\ (doby v minisekundach) | ||
Řádek 16: | Řádek 18: | ||
</ | </ | ||
- | === Firebird | + | === Linux === |
- | tail /proc/sys/net/ | + | /etc/sysctl.d/local.conf |
- | + | ||
- | / | + | |
< | < | ||
net.ipv4.tcp_keepalive_time=60 | net.ipv4.tcp_keepalive_time=60 | ||
Řádek 26: | Řádek 26: | ||
net.ipv4.tcp_keepalive_probes=5 | net.ipv4.tcp_keepalive_probes=5 | ||
</ | </ | ||
+ | |||
+ | aktivace | ||
<code bash> | <code bash> | ||
- | sysctl -a | grep tcp_keepalive | + | sysctl -f --system |
- | sysctl | + | |
</ | </ | ||
+ | |||
+ | Aktualni hodnoty v kernelu | ||
+ | <code bash> | ||
+ | tail / | ||
+ | </ | ||
+ | |||
+ | Zjisteni stavu socketu stav keepalive | ||
+ | < | ||
+ | netstat -t --timer | ||
+ | </ | ||
+ | [keepalive|on|off] (6176, | ||
+ | * a=timer value (a=keepalive timer, when 1st field=" | ||
+ | * b=number of retransmissions that have occurred | ||
+ | * c=number of keepalive probes that have been sent | ||
+ | |||
==== Ukončení procesů Firebirdu na windows ==== | ==== Ukončení procesů Firebirdu na windows ==== | ||
Řádek 36: | Řádek 52: | ||
**Manuální zabití** Firebird procesů, které blokují licence je možné s pomocí [[http:// | **Manuální zabití** Firebird procesů, které blokují licence je možné s pomocí [[http:// | ||
+ | |||
+ | ==== Skript na zabití procesů firebird vybrané stanice kill_fb.sh ==== | ||
+ | |||
+ | <code bash> | ||
+ | #! /bin/bash | ||
+ | #pomoci SSH (Putty) se prihlasit na server jako uzivatel ktery ma umoznene sudo na lsof a kill | ||
+ | #a spustit tento script | ||
+ | |||
+ | # IP adresa volajiciho pocitace | ||
+ | CLIENT_IP=$(echo $SSH_CLIENT | awk ' | ||
+ | |||
+ | FB_NAME=" | ||
+ | OPEN_DB=" | ||
+ | for P in $(pgrep $FB_NAME); do | ||
+ | # grepujeme pres vsechny otevrene soubory daneho procesu, hledame ten, ktery otevira licence a zaroven ma socket na IP adresu klienta. Grepujeme pre | ||
+ | if sudo lsof -n -p $P 2>/ | ||
+ | echo "Found process $P $FB_NAME holding DB $OPEN_DB and communicating with $CLIENT_IP, killing the process" | ||
+ | sudo kill $P | ||
+ | exit 0 | ||
+ | fi | ||
+ | done | ||
+ | |||
+ | echo "No process $FB_NAME holding DB $OPEN_DB and communicating with $CLIENT_IP found" | ||
+ | exit 1 | ||
+ | </ |
firebird/fb_windows_kill.1297859566.txt.gz · Poslední úprava: 2011/02/16 12:32 autor: Karel Petrů