Официальная возможность получить лицензионный софт бесплатно.
Giveaway of the Day
Это не реклама!

Щелкните для получения прогноза по Биробиджану


среда, 29 июля 2015 г.

Шуточки от ISC или донастройка bind9

Начиная с версии 9, сервер имен bind хранит зоны в двоичном формате.
Безусловно. так получается компактнее и удобнее для обработки. Машиной. А что делать человеку?

ISC предлагает пользоваться щтатной утилитой named-compilezone, но несколько напрягает невозможность хранить комментарии и т.д. Может это и правильно, не знаю, но в комментариях к той же статье упоминается про некий параметр masterfile-format=raw|text. Вот он-то нам и нужен. Задать его можно либо глобально в /etc/bind/named.conf.options, либо по отдельности для нужных зон в /etc/bind/named.conf.local.

Для себя я предпочел глобальный вариант.

/etc/bind/named.conf.options

options {
    directory "/var/cache/bind";
ВСЯКИЕ ДРУГИЕ ПАРАМЕТРЫ
    masterfile-format text;
};

И всё, собственно.

Теперь далее. Почему-то по умолчанию apparmor в Ubuntu 14.04 настроен не совсем удачно для совместной работы с bind и webmin, поэтому как-то хитро блокирует бинду доступ к /var/lib/bind, куда webmin предлагает складировать файлы зон по умолчанию. Из-за этого  не проходит трансфер  с невразумительными ошибками.

Лечение:

/etc/apparmor.d/usr.sbin.named


Убираем "l" (строчная "L")
  /var/cache/bind/** lrw,

Вебмин имеет дурную привычку неправильно назначать владельцев, поэтому может понадобиться вручную

chown bind:bind /var/lib/bind/*.hosts /var/lib/bind/*.rev

Короче, для файлов зон. После этого всё встаёт на свои места.

вторник, 21 июля 2015 г.

Отключение IPv6 в Ubuntu

Поднадоело, что по умолчанию новые серверы идут со включенным IPv6, которого нет в нашей локалке.
WebMin утверждает, что


IPv6 запрещен, однако...

пятница, 17 июля 2015 г.

bash: дополнение по работе с массивами

Новый ABSG (версия 10 от 20140310) можно взять на TLDP, источник выглядит вполне официально. Даю ссылку на страницу, а не на конкретный файл, поскольку там можно скачать ABSG в нескольких вариантах. Я себе скачиваю PDF и "плоский" (всё в одном файле) html, но кому-то может понравится и другой из предложенных вариантов.

Теперь собственно о массивах. Более подробно можно посмотреть в ABSG-10 на стр 869

четверг, 16 июля 2015 г.

bash: получить список файлов в переменную, работа с массивами

Не самая редкая задача: обработать группу файлов, но при этом из список должен быть считан в переменную. Для чего? Ну, например, у меня есть каталог, в котором файлы с разными расширениями, причем над одними надо выполнять какую-то операцию, над другими нет, в зависимости не только от расширения, но и от имени или от погоды в Африке.

Рецепт:

переменная_скрипта=( шаблон_имён_файлов )

Дальше - согласно ABSG Ch. 27 "Arrays" и подробнее на стр. 415-416 (если у кого есть ссылка на официальный Advanced Bash Scripting Guide 2014 или 2015 года, буду признателен)
Количество элементов в массиве: ${#имя[@]}
Длина конкретного элемента: ${#имя[номер]}

понедельник, 6 июля 2015 г.

Групповая обработка файлов с похожими именами

Сервер OCS Inventory позволяет сохранять полученные от клиентов данные в виде отдельных файлов с расширением .ocs. Это может быть полезно для анализа истории изменений конфигурации. Но вот незадача: файлы плодятся гораздо быстрее кроликов и вскоре отведенный под них каталог забит файлами с именами вида "КОМП-дата-время-номер.ocs",  например, "computer017-2014-11-02-09-17-1.ocs", где "дата" и "время" - дата и время создания записи об этом компе. То есть, имена файлов с информацией об одном компьютере отличаются только полем "номер", причем в первом файле из серии это поле отсутствует.
Надо бы как-то навести порядок и хранить историю в архивах, поскольку нужна она только человеку - сама OCS хранит ее в БД MySQL.

Возникает задача: как упаковать файлы истории в отдельный для каждого клиента архив?