Скрипты для системных администраторов *NIX, Полезные скрипты для *NIX |
Здравствуйте Гость [ Вход | Регистрация ] | Форум в сети 6825-й день
Шановні користувачі! Запрошуємо вас до офіційного телеграм-канала 0day Community. Тут ви зможете поспілкуватися одне з одним та дізнатися про останні новини щодо роботи ресурса, поставити запитання до адміністрації, тощо. Перейти до телеграм-канала можна відсканувавши QR-код або натиснувши на посилання: @zeroday_ua |
Скрипты для системных администраторов *NIX, Полезные скрипты для *NIX |
Pilson |
Dec 24 2010, 16:59
Пост
#1
|
Репутация: 383 Selachimorpha Группа: Модеры Сообщений: 2 777 С нами с: 23-May 09 |
Предлагаю в этой теме делиться различными скриптами для маленьких и не очень нужд, для облегчения жизни себе, любимым
В основном для Bash, PERL, AWK, но также приветствуется и остальное. |
reiten |
Dec 24 2010, 17:55
Пост
#2
|
Репутация: 229 Cтаршой Группа: Пользователи Сообщений: 813 С нами с: 16-January 08 |
Для бытовых нужд:
Перегонка cue+flac в mp3 » Нажмите, чтобы показать спойлер - нажмите опять, чтобы скрыть... « Регулярный инкрементальный бекап данных (запускается по крону, для рабочей станции самое оно): » Нажмите, чтобы показать спойлер - нажмите опять, чтобы скрыть... « |
Pilson |
Jan 5 2011, 13:49
Пост
#3
|
Репутация: 383 Selachimorpha Группа: Модеры Сообщений: 2 777 С нами с: 23-May 09 |
Скрипт автоматизации создания SVN репозиториев и назначение пользователя, группы и прав на созданный репозиторий.
В качестве параметра скрипту указывается имя репозитория, который нужно создать. Можно указывать несколько репозиториев сразу, через пробел. Если параметр отсутствует - скрипт завершается с ошибкой. » Нажмите, чтобы показать спойлер - нажмите опять, чтобы скрыть... « Сообщение отредактировал pilson - Jan 5 2011, 13:50 |
gonivo |
Jan 9 2011, 1:07
Пост
#4
|
Репутация: 83 Cтаршой Группа: Пользователи Сообщений: 954 С нами с: 25-June 06 |
Вот скрипт сваял для сервака обновления Nod32
» Нажмите, чтобы показать спойлер - нажмите опять, чтобы скрыть... « Создавался как замена обновляющей части одноименного скрипта с сайта лиссяры - оный после обновления перла стал глючить, но главная изюминка автонагугливание ключиков работает. Eсли создать каталог ./loc и в него положить nod32.auth с строками username= password= то будет работать и сам. Ну и + скачка свежих версий инсталлов нода Сообщение отредактировал gonivo - Jan 9 2011, 1:09 |
Pilson |
Jan 10 2011, 17:39
Пост
#5
|
Репутация: 383 Selachimorpha Группа: Модеры Сообщений: 2 777 С нами с: 23-May 09 |
Если автор предыдущего скрипта не против - то выкладываю немного допиленную версию этого же скрипта. Структура приведена в более классический, читабельный вид, некоторые части кода облегчены (упрощен алгоритм получения некоторых переменных за счет удаления промежуточных механизмов).
» Нажмите, чтобы показать спойлер - нажмите опять, чтобы скрыть... « Сообщение отредактировал pilson - Jan 10 2011, 17:39 |
ssslav77 |
Apr 7 2011, 8:14
Пост
#6
|
Незарегистрированный |
Вот скриптик для рестарта conky (иногда в процесах висит, а на рабочем столе ничего не отображает):
» Нажмите, чтобы показать спойлер - нажмите опять, чтобы скрыть... « Коротко и ясно) ..создал скриптик, выложил на рабочий стол ярлычек - и все) Установка "нужной" даты в виртуальной машине VirtualBox (из-под Ubuntu): » Нажмите, чтобы показать спойлер - нажмите опять, чтобы скрыть... « Попрятал под спойлер Сообщение отредактировал pilson - Apr 7 2011, 9:12 |
Freestyler |
Apr 19 2011, 9:36
Пост
#7
|
Репутация: 150 Cтаршой Группа: Пользователи Сообщений: 917 С нами с: 21-March 07 |
Возникла необходимость частенько отправлять команду в работающий скрин при этом не заходя в него, написал простой скрипт.
» Нажмите, чтобы показать спойлер - нажмите опять, чтобы скрыть... « Сообщение отредактировал Freestyler - Apr 19 2011, 9:36 |
nerve |
Oct 1 2011, 19:00
Пост
#8
|
Репутация: 282 Постоялец Группа: Пользователи Сообщений: 1 753 С нами с: 5-January 07 |
помогите решить такую задачу:
есть n интерфейсов, которые получают адрес, маску, шлюз и днс по дхцп. надо: - потушить все интерфейсы #!/bin/sh ifconfig n1 down ifconfig n2 down - по-очереди включить каждый и для верности запустить получение адреса по дхцп ifconfig n1 up dhclient n1 - парсить вывод netstat -rn на предмет дефолтного шлюза netstat -rn | grep default default 1.1.1.1 UGS 12 73504426 - 8 fxp1 - или, если система смогла получить два значения параметра default, то парсим эти два адреса netstat -rn | grep default default 1.1.1.1 UGS 11 73406860 - 8 fxp1 default 2.2.2.2 UGS 11 73406860 - 8 fxp2 - если не смогла получить два шлюза, то выключаем n1, включаем n2 и находим значение другого шлюза ifconfig n1 down ifconfig n2 up dhclient n2 netstat -rn | grep default default 2.2.2.2 UGS 11 73406860 - 8 fxp2 - смотрим файл и вносим значение шлюза1 в первую попавшуюся строку $ext_gw1 = "сюда", а шлюза2 в строку $ext_gw2 = "" cat /etc/pf.conf | grep ext_gw1 ext_gw1 = "3.3.3.3" - заносим значение любого из найденных шлюзов в файлик echo '1.1.1.1' > /etc/mygate включаем выключенные интерфейсы и получаем для них адреса. с большой долей вероятности после выкл/вкл параметр пары адрес-шлюз останется тот же. если же сменится, то запускаем скрипт второй раз или просто запускаем его два раза для надежности) - ну и релоад конфига pfctl -f /etc/pf.conf надо для НАТ-а соурса в разные сетки через некстхоп, поэтому нужен параметр шлюза, чтоб корректно отрабатывать автоматом, после конца аренды выданного адреса. Сообщение отредактировал nerve - Oct 1 2011, 19:06 |
I00matolog |
Nov 29 2011, 21:05
Пост
#9
|
Репутация: 68 Cтаршой Группа: BANNED Сообщений: 989 С нами с: 26-June 07 |
Есть список доменов
Надо както пробежатся по ним и посмотреть кто из них отдает телнет на 80 порт. И сооветственно на вывод вывести - если есть 80 порт - живой домен, если нет то мертвый. Оптимально баш. Памажите пожалуйста. |
Pilson |
Nov 29 2011, 21:24
Пост
#10
|
Репутация: 383 Selachimorpha Группа: Модеры Сообщений: 2 777 С нами с: 23-May 09 |
Синторрес погорячился, однако Причем тут виндовс?
Если навскидку - то: for t in $(cat 1.txt); do echo -n "$t "; nmap $t -p 80 -P0 | awk '/80\/tcp/ {print $2}'; done ya.ru open google.com open brig.emict.com filtered 1c.ru open piccy.info open |
I00matolog |
Nov 29 2011, 21:42
Пост
#11
|
Репутация: 68 Cтаршой Группа: BANNED Сообщений: 989 С нами с: 26-June 07 |
Синторрес погорячился, однако Причем тут виндовс? Если навскидку - то: for t in $(cat 1.txt); do echo -n "$t "; nmap $t -p 80 -P0 | awk '/80\/tcp/ {print $2}'; done ya.ru open google.com open brig.emict.com filtered 1c.ru open piccy.info open видимо у нас разные nmap. ваш синтаксис не подходит. telnet hvost-oruzhie.com.ua 80 Trying 62.149.9.28... Connected to hvost-oruzhie.com.ua. Escape character is '^]' [root@evaxua ~]# nmap hvost-oruzhie.com.ua -p 80 -P0 Starting Nmap 5.00 ( http://nmap.org ) at 2011-11-29 21:41 EET Nmap done: 1 IP address (0 hosts up) scanned in 0.29 seconds [root@evaxua ~]# nmap hvost-oruzhie.com.ua -p 80 -P0 | awk '/80\/tcp/ {print $2}'; |
Pilson |
Nov 29 2011, 21:48
Пост
#12
|
Репутация: 383 Selachimorpha Группа: Модеры Сообщений: 2 777 С нами с: 23-May 09 |
видимо у нас разные nmap. ваш синтаксис не подходит. [root@evaxua ~]# nmap hvost-oruzhie.com.ua -p 80 -P0 Starting Nmap 5.00 ( http://nmap.org ) at 2011-11-29 21:41 EET Nmap done: 1 IP address (0 hosts up) scanned in 0.29 seconds [root@evaxua ~]# nmap hvost-oruzhie.com.ua -p 80 -P0 | awk '/80\/tcp/ {print $2}'; Замечал в дебиане такой глюк. Из-под пользователя (не из-под рута) работает нормально, проверь. Также еще попробуй в nmap не "-P0", а "-PN" Сообщение отредактировал pilson - Nov 29 2011, 21:59 |
I00matolog |
Nov 29 2011, 22:05
Пост
#13
|
Репутация: 68 Cтаршой Группа: BANNED Сообщений: 989 С нами с: 26-June 07 |
Замечал в дебиане такой глюк. Из-под пользователя (не из-под рута) работает нормально, проверь. Также еще попробуй в nmap не "-P0", а "-PN" неа..не пашет. [root@evaxua ~]# nmap hvost-oruzhie.com.ua -p 80 -PN | awk '/80\/tcp/ {print $2}'; [root@evaxua ~]# nmap hvost-oruzhie.com.ua -p 80 -PN Starting Nmap 5.00 ( http://nmap.org ) at 2011-11-29 22:00 EET Nmap done: 1 IP address (0 hosts up) scanned in 0.29 seconds это бсд [root@evaxua ~]# uname -a FreeBSD evaxua 7.0-RELEASE FreeBSD 7.0-RELEASE #0: Tue Sep 9 15:06:38 EEST 2008 admin@evaxua:/usr/src/sys/i386/compile/EVAX-UA i386 [root@evaxua ~]# nmap -v Starting Nmap 5.00 ( http://nmap.org ) at 2011-11-29 22:00 EET зы. фаер [root@evaxua ~]# ipfw show 00100 33302273 49381428704 allow ip from any to any via lo0 00200 0 0 deny ip from any to 127.0.0.0/8 00300 0 0 deny ip from 127.0.0.0/8 to any 65000 1065996244 576900582440 allow ip from any to any 65535 0 0 deny ip from any to any Сообщение отредактировал I00matolog - Nov 29 2011, 22:06 |
Pilson |
Nov 29 2011, 22:07
Пост
#14
|
Репутация: 383 Selachimorpha Группа: Модеры Сообщений: 2 777 С нами с: 23-May 09 |
покажи man nmap
|
I00matolog |
Nov 29 2011, 22:09
Пост
#15
|
Репутация: 68 Cтаршой Группа: BANNED Сообщений: 989 С нами с: 26-June 07 |
|
rayder |
Nov 30 2011, 10:33
Пост
#16
|
Репутация: 128 Активист Группа: Пользователи Сообщений: 268 С нами с: 16-October 06 |
как вариант еще проверять скриптой из nrpe/nagios check_http,
#./check_http <domain> HTTP OK: HTTP/1.0 302 Found - 635 bytes in 0.100 second response time |time=0.100290s;;;0.000000 size=635B;;;0 #./check_http <domain> HTTP WARNING: HTTP/1.0 404 Not Found #./check_http <domain> Connection refused HTTP CRITICAL - Unable to open TCP socket ну и на основе ответа и/или error кода уже выдавать ответ Сообщение отредактировал rayder - Nov 30 2011, 10:34 |
smeegul |
Nov 30 2011, 15:10
Пост
#17
|
Репутация: 31 Активист Группа: Пользователи Сообщений: 298 С нами с: 4-December 06 |
Перезапуск упавшего bind-а(для debian):
» Нажмите, чтобы показать спойлер - нажмите опять, чтобы скрыть... « Сообщение отредактировал smeegul - Nov 30 2011, 17:25 |
fli |
Sep 21 2012, 14:12
Пост
#18
|
Репутация: 125 Постоялец Группа: Пользователи Сообщений: 1 640 С нами с: 12-November 07 |
Не подскажите как сделать зеркалирования одной папки в другую?
Сообщение отредактировал fli - Sep 21 2012, 14:12 |
Pilson |
Sep 21 2012, 14:19
Пост
#19
|
Репутация: 383 Selachimorpha Группа: Модеры Сообщений: 2 777 С нами с: 23-May 09 |
|
fli |
Sep 21 2012, 14:39
Пост
#20
|
Репутация: 125 Постоялец Группа: Пользователи Сообщений: 1 640 С нами с: 12-November 07 |
|
Упрощённая версия | Сейчас: 21st November 2024 - 12:12 |
Сайт не розміщує електронні версії творів, а займається лише колекціонуванням та каталогізацією посилань, що публікуються нашими користувачами. Якщо Ви є правовласником якоїсь частини опублікованого матеріалу та не бажаєте, щоб посилання на нього знаходилось в нашому каталозі, зв’яжіться з нами і ми видалимо його. Файли для обміну надані користувачами сайту і адміністрація не несе відповідальності за їх вміст. |