Показаны сообщения с ярлыком скрипты. Показать все сообщения
Показаны сообщения с ярлыком скрипты. Показать все сообщения

Python: наследование и логирование

Не знаю кто как, а я ленивый. Писать длинные строки кода, или повторять один и то-же код много раз в разных местах мне кажется неправильным и нерациональным. Это утверждение в полной мере относится и к записи отладочных сообщений. Если мне нужно организовать правильную запись логов в проекте, многочисленные мануалы рекомендуют использовать примерно такое:

Mac OS X: примонтировать диск dmg в терминале

Задался вопросом,- возможно ли примонтировать образ диска dmg в командной строке Mac OS X? Это может быть нужно, например, в случае удалённого подключения по ssh. Короткий ответ: возможно :-).

В этом поможет команда hdiutil. С параметром attach просим подключить диск, система проверяет образ и сообщает путь монтирования вида /Volumes/<имя диска>


$ hdiutil attach <полный путь к файлу образа>
expected   CRC32 $6FBC93B9
/dev/disk2                                         /Volumes/<имя диска>

Отключить (размонтировать) можно той-же командой и параметром detach, только вместо пути к образу диска указываем уже путь монтирования, который нам вернул hdiutil attach:

$ hdiutil detach Volumes/<имя диска>

Мониторинг запросов к DNS-серверу

Для быстрого мониторинга запросов к DNS_серверу можно воспользоваться простым скриптом
tcpdump -n -i fxp0 -c 20 dst port 53
где fxp0 - интерфейс, на котором снимается трафик, 20,- количество пакетов для перехвата.
Необходимые опции можно узнать в man tcpdump. Там-же можно узнать о формате вывода запросов DNS:

If a query contains an answer, nameserver, or authorative section, ancount,
nscount, or arcount are printed as [na], [nn], or [nau], where 'n' is the
appropriate count.


Это позволяет показать только нужные записи, например запросы клиентов в два столбца: "IP-адрес клиента" и "запрошенный адрес", исключая запросы PTR:

tcpdump -n -i fxp0 -c 20 dst port 53 | grep -v '1au' | grep -v ".in-addr.arpa." | awk '{ print $3,$8};'