LINUX.ORG.RU

Сообщения DRVTiny

 

Утилиты для работы с ActiveSync (cli)?

 , ,

Нужно для чудесного мониторинга сделать проверки работоспособности базовых функций ActiveSync на чудесном же сервере Exchange заказчика (не буду уточнять какого, просто скромно упомяну, что Exchange заказчиком (внезапно) куплен на наши с вами деньги).
Собственно, вопрос в том, что я не нашёл ни одного cli-шного клиента ActiveSync под Linux - и это при том, что некоторые вещи (например, получение Folder Hierarchy) у меня отлично получаются даже на чистом BASH+curl.
Собственно, утилит для работы с AS'ом под Linux действительно нет вообще или я плохо искал?
P.S. Реализовал бы все проверки AS на баше, но сейчас есть затыка в командой SendMail: оно мне отвечает, что-де я ему неправильно сформированный wbxml подсунул. И честно сказать, я уже слегка задолбался с этим бороться, хочется просто готовое решение или хотя бы вменяемый пример в исходниках.
Заранее всем спасибо размером с типичный образчик продукции БелАЗ'а :)

DRVTiny
()

Что можно промониторить у PostgreSQL, имея zabbix agent и больше ничего?

 ,

Собственно, есть zabbix agent, установленный на системе клиента, куда нет доступа по ssh и в принципе нет доступа. Никаких специфических UserParameter'ов на агенте не прописано, он такой вполне себе голый как сокол.
Есть PostgreSQL, который работает на системе клиента и наружу доступен портом 5432. Никакого доступа туда тоже нет (для мониторинга не заведён пользователь).
AllowRemoteCommands установлен в 0, так что с этой стороны не подлезть
Известно, что система - RedHat ES 6.x

Внимание, вопрос:

Что можно промониторить в такой немного странной, но реально имеющей место быть ситуации?
Я добавил proc.num[postgres] и net.tcp.service[postgresql]
Следующим шагом промониторить ошибки в логах Postgres
Есть ещё какие-нибудь оригинальные идеи? :)

DRVTiny
()

Поругайте опции mysqldump для дампа Master'а

 ,

Хочу использовать такой набор опций для дампа мастера. Уточню, что все create table делаются перед этим дампом, посредством парсинга show create table (думаю использовать тот же mysqldump для этого. а то с учётом блокировок на запись слишком длинно получается, да и непонятно, зачем было изобретать велосипед :) ).
Вот. Итак, сами опции:

--no-create-info --master-data --single-transaction --quick --add-locks --disable-keys --extended-insert --routines --triggers
ЧЯДНТ? Или ПЯВДП? :)
Заранее гигантское спасибо всем мускул-фанам, к которым я и сам себя всё больше причисляю, ибо usability&ergonomic&documentation во многом компенсируют все огрехи!
P.S. Есть подозрение, что лучше --master-data=2, поскольку дефолтное 1 весьма навязчиво устанавливает начало репликации.

DRVTiny
()

Неубиваемый процесс

 , , ,

На своей системе (Ubuntu 13.10) уже не в первый раз замечаю странную особенность: при запущенном VirtualBox'е в какой-то момент может перестать убиваться тот или иной процесс.
Например, сейчас я птаюсь убить проклятый Firefox, который стал уже тупее и ужаснее самого ослика, а потому использовать его приходится со скрежетом зубовным исключительно ради хорошей поддержки стандартов.
Говорю процессу Firefox: kill -9 899 - а он всё «работает», продолжает жрать 99% одного ядра, ничего полезного при этом не делая (даже *лядский flash не показывая). При этом до запуска VirtualBox'а я прекрасно использовал xkill (забинден на Ctrl+Alt+K - всем советую) для ритуального убийства огнелисов - и всё было нормально, дохли с одного клика!
Скажите, может слышал кто про такой баг - вдруг все уже давно в курсе, что загрузка модулей ядра VirtualBox приводит к таким глюкам и только я всё ещё в танке? :)

DRVTiny
()

Яркость ламп внешнего (не нотубучного) дисплея: как её изменять?

 , , , ,

Вопрос: а как, собственно, она меняется в случае с дисплеем, подключенным по DVI или уж тем паче D-Sub?
Какой протокол используется для настройки дисплеев (разработанный VESA?) и почему настройка яркости чаще всего сводится к «притушению» выводимых цветов, а не к регулированию выходной мощности ламп подсветки?
Ну и как пример вот ссылка на некий мануал: http ://prof-labs.ru/blog/nix/167 - вот что там конфигурируется через ACPI: видюха или всё-таки дисплей?
UPD:

$ cat /sys/class/backlight/acpi_video0/brightness
cat: /sys/class/backlight/acpi_video0/brightness: No such file or directory
Дисплей у автора статьи конечно же ноутбучный, зараза.

