Каждый, кто работал сисадмином UNIX-систем, рано или поздно начинает автоматизировать свою работу с помощью скриптов.
Написаны они могут быть на чём угодно — от bash'а до tcl. Важен подход.
В этой статье я попробую вкратце описать приемы скриптовой автоматизации.
1. Когда это приведет к экономии времени.
Если нужно однотипно настроить 1000 свитчей, разослатьспам приглашения на конференцию или собрать базу MAC-адресов — скрипты наши лучшие друзья.
2. Когда некие действия выполняются регулярно.
Архивирования резервных копий, очистка mysql-базы от мусора или сбор статистики — те самые случаи.
3. Когда нужно создать что-то сложное, но лениво делать это «по серьёзному».
Примеры — микробиллинги, счетчики трафика и системы блокировки должников.
Это нужно писать на C/C++. Но начальство сказало: «Сделать сегодня!». И снова скрипты — и мысль «когда-нибудь перепишу». :)
Всегда, когда это не нужно согласно трём первым пунктам.
Хотя если хотите — пишите. Время ваше. :)
1. Скрипт починки всех таблиц mysql. Ставил на хостинг по крону — сразу пропали звонки абонентов на тему неработающих сайтов на mysql. [bash]
![](https://habrastorage.org/r/w780q1/getpro/geektimes/post_images/52c/467/e71/52c467e71ef4a4368e82fa84830c40fc.jpg)
2. Массовое выполнение команд на свитчах AT-8000S. [perl]
iplist.txt — список свитчей в формате ip:login:password
command.txt — список команд.
![](https://habrastorage.org/r/w780q1/getpro/geektimes/post_images/5e8/287/bed/5e8287bedb122dfce83e85067b4944d2.jpg)
3. Проверка работы демона — полезно при наличии падучих программ.
Можно убрать while и запихнуть в кронтаб.
![](https://habrastorage.org/r/w780q1/getpro/geektimes/post_images/cc8/2e4/43c/cc82e443cfdfc0bcdd0a41ae98210b30.jpg)
4. Ежедневный бекап с распихиванием по папочкам вида <год>/<месяц>/<день>.
В кронтаб.
![](http://i001.radikal.ru/0909/97/ae62fb020632.jpg)
Скрипты можно писать. Скрипты нужно писать. Удачи. :)
P.S. Извиняюсь за корявость — первый пост на Хабре.
Написаны они могут быть на чём угодно — от bash'а до tcl. Важен подход.
В этой статье я попробую вкратце описать приемы скриптовой автоматизации.
Когда нужно писать скрипты?
1. Когда это приведет к экономии времени.
Если нужно однотипно настроить 1000 свитчей, разослать
2. Когда некие действия выполняются регулярно.
Архивирования резервных копий, очистка mysql-базы от мусора или сбор статистики — те самые случаи.
3. Когда нужно создать что-то сложное, но лениво делать это «по серьёзному».
Примеры — микробиллинги, счетчики трафика и системы блокировки должников.
Это нужно писать на C/C++. Но начальство сказало: «Сделать сегодня!». И снова скрипты — и мысль «когда-нибудь перепишу». :)
Когда не нужно писать скрипт?
Всегда, когда это не нужно согласно трём первым пунктам.
Хотя если хотите — пишите. Время ваше. :)
Несколько примеров из личной жизни
1. Скрипт починки всех таблиц mysql. Ставил на хостинг по крону — сразу пропали звонки абонентов на тему неработающих сайтов на mysql. [bash]
![](https://habrastorage.org/getpro/geektimes/post_images/52c/467/e71/52c467e71ef4a4368e82fa84830c40fc.jpg)
2. Массовое выполнение команд на свитчах AT-8000S. [perl]
iplist.txt — список свитчей в формате ip:login:password
command.txt — список команд.
![](https://habrastorage.org/getpro/geektimes/post_images/5e8/287/bed/5e8287bedb122dfce83e85067b4944d2.jpg)
3. Проверка работы демона — полезно при наличии падучих программ.
Можно убрать while и запихнуть в кронтаб.
![](https://habrastorage.org/getpro/geektimes/post_images/cc8/2e4/43c/cc82e443cfdfc0bcdd0a41ae98210b30.jpg)
4. Ежедневный бекап с распихиванием по папочкам вида <год>/<месяц>/<день>.
В кронтаб.
![](http://i001.radikal.ru/0909/97/ae62fb020632.jpg)
Заключение
Скрипты можно писать. Скрипты нужно писать. Удачи. :)
P.S. Извиняюсь за корявость — первый пост на Хабре.