На наших серверах запущена сторонняя служба TTY для поддержки некоторых тонких клиентов, произведенных сторонними производителями.
Время от времени подключение к тонкому клиенту может зависать. Процедура заключается в остановке службы TTY, ожидании закрытия соединений, запуске службы TTY. Кроме того, на серверах CentOS 4.x командаinit q
Обычно мы делаем это вручную, от имени пользователя root.
service axtty stop
Остановить службу
netstat -d | grep axel
Запустите и отслеживайте команду netstat до тех пор, пока все соединения не будут закрыты, т. е. не останется строк, содержащих axel
.
service axtty start
Запустить службу
Есть ли способ объединить все это в один автоматизированный скрипт оболочки (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 sleep
вы можете выполнить операцию sleep 0.1
с плавающей точкой или другую дробную часть секунды.