DRVTiny
()

Можно ли все новые данные поместить в партицию?

 ,

Обычно делают RANGE BY (field) ADD PARTITION lt_smth LESS THAN (smth), а можно ли сделать наоборот? Мне нужно, чтобы в НЕпартиционированной таблице добавилась партиция с «новыми» данными, можно ли так сделать. Подозреваю, что нельзя, но не понимаю, почему.

DRVTiny
()

DuMeMe: хорошая, годная обёртка для нетривиальных дампов MySQL

 , ,

Использовал её для того, чтобы слить дамп, в котором будет добавляться партиционирование и сжатие перед собственно дампом базы.
Есть режим dry-run. Как пользоваться - наглядно описано в dumeme -h
Для того, чтобы утилита работала, советую скачать либо весь репозиторий на гитхабе, либо хотя бы файл my_helpers.inc: это нужный утилитке include, который должен лежать в одном с ней каталоге (предполагается использовать include совместно с другой утилитой (alter_part), поэтому он и вынесен в отдельный файл).
Почему так называется? К эмо отношения не имеет, к геям тоже. Это что-то про «Do MySQL Master dump» :)
Собственно, ссылка: https://github.com/DRVTiny/bash4-helperScripts/blob/master/mysql/dumeme

DRVTiny
()

Поставил LMDE: WTF с консольными шрифтами?

 , , ,

Поставил LMDE, выбрал при установке русский язык... Так оно теперь при загрузке с «init=/bin/bash», «1» или же просто при Ctrl+Alt+Fn из графики - печатает только по-русски и никак иначе. Я уже перепробовал порядка 100500-от вариантов переключения раскладки - но она не переключается, вот в чём засада!
Погрепил /etc - настроек, насилующих консоль кириллицей не нашёл. Где это искоренить, как напалмом выжечь?
Мне нужно NVIDIA-дрова поставить *.run'ом, а выйти из графики в консоль и напечатать там хотя бы просто ${var//+([a-z])/} не получается.
P.S. Честно вам скажу, ASPLinux в 2003-ом году был в 100 раз лучше настроен, чем это поделие. Вообще современные дистрибутивы скатились в какое-то с-ное г-вно.

DRVTiny
()

Установщик Zabbix-агента: 2 вопроса и никаких зависимостей

 , ,

В любом RedHat или Debian-based дистрибутиве запускаете скрипт, отвечаете на вопросы об адресе сервера и хоста - и готово, у вас установлен Zabbix agent версии 2.2.1
Особенность данного установщика - в том, что он может «откреплять» (detach), «подключать» (attach) и заменять (replace) своё содержимое, т.е. собственно бинарники zabbix_agentd для 2-х архитектур. Таким образом, Вы можете собрать какую угодно версию агента и юзать её вместо той, которая включена в инсталлятор по умолчанию!

Авто-инсталлятор здесь:
https://github.com/DRVTiny/AgentMerlin/blob/master/agentMerlin.sh
2.2.1 из-за того, что используются статически прекомпилированные бинарники агента с офсайта Zabbix, а там пока ещё нет таковых для версии 2.2.2 У себя статику для amd64 собрал, а вот i386 будет чуть погодя, и тогда содержимое автоинсталлера обновится до 2.2.2

DRVTiny
()

На чём сделать диаграмму зависимостей для системы мониторинга?

 , dsm, ,

Имеются:
Ресурсы:
Атрибуты ресурса: Тип: - Составной (состояние ресурса невозможно определить, не изучив состояние каких-либо иных объектов диаграммы)
- Простой (состояние ресурса можно узнать напрямую - например, считыванием состояния триггера из системы мониторинга)
Список зависимостей ресурса:
Атрибуты зависимости:
- Направленность
В данном случае предполагаем, что зависимости только однонаправленные. Соответственно, у простых ресурсов нет зависимостей, у составных зависимостями могут быть как простые ресурсы, так и другие составные
- Идентификатор ресурса-зависимости
Логическое выражение, определяющее состояние ресурса на основе вычисленных зависимостей:

ResE=(ResA OR ResB) AND (ResC OR ResD)

Эмм... Если я ещё не вынес никому мозг столь невероятно сложными вещами, скажите, есть ли язык XML-подмножества, который позволяет описать диаграмму зависимостей сервисов и несложным образом «наполнить» её программным кодом, который будет рекурсивно спускаться по графу зависимостей до простых ресурсов и подниматься, последовательно вычисляя состояния составных? Вот например абстракции UML разве подходят для данной задачи?
Если такого нет, я посыпаю голову пеплом и скромно удаляюсь.

DRVTiny
()

Как объединить хэши, представленные ссылками?

 , ,

Пока только вот до такого догадался (и то не без помощи StackOverflow). А есть ли более... элегантный метод?

