弊社では、サードパーティが製造した一部のシンクライアントをサポートするために、サーバー上でサードパーティの TTY サービスを実行しています。
時々、シンクライアントへの接続がロックされることがあります。手順としては、TTYサービスを停止し、接続が閉じるのを待ってからTTYサービスを開始します。さらに、CentOS 4.xサーバーでは、コマンドinit q
通常、これをルートから手動で実行します。
service axtty stop
サービスを停止する
netstat -d | grep axel
axel
すべての接続が閉じられるまで、つまり.を含む行がなくなるまで、netstat コマンドを実行して監視します。
service axtty start
サービスを開始する
これらすべてを 1 つの自動化されたシェル スクリプト (bash) にまとめる方法はありますか?
サーバーはCentOS 4.xまたは6.xです
答え1
#!/bin/sh
service axtty stop
while netstat -d | grep -q axel ; do
sleep 1
done
service axtty start
注: GNU を使用すると、または 1 秒の他の浮動小数点小数点数をsleep
実行できます。sleep 0.1