$h1={a=>1,b=>2};
$h2={c=>3,d=>4};
$h1={%{$h1},%{$h2}};

DRVTiny
()

Рисовалка диаграмм объектов

 diagrams,

Есть ли под Linux (хотя бы даже и под Windows изначально, но хорошо работающая под wine) такая рисовалка диаграмм, в которой без всякой программисткой специфики можно было бы рисовать объекты с их взаимосвязями, да так, чтобы у объектов можно было бы указывать свойства в произвольной форме? Ну т.е. чтобы можно было выбирать объекты какого-нибудь стандартного класса (например, «компьютеры»), но при необходимости создавать собственные классы или легко модифицировать существующие?
Сразу уточню, что я перепробовал несколько UML-редкаторов, и это явно не то, что мне нужно. UML-редакторы, судя по всему, созданы для ну очень умных людей, рисующих некие абстрактные сущности. Мне же нужны совершенно обыкновенные объекты из более-менее объективной реальности (компьютеры / сотрудники организации / отделы).
Может быть, есть UML-редакторы, которые предлагают в качестве изображений объектов какие-нибудь сервера, а в качестве атрибутов «количество процессоров»? Ну или там - человеков, а в качестве атрибута - количество жён :)

DRVTiny
()

OpenSource Notification Engine: Неужели не существует? Ни одного?!

 ,

Единственное, что я нашёл на эту тему: http://is.muni.cz/th/208428/fi_m/xnguyen_dp
То, что описано в доке (универсальный движок для отправки сообщений по множеству протоколов, расширяемый модульно) - меня вполне устраивает. Но... дело в том, что никакого NotX в природе на самом деле не существует.
Значит ли это, что я плохо смотрел или то, что мне нужно писать такой движок самостоятельно? :)
P.S. Идея, как это нетрудно понять из контекста, в том, чтобы отправлять сообщения в формате наподобие обычного электронного письма, но - пользуясь произвольными транспортами: SMTP, MAPI, XMPP, SkyPE, ICQ, SIP/IAX, SMS, etc. (... over 9000 :) )

DRVTiny
()

ACL на основе DynList'ов не работают

 , dynlist, ,

Кто-нибудь пробовал использовать динамические группы для задания ACL в OpenLDAP?
Согласно официальной документации:

Dynamic Groups are also supported in Access Control. Please see slapo-dynlist(5) and the Dynamic Lists overlay section.


В объективной же реальности группа со статическими member'ами для задания ACL'ей работает правильно, а группа с динамическими - нет . В логах я вижу серым по чёрному, что openldap сравнивает мой DN только со статически заданными членами группы, а с динамическими даже и не думает сравнивать, он их даже не начинает просматривать
У кого-нибудь получалось сделать dynlist+acl? Может, есть какой-то особый бубен, чтобы оно заработало?
P.S. У меня OpenLDAP 2.4.31, какой-то штатный из поставки Debian 7

DRVTiny
()

Абсурдный «No route to host»

 , ,

Здравствуйте, дорогие коллеги!
Как говорится, прошу прощения за беспокойство, но вот случился у меня такой казус и хотелось бы узнать, что вы об этом думаете :)
Есть две машинки, называются scilla и haribda. Это виртуалки с CentOS на VirtualBox'е. Сетевые адаптеры у них в host-only networking'е в одной подсети 192.168.3.0/24.
Друг друга отлично видят, взаимно пингуются, ходят по ssh одна на другую, всё здорово.
Теперь: поднял на обеих виртуалках Apache/httpd, он висит на порту 80 вот таким нехитрым образом (haribda для примера):

[root@haribda cluster]# lsof -iTCP:80 -sTCP:LISTEN
COMMAND  PID   USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
httpd   1586   root    3u  IPv4 2447054      0t0  TCP *:http (LISTEN)
httpd   1588 apache    3u  IPv4 2447054      0t0  TCP *:http (LISTEN)
httpd   1589 apache    3u  IPv4 2447054      0t0  TCP *:http (LISTEN)
httpd   1590 apache    3u  IPv4 2447054      0t0  TCP *:http (LISTEN)
httpd   1591 apache    3u  IPv4 2447054      0t0  TCP *:http (LISTEN)
httpd   1592 apache    3u  IPv4 2447054      0t0  TCP *:http (LISTEN)
httpd   1593 apache    3u  IPv4 2447054      0t0  TCP *:http (LISTEN)
httpd   1594 apache    3u  IPv4 2447054      0t0  TCP *:http (LISTEN)
httpd   1595 apache    3u  IPv4 2447054      0t0  TCP *:http (LISTEN)
Теперь со scilla идём на 80-й порт haribda и видим абсурдную вещь:
[root@scilla cluster]# telnet haribda 80
Trying 192.168.3.4...
telnet: connect to address 192.168.3.4: No route to host
И это при том, что:
[root@scilla cluster]# telnet haribda 22
Trying 192.168.3.4...
Connected to haribda.
Escape character is '^]'.
SSH-2.0-OpenSSH_5.3

Э... Мне трудно сформулировать вопрос иначе как с использованием английского ругательного слова, но... я вынужден признать, что проработав 8 лет системным администратором я всё-таки слегка обескуражен и вынужден спросить:
ЧТО ЭТО?! И как такое вообще может быть?
P.S. SELinux (it's a shit that break things, you know) - отключен

DRVTiny
()

Как сделать resize файловой системы, раскатанной на всё блочное устройство?

Я сдуру, видимо, раскатал файловую систему на весь виртуальный жёсткий диск. Теперь после увеличения размера «жёсткого диска» извне виртуалки, команда resize2fs фейлится, не понимая, что нижележащий блок «вырос».
Что делать в такой тупиковой ситуации? :)

DRVTiny
()

Как отредактировать только часть файла и не трогать остальную?

 

Есть гигантских размеров (порядка 125 Гб) текстовый файл, в первых 1000 строках которого нужно сделать замену, не перезаписывая остальные 10^9 или сколько там строк.
Вопрос: как это сделать sed'ом, а если не sed'ом, то чем?
Дело в том, что sed, судя по всему, в режиме -i тупо копирует файл строка за строкой, а под конец «магически» заменяет старый файл новым. Соответственно, если в sed сделать q, то файл оборвётся на той строке, на которой был сделан q, а если q не делать, то придётся ждать до посинения, пока sed героически перезапишет 150Гб на диске. Ну ок, предположим, что для дозаписи данных (а именно это, к сожалению, мне и нужно), так или иначе всё равно придётся перекорячить весь файл, но вот а если бы мне нужно было, скажем, символ B на символ А в первых 200-ах строках поменять - ведь для этого очевидным образом перезапись всего файла не требуется: достаточно лишь прочитать первые 200 строк и поменять один байтик на другой...

DRVTiny
()

PowerDNS Recursor за строгой стенкой

 

У меня в компании настолько сурово всё, что обращаться к корневым серверам мой recursor не может физически: порты закрыты на выход. Создание root hint-file'а руками тоже не помогает: если вместо настоящих корневых серверов прописать внутренние DNS-сервера компании, то тоже ничего не работает.
Вопрос: почему так может быть и что с этим делать? В BIND'е есть настройка forwarders, а в PowerDNS её нет ни в каком виде...

DRVTiny
()

Самый простой протокол монтирования remote directory?

Без шифрования, без авторизации, с полным доступом на уровне прав «сервера», отдающего шару? Элементарно делается на Samba, да, но... мне ещё нужно, чтобы на стороне сервера использовался только один порт TCP/IP или даже UDP/IP. Я уж думаю по iSCSI что ли блочное устройство подцепить - но там вроде тоже не один порт используется... Хотя по своей простоте и очевидности iSCSI максимально близок к правильной реализации: ты просто отдаёшь забитый нулями «файл» как блочное устройство на удалённую систему, а та пусть делает с ним что хочет.
В данный момент копирую ssh поверх ssh (обратный туннель и sshfs), но в рамках медленного соединения это оооочень тягостно и печально.

DRVTiny
()

А как вы смотрите логи Zabbix-сервера?

 ,

Есть Zabbix-сервер (уже отлично)
Есть Zabbix-frontend к этому серверу, всё настроено и работает (просто супер! ;))
Вопрос на 10000$: как из этого чудесого фронтенда увидеть такую в общем даром никому не нужную вещь, как лог zabbix-сервера? Я имею в виду то, что сервер пишет в /var/log/zabbix, а не абсолютно бесполезную информацию о том, что я в этом веб-интерфейсе делал и когда (спасибо фронтенду конечно, но я и сам в курсе).
На самом деле проблема должна была бы «всколыхнуть сообщество» уже давно, поскольку ситуации, когда банально просто нет доступа физически на сервер с zabbix_server, а есть только фронтенд, пусть даже и с правами Admin'а - это вряд ли такая уж редкость... Если бы zabbix писал в базу данных события логов, которые отображались бы записью в syslog - всё было бы замечательно, но zabbix просто тупо пишет в файл и не даёт никакой адекватной возможности прочитать этот файл иначе как посредством перенастройки syslog'а (заказчик машет ластами и крутит пальцем у виска) или прямого доступа по ssh на целевую машинку (заказчик нервно хохочет, догадываясь о том, что нелегально попасть по SSH на его машинку можно, поскольку данный им админский доступ к фронтенду позволяет делать подобные вещи, пусть и через Ж).
В общем, как увидеть логи сервера в морде веба, а не через удалённый доступ к консоли?
Сапсибо! ;)

DRVTiny
()

RSS подписка на новые темы