• ↓
  • ↑
  • ⇑
 
Записи с темой: Работа (список заголовков)
12:40 

Раскопали могутную...

... багу с терминалами сбора данных. Жыдомасонские педеросатанисты а.к.а. "разработчики системы" юзабильности для забили пункты меню на цифры 0-3, проверку сделали на javasсript'e по событию onkeypressed. Мякотка оказалась в том, что беспроводная читалка штрихкодов это самое событие в процессе работы генерировало.
Сканирует кладовщик штрих-код с "0" в середине - и фигакс! Вылетает из программы. Ну или просто вместо 14-ти символьного штрихкода получает на выходе 14-(0-3)* - ясен пень, система ничего не находит. Ну и для совсем анекдота - происходит это только с одной моделью терминала, ER'ка ничего подобного себе не позволяла.
Пофиксить мы, тащем-таа, поворкараундили путем выпиливания функционала хоткеев (Бо разбираться в этом жабаскриптинге желающих нет) багу закоммитили, diff приложили - а деплоить очкуем, бо - "регрессия" же будет!

@темы: Работа

13:20 

Забавный фокус

Дано. Поднятый непойми кем и непойми когда сервер freenas на 7.4-p7.
Через iscsi раздается 600+ гигов для бэкапа. Физически раздается не блочное устройство, а файл.
Раздается, работает - но есть нюанс! Из 600+ раздающихся гигов реально используется несколько меньше, а место таки трэба. Т.е. надо бы экспортировать через iscsi мнэээ... "динамически увеличивающийся" носитель.
Вопрос? Нивапрос, гуглим в сторону sparse files, которые таки поддерживаются в UFS2.
dd if=/dev/zero of=/mnt/sparse.img bs=1G count=1 seek=619 conv=sparse
"Проматываем" 619 гиговых блоков от начала файла, дальше пишем гиг нулей (Реально можно было и точнее подогнать, но считать лениво), указываем, что создаем "разряженный" файл, при этом реально запись "нулей" не производится.
Делам ls -lah - уупс! Видим размер 620G. Гм. Делаем на всякий случай du -hd 1 /mnt - ууупс-2, занято полтора гига. Т.е. ls со sparse-файлами просто работать не умеет (Ну или там ключик какой специяльный нужОн, не разбирался). Дальше экспортим через iscsi, форматируем, пишем, проверяем. Работает.
Если вдруг нужно на standalone-машине повошкаться (Ну-там jail'ы покрутить или еще чего) можно воспользоваться loop-устройствами, о чем я вроде даже и писал:
mdconfig -a -t vnode -f /путь -u номер
gpart create -s mbr /dev/mdномер
gpart add -t freebsd /dev/mdномер
newfs //dev/mdномерs1
mount /dev/mdномерs1 /путь
Работаем!

P.S. Из замеченных косяков - зверская фрагментация при работе "на запись" с большим количеством sparse-файлов, возможность отстрелить себе ногу с помощью overcommit'a так же ничем не ограничена. А вообще - работает и работает хорошо.

@темы: FreeBSD, Работа

11:28 

Как из хорошего...

... service desk'a сделать плохой bugtracker? Элементарно, Ватсон!
Отламываем CMDB. До основанья, без "затем". "Нет, он у нас есть, но мы его вам не дадим - он слишком сложный чтобы масштабировать его на все предрпиятие"(Цы). Отламываем web-морду. Не "до основанья", нет - "но мы вам её не дадим", ибо "она не допилена и к заявке нельзя прикладывать файлы"(Цы). Разрешаем прием заявок по e-mail'у. В свободной форме, ага. Тема - в тему заявки. "Классификация? Не, не слышал!"(С) Основным каналом приема делаем - правильно, те-ле-фон. Ну, типа - "если заявка приходит по мылу в свободной форме - все равно придется перезванивать"(Цы). Про то, что заявку НУЖНО оставлять через веб-морду с помощью набора чек-боксов с _автоматической_ первичной классификацией и _автоматическим_ предоставлением "типового решения" из KB мы, разумеется, тоже не слышали. Ах, "у вас не хватает диспетчеров? так вы же сами инициировали создание единого call-центра? Ах, вы в пилот не входите? Ну, да, не входите - но потом ведь войдете! Наверное... А? Запускать? Да со среды. А? Ваши проблемы!"(Ц). Далее запихиваем в SD кучу самостоятельно заполняемых исполнителем полей. В свободной форме, ага. Не, ну требование вести протоколирование действий - еще туда-сюда, но вот просьба указывать РЕАЛЬНО ПОТРАЧЕННОЕ ВРЕМЯ на решение - идиотизм совершенно невдолбических масштабов. А) Исполнитель ну СОВЕРШЕННО не заинтересован предоставлять реальные значения. Никак. А-ну-как по концу месяца выяснится, что он, с-ссабака работал на пять минут меньше положенных 168 часов в неделю? Неее... пусть лучше 200+ часов выйдет... Б) Заказчик НИКАК не может проконтролировать предоставляемые цифры. Не, РТК у нас конечно есть - но в случае реальных проблем в реальной рабочей обстановке провести хронометраж - анрыл чистой воды. Больше того, даже "мотивированный" сотрудник просто физически не сможет сказать, сколько рабочего времени _реально_ потрачено на решение проблемы силами трех отделов в течении двух недель. И да, такого - "в свободной форме, но обязательно" там не то, чтобы много - но есть. Ну и для достижения действительно фейерического тыздеца в систему надо запихнуть, гм... неформализованные и не стандартизованные на текущий момент процессы (Стандарты есть, но по каждой системе - свои, бо аутсорс и разные поставщики услуг со своими политиками.) - например, problem solving и change management. По ITIL'ю, ага. Ну вот типа у вас это вообще никак описано не было, а вот теперь держите Идеального Сферического Коня в Вакууме. Назначайте архитекторов, собирайте комиссии из, минимум, трех человек, "компонуйте изменения-в-релизы" и отчитывайтесь, отчитывайтесь, отчитывайтесь...
Пи-лин. Думал, хуже, чем текущий вариант из емыла с 1цой слабать нельзя в приципе - ан нет, можно и еще как. Надо только 100600 нефти специалистам занести...

@темы: Работа

12:07 

(Некоторые) cisco-админы...

... НАСТОЛЬКО суровы, что в 2012ом году используют telnet для ежедневной работы. TELNET, блин! Tel-net!!!
А ключи шифрования на железки грузят через tftp. Ууууууу!!! Повбывав бы!!!!
Каждый раз, как вижу это - глаза вытечь норовят. Бррр.

@темы: Работа

14:01 

И еще одни...

... презабавнейшие грабли. Ставим на работе cisco webex - еще одну жЫрную Ынтерпрайзную фигню для видеоконференций и не только. 19Гб vmware appliance template, разворачивается ажно в пять виртуалок 400Гб, на сайзинге 50 рыл кушает ажно целое лезвие (48 гб по оперативе, ога) и просит еще, тормозявкает при перезагрузке, но вроде как работает. Впрочем, не суть.
Ставим, запускаем, настраиваем, пробрасываем, заводим - генерякаем сертификат. Через стандартный CSR с помощью стандартного же виндового CA.
Генерякаем, запускаем, тестируем - ок.
Подхожу к своему компуктеру, запускаю типа-оперу - вижу фигу. Браузер не той системы. Ну, гм-да, это привычно. Запускаю ё-моё - и вижу "Сертификат отозван, проблема безопасности, закрыть?" И никаких других вариантов. Эй, коллеги - зайдите с ие, гляньте, все ли в порядке? Один заходит - ну все, нормально.
Гм. Чищу SSL-кеш, захожу еще раз - та же байда. Гм. Повторно импортирую корневой сертификат. Та же байда. Кричу коллегам, что, мол, фигня какая-то. Второй запускает ие - и видит ту же самую фигу. Запускает хромого инвалида (А хранилище сертификатов у него то же самое), получает предупреждение, но, в общем-то, заходит. WTF?
Смотрю, что прописано в CRL корневого сертификата. Качаю crl, openssl'ем перевожу в printable-формат, и сюрприииз! Нахожу там серийник сертификата. Смотрю в базе а - серийник-то пишется, принадлежит _другому_ сертификату, и впрямь отозванному. Странный, в общем, глюк при выдаче - надо будет разбираться.
Но почему ИЕ у половины ругается, а у половины нет? Усе просто - у каждого CRL задается срок действия, в течении которого можно работать с кэшированной копией. Соответственно, кто часто работал в ИЕ (Спалились!) имели кешированную копию списка отозванных сертификатов, а остальные, соответственно, получили наиболее свежий вариант и обломались.
Наглядная иллюстрация проблем безопасности, ага. Накатали инцидент, оформили и отправили в ДЕБ, пусть думают, что-как с этим делать. Мелочь, а приятно!

@темы: Работа

10:46 

Снова один.

Пожалуй, что и к лучшему. Жаль, что все вышло так, как вышло - но "Если-б покойник зашел с бубей..."(С).

Рабочее, матерное

@темы: Жизнь, Работа

09:47 

Еще один поиметый стыд...

... невозможность задать сетевое имя устройства без танцев-с-бубном.
Не то, чтобы оно было сильно-сильно нужно - но большинство почтовых клиентов отсылают в HELO\EHLO именно его, а энная часть правильно настроенных почтовых серверов содержит в конфиге reject_non_fqdn_hostname или something-like-that в следствие чего работать с отсылаемым ip-address'ом отказывается.
И опять таки, хрен бы с ним - но эта урна даже ip определяет криво! Включаем встроенную же функцию раздачи тырнета через точку доступа и voila! С нами отказываются работать даже те сервера, которые не требуют корректного hostname в ehlo - rfc1918 network? Пшел нафиг, смерд!
Опять таки, я понимаю, что ЦА девайса пользуется "чемдают" - т.е. клиентом жужлопочты, но @№;№;%!!!!
В общем, вы меня поняли )

@темы: Работа, Жизнь, Ведерочко

20:23 

Поддержка криптографии...

... в ведроиде это поиметый стыд какой-то, пардон за massive facepalm.
От тоби, парень, твиттор, вот тоби фейсбук - РАДУЙСЯ!
Так мне бы эта... на корпоративный сайт зайти...
От тоби еще и браузер - ну чего ты ыстчо хочешь?
Сертификат бы положить... ну там хотя бы корневой, не говоря уж о клиентском!
Сертификааааат?! Ты чо, chaild porn у себя хранить вздумал? Торренты рррраздавать через tor? Знааааем мы вас! Вот тоби еще и от вконтактика сертификатик, и молчи в тряпочку!!!
Самое смешное, что там где это надо жужлю - добавить сертификат таки можно. В wifi eap-tls имеется ipsec vpn тоже наличествует - ну вдруг какой-нибудь бузинесс-пользователь решит в корпоративненький вайфайчик вылезти, да и откроет свою жмыльницу, да и жмякнет по ошибочке на письмишко "Увеличимчленвиагранедорого" - profit! Как такому стремлению мешать? Никак-никак. А вот Exchange active-sync на сертификатах - хрен! Пользуйтесь жмыльницей и не чирикайте.
Не, ясен пень, 100500 программиздов наджамшутили 100400 аппликух на этот счет - каждая со своей keystore, учитывая общую рукожопость ынтерпрайз жава мобильных быдлокодеров + общую ситуацию с приватностью на платформе (Найдите мне аппликуху, которая бы "не ограниченный доступ к сети" не требовала и чего-нибудь полезное бы делала, ага) - зрелище просто таки душераздирающее. Вариант с путем до pkcs12 файла еще не самое страшное, да.
Но, внезапно! Вышел ICS, a.k.a. 4+ в котором до жужля похоже что-то даже доперло (Как до той утки, ага!) и они та-дам! Таки высрали крипто-апи. В мелкоцопт индус-стайл, да. Т.е. не там, не так, и не тогда.
Кладем в корень (Это ВАЖНО! Иначе не работает! В корень и никак иначе!) встроенной флешки сертификатик, через настройки-безопасность тырцаем "импортировать" и ура! Корневой сертификат становится в доверенные. Кладем туда же pkcs12 с пользовательским сертификатом, тырцаем то же самое и... и не и. Т.е. он те-о-рех-тис-ски куда-то там заимпортился (Sdk говорит, что в /data/чего-то-там, но проверить без root'a не выйдет), а больше, в общем-то и не проверишь... "Мамой клянус! Гадом буду! Зуб даю, поставил!"(Ц) Впрочем, проверишь! Запускаем создание vpn, ставим ipsec и... получаем возможность выбрать импортированный сертификат. По ХЕШУ!!! По, мать его, хешу!!! Не, я понимаю, что у целевой аудитории быдловедерка за всю жизнь ни одного сертификата не появится, но оладушек!!! Программизды жужля своим индусским моском могли бы по-ду-мать, что сертификатов у юзверя может быть несколько больше одного и различать их по sha256 (а у параноиков и sha512 встречается!) хешам, которые, мать его!!! НЕ ВЛАЗЯТ в строку (Чюдо дезигна от жужлевого Жоппса, не иначе) мнээээ... не слишком удобно???
К 6ой версии индеец быстрое полено сообразит, что... ну вы поняли. А пока так, да.
Впрочем, api это четверть дела - кто их юзать-то будет, а? Сам жужль, и тот в индусском стиле. Т.е. в своей типа-мыльнице EAS типа-слабали, а вот про возможность аутентификации на IMAP/SMTP как-то... Ну-вы-же-понимаете, да? Если индусу сказали соединить две точки линией, он их конечно соединит, но ТАК, чтобы ни дай б-же третью не задеть! Индусов много, и всем им надо будет чего-то программиздить, не хорошо лишать коллег работы!
Да, S/MIME в этом поизделии тоже не выродили - эт вам не "Перни другу! Теперь-в-контакте!", тут, блин, дуууумать надо, rfc читать...

С-ссабаки. Женского. Полу. В симбиане возможность работать с сертификатами была, в палме! Палме, блин, доисторическом - была, в хулитовой КПК'шке на винмобилке - тоже чего-то там светилось, помнится, а супер-жужло-оси - буй! Н-нниасиляторы косорылые, повбывав бы!

@темы: Ведерочко, Жизнь, Работа

09:30 

Рано или поздно...

... (Такими темпами скорее рано, ага) я таки соберусь с силами и накатаю телегу на предмет "Почему древнючая nokia E71 на древнючем же symbian'e круче чем acro s чтоугодно на ведроиде, но пока - маааленький кусочек.
- Мужик, есть обнова!
- Ваааау!
- Но я тебе её через OTA не дам.
- Да? Ну вот тебе виртуалка с топором, вот тебе пыцы компаньён. Ок?
- Ага. Только у тебя интенета нету.
- Хм. Как нету? Ну вот тебе в твоих же собственных параметрах - кнопка "Тест", "Интернет ЕСТ" - чо тебе еще надо?
- Интернет! Вот, видишь - топор жевтый треугольник кажет, сталбыть нет у тебя тырнета!
- А давай я тебе проксю подниму? Ты же с ней работать умеешь?
- Умею!
- Ну вот тебе прокся. Без авторизации. Тест?
- Тест! Интернет ест!
- Обновляйся!
- Не-а! Видишь жевтый треугольник? Сталбыть, нет у тебя интернета. У меня есть, а у тебя нет. А надо!!!
- Гм. Вообще-то есть, но сейчас посмотрим, что там этому топору от него надо...
Ззпускаем диагностику - все хорошо, прекрасная маркиза, но нужно выполнить повторный вход в систему, а без того - хрена тебе лысого вместо интернета.
Шо за нафиг? Смотрим, куда он за диагностикой лезет - видим, что доступ он получает, а тырнета "ну, типа, нет".
Googling around дал strange answer - "Машину в спячку уводил? Уводил! Ну и сам виноват. Будет у тебя желтый треугольник до ребута... или хотя бы до реплага сети". Проверяю опусканием виртуалбоксовского интерфейса - иж ты, масленница! Работает. На всякий случай проверяю на физической машине - бага с желтым треугольником на виндах reproduce'ится.
Запускаю - апдейт-есть-апдейт. Пилин. Не прошло и двух часов, ага.

@темы: Жизнь, Работа

16:14 

Вечно от этих москвичей...

... сплошная зараза! :)
Кто-то из прибывших со своим ноутбуком гостей притащил на нем спамбот. В сочетании с открытым гостевым вай-фаем и отключенным антивирусником...
А в остальном - никаких неудобств, пробка и та из-за дтп образовалась :)

@темы: Жизнь, Работа

09:00 

Давненько я так паршиво...

.. на работу не катался. Три недели без колес, сильный ветер, шипы - "и зачем я их позвал!?"
Впрочем, это лирика, а физика - "к нам едет..." нет, не ревизор, а тов. Медведев самолично.
Масштаб сопутствующего геморроя можете себе представить.
Впрочем, товарищ уедет, а фен-шуй останется...

@темы: Работа, Жизнь

15:21 

Побывал в городе-герое Москве.

Впечатление утра - ТАК жить нельзя! Пробки видно аж из самолета, Аэроэкспресс-Киевский-Кольцевая - кромешный адъ, ну-вы-поняли.
Впечатления вечера - жить все-таки можно. Где-нибудь в районе Владыкино )))
Больше, в общем-то, сказать нечего, ибо кроме метро, аэропорта, двух учебных классов и гостиницы "Восток" я не видел.
Абыдна, вей!
Впрочем, похоже не последний раз.

@темы: Жизнь, Работа

11:07 

Технофейлы

1) Нет, ну это же надо, испортить linux до ТАКОЙ степени, что он перестал воспринимать ext2-3-4?!!!111
И чо мне теперь на 32гб ведроидной карточке fat32 использовать? А dvd'шные iso'шники, например, как таскать? А дампы виртуалок? Из за ....!!! ....!!!виндей, которые по сию пору ничего и никак не поддерживают ни нормального способа подключения к компу (MTP - НЕ нормальный способ!!!) не осталось, ни поддержки нормальной ФС (При всем уважении - userspace'ная реализация ntfs "нормальной" ни в каком смысле не является!) нет. И если с первым я "конвенциальными способами" а.к.а. ssh-helper+sshfs бороться могу, то ради второго придется железку рутовать, а то и вовсе на cyanogen перешивать, ибо нефиг, в самом деле.
Абыдна, вай!

2) Кто бы мог предположить, что в openbsd device run окажется лишенным поддержки режима hostap? Во фрюху соответствующий драйвер перекочевал из опенка, и соответствующий режим там есть, а первоисточник того-этого... в лишенцах. В общем, pf штука, конечно, невдолбически классная, но с дурным bsd-красноглазием похоже таки пора заканчивать. Только debian, только hardcore!!!

3) А в это время я тихо и незаметно одолел Solo on the Dvorak Keyboard, с чем себя и поздравляю.

4) Ну и мелкорабочее - до чего же СТРАННО себя чувствуешь, видя двух проходящих мимо охранников в форме, один из которых одет в противогаз и несет с в руках _бензопилу_!!! Б-же Император, храни отечественную химическую промышленность :)

@темы: Жизнь, Работа

17:56 

Грабельное

Поднимаю я на тестовом сервачке в тестовом vlan'чике тестовый же апачик, вгоняю свою машинку в vlan'чик, прописываю маршрутик, запускаю браузер - и вижу фигу. Вернее, не вижу. Ничего.
Гм. Прокси в браузере? Отключен. Гм. Запускаю telnet server 80 - та же фига. Гм-2.
Запускаю ping - работает, маршрут прописан правильно.
tcpdump -i em0 host ... на сервере - пинги видно, пинги идут, а вот на 80м порту тишина.
Гм-3. Ладно. Ставлю wireshark на клиентскую машину, дергаюсь к апачику - а в wireshark'е тоже тихо. Сложный случай в медицинской практике.
Беру nmap, начинаю сканить порты - и wireshark, и tcpdump показывают подергушки, в том числе и на 80м, тут все правильно (Src addr nmap правда не с того сетевого интерфейса берет, но это старая бага, обходится). Выбираю "помощь друга" - но консилиум узких специалистов по решению широких вопросов смог только зафиксировать проблему.
Гмм.... ну так же не бывает, да?! Нажимаю ctrl+f5 еще раз... и вижу мессагу с ошибкой от ISA-сервера. Стооооп! Какой-такой ISA-сервер? У меня прокси к чертям собачачьим отключен, а маршрут до vlan'чика прописан отдельно в обход шлюза, и маршрут этот работает!!!
А вотфиг. ISA-клиент стоит? Стоит. Ну, он и заворачивает весь трафик на 80м порту на 3128 прокси. Молча. Щщщщщучье племя, повбывал бы!!!

Впрочем, не успел я облегченно вздохнуть, как выяснилось, что проблемы с ISA'ой !внезапно возникли не у меня одного. DNS-dns'ит, ping'и ping'уются, telnet-telnet'ится на всех портах... кроме 80го. Как так? А вот... ISA? Неее, isa для разнообразия не при делах, походу какая-то сиська постаралась. До 5510 на 80й порт пролазим, после - тоже, кто виноват? А вот сама ASA'ка так не считает - хиты на правилах исправно применяются, all from any to any не помогает, переключение канала на резервный эффекта недает, родная тулза по анализу говорит, что пакеты отсюда-туда pass, ребут? Ребут. Все одно, полшестого. Так может это не она? Может это следующий за ней роутер дропает, но молчит? Цепляем вместо аски ноутбук - не-а, пашет. Менять? Нуууу... что там еще есть? TrendMicro'вский модуль, но он только входящий трафик сканит... Пофиг, смотрим! Ууупс! Лицензии кончились, гаденыш накрылся и трафик тихо дропает, ббббычье семя! Минута-в-минуту в конце рабочего дня интернет таки заинтернетил. Аминь.
Завтра с утра оформлять инцидент - оно конечно СОВСЕМ не моя сфера ответственности, но гумагу соорудить надо ).

А в это время... спидометр показал круглую цифру в 2000 км, накатанных за лето :)

@темы: Жизнь, Работа

17:30 

И еще немного о...

... production-ready системах.

Сижу я, примуса починяю обертку-wrapper к куче legacy-скриптов для мониторинга всякого пишу. Скрипты действительно legacy - писаны как бы не во времена Очакова и покоренья Крыма 2k если не NT 4.0 в чистом cmd не пойми кем, но поскольку они jast works, то ревизией кода никто не занимался до тех пор, пока не началось внедрение централизованной системы мониторинга.
Впрочем, это все присказка, сказка начинается дальше. Пишу я на python'е, отлаживаю на рабочей машинке под управлением х...64 топора а.к.а. win 7, один скрипт отрабатывает, второй... а третий ругается на отсутствие telnet'а (Чума на голову Гейтса и головку Балмера за вынос инструмента из базовой системы!), ну да ладно - надо - поставим! Пуск-панель управления- компоненты цштвщцы-включение и отключение компонент, telnet. Проверяем из cmd - нормально. Запускаем скрипт... ни-ху-а. Гм. А! Походу ставится телнет в какую-то задницу, а PATH в скрипте не прописан! Ща...
Хм. Ставится он конечно в задницу, но не в какую-то, а в c:\windows\system32, в PATH он есть. Гм. Да. Прописываю на всякий случай полный путь к. Не работает. Проверяю права доступа (Ну чиста на всякий случАй) - ок. Гм.
Запускаю из скрипта голый шелл, делаю
cd c:\windows\system32\
dir - и НЕ НАХОЖУ в листинге telnet.exe!!!
Проверяю через гуй - есть. В консоли нет. Запускаю через пуск-выполнить cmd.exe, перехожу, смотрю - dir telnet.exe показывает. Шо за @%@$#^$%?!!!
Туплю.
Туплю.
Туплю.
....
А. Должно быть, в системе завелся Страшный Траян, который под видом cmd.exe лежит где-то там и запускается из скрипта раньше... Открываю диспетчер задач - так и есть, в системе два cmd.exe*32 и cmd.exe - лезу в свойства, проверяю цифровую подпись - сходится! Оба наджамшутены мелкомягкими, "родной-системный" 64х разрядный запускается из SYSWOW64 (Ей-ктулху, не вру! Так они папку и назвали ))) по умолчанию и работает нормально, а 32х разрядный python рожает 32х разрядный cmd.exe в котором даже lsdir глючит.
"Пользуйтесь резинками фирмы абидас"(Ц), в общем.
И я еще на Святых Рассеянских Бузинесс-Программиздов бочку качу! Ениальные же люди! Ну, подумаешь, ректально - но ведь работает!

@настроение: Повбывав бы!!!

@темы: Работа, Вендекапец!

19:36 

И снова - садовый инвентарь.

Грабли, в смысле. Разнообразные.

Сижу себе, никого не трогаю, примуса починяю враппер для кучи чужих костылей скриптов для мониторинга всякого-разного рожаю. Скрипты - доисторические батники времен Очакова и покоренья Крыма, пара павершельных поизделий, самописный (Гы-гы!!!) grep на сях (Ну, ладно, до grep'а ЭТОМУ - как до .... - "лог парсер" с претензией на юниверссальность, не более) - всякой твари по паре. Система для отладки - 64х разрядный топор. Запускаю очередную итерацию скрипта, та со скрежетом добирается до очередного же батника - и вываливается. Не может найти telnet, ога.
Не, ну ясен пень, что telnet из default install'а в 7-ке выпилили - но я ж его лично, ручками ставил! Проверяю из консольки - ну да, есть такая буква. Хм. А! Наверное ставится он куды подальше, а $PATH в поизделиях не прописан, или прописан левый. Проверяю. Да нет, один и тот же. Нигде не переопределяется. telnet поставлен в c:\windows\system32.
Гм. Запускаю из враппера cmd.exe, думаю посмотреть ручаками - консолька стартует. Запускаю telnet - нет ответа. c:\windows\system32\telnet.exe - нет ответа. Делаю dir c:\windows\system32 - НЕТУ! Запускаю cmd.exe через пуск-выполнить, делаю то же самое - ЕСТЬ! WTF?!!!
Туплю.
Туплю.
Туплю.
Туплю.
Может кто-то страслый и ужаслый подменил cmd.exe на коварный руткит, и бедные винды запускают не то файло? Смотрю через диспетчер задач - ууупс! Запущенный из скрипта cmd.exe*32, а "штатный" - просто, лежат они в разных папОчках - *32 в system32, default x64 - в SysWOW64 (Не я это придумал!!! Оно так и названо!). Проверяю цифровые подписи - обе живые.
Так какого же МПХ, а? Встроенные команды оболочки по разному действуют? Production-ready система, в которой ls не работает, ога. Я еще на отечественных бусинесс-программиздов бочку качу - святые, натурально, люди.

3,14ец на 3,14еце, а не работа. Запускаю rdp-коннект к серверу БД, ухожу по делам - возвращаюсь - система лежит в лежку, на мои подергивания отзывается но мэдлээээнько-мэдлэээээнько. Хто виноват? mstsc.exe. Rdp-клиент, если кто не знает. Скушал 2+ гига памяти и захотел еще. После примерно часа плясок с бубнами удалось выяснить причину - на локальной консоли Тимур закопипастил в буфер over 9k логов - и отошел. Я цепанулся через rdp с console - и эта... production-ready попыталась подгрузить содержимое clipboard'а. Нуачо? Вдруг мне он ну-прям-позарез нужен будет? ля! ля! ля-ля-ля!!!

По сетке ползает очередная итерация конфикера. ДырВеб-дырВебом, а конфикер-кидой, ага. SP2'шный букварь, выделенный для конфигурежки сисек сдох за десять минут после подключения к сети. Хрюша-такая-хрюша, ага. Есть мнение, что smb/cifs надо от греха запилить на уровне win-firewall'а через групповухи, оставив доступ только к dfs-серверам, но учитывая имеющийся зоопарк ОС - как-то боязно. Жужель говорит, что были прецеденты. Похоже, правильней будет зарЭзать где-нибудь на сиськах, но где конкретно - консенсуса нет. Гм.

В добавок после грозы сдох порт на домашнем неттопе - у-вы, я зря два дня трахал моск провЁдерскому суппорту, проблема оказалась на моей стороне. Порт успешно определяет linkup/linkdown, но и только. Подключенный букварь в тырнет вполне выходит, а вот неттопный tcpdump кажет вечные полшестого. Обидно, вай.

@темы: Жизнь, Работа

22:38 

Роиссянские бусинесс-программизды...

... местами просто удивительно рукожопы. Вот все еще удивительно. Они же, блин, за это деньги берут!!!
Типовая задача - организовать обмен данными между 1Цэ 8+ и собственной рукожопой софтиной. Софтина на МыСы Сыкуель, 1Ца, ессно, тоже - бери и радуйся, создавай пользователя, коннектись к 1Цешной базе и выбирай, что нужно - но нет, мы легких путей не ищем, "не секурно" и ваааще. Будем меняться через ХМЛя-файлы. Ладно, будем - мне не жалко. Вот тя папОчка, клади свою дребедень сюда, отсюда же забирать будешь - ок? Ок, ок.
Стоп. А как забирать? Хмм... а вот есть у нас вот такая аппликуха гуёвая, мы её запустим, и она каженные ... минут будет содержимое папОчки читать и ХМЛи в базу загружать - ок?
Гуевая? Аппликуха? На сервере? Мужики, вы ё..., или как? Ах, на "опытно-промышленную", потом переделаете? Ну ладно...
Опытно-промышленная закончилась. Переделали, конечно - но КАК?! Вместо одной гуевой апликухи сделали другую. Гуевую. Которая, вместо того, чтобы читать содержимое папОчки и писать его в базу, инсталлит СЕРВИС, который это самое содержимое с вкомпиленной (!!!) частотой в базу пишет. Сервис, ага. Нет, я понимаю, что cron'ом винды обижены, но планировщик задач-то там есть! Точно есть, я сам видел!!!
Ладно, хрен с вами - сервис, так сервис, лишь бы работало. Запускаем, кладем в папОчку файло - не-а, не пашет. В логах сиквеля ошибки, не хватает прав. Ну, да, ну да - аутентификация интегрированная, а сервис стартует от имени того, кто эту самую гуевую управлялку сервисом запускал, т.е. локального администратора, ибо из под обычной учетки службу того-этого не поставишь. Гм.
Ладно, меняем пользователя на доменного с правами bulkadmin на сиквеле, кладем файлы... авотхрен.
Ну чего тебе еще надо? Эммм... права sa на базу. Локи, а НАХРЕНА?! Ну, видите ли, наша служба передает имя ХМЛ-файла хранимой процедуре на сервере БД, а единственный (!) способ прочитать данные из хранимки - cmdshell, который доступен - правильно, администратору БД. ...ля! Точно единственный! Точно, точно, мы уж и так, и эдак, и с подвыподвертом, и в МыСы писали - никак-никак.
А если взять и загрузить содержимое файлов во временную таблицу и передать её имя в хранимку?
....
....
....
А давайте вы все же дадите пользователю админские права, а ваш вариант мы как-нибудь потом попробуем...
Ы!тить! Создаем доменного пользователя для загрузки данных. Даем ему права администратора на БД. Делаем его администратором системы. Запускаем гуевенькую утилитку, которая ставит сервис. Отбираем права администратора обратно (Простая смена имени пользователя, от которого стартует служба не прокатила - что-то там у них опять "не той системы") - и все это для того, чтобы загнать пару байт в БД.
А, да - совокупная стоимость решения не два и даже не три миллиона рублей. А-фи-геть.

@темы: Работа

13:39 

Ты всегда думаешь о нас!

Ну и за нас, куда же без этого? Решил очередной провЁдер и забанил 25 порт клиентам со статическими IP. MX запись есть, PTR запись есть, а "почту слать" нету - ну кому же в голову придет, что при наличии вышеперечисленного клиент решит собственный почтовик поднять? Не провайдеру точно.
И добро (Нет, все-таки зло!) бы просто заблочили попытки установления соединения fwall'ом - таки нет! Соединение Вполне себе устанавливается, живет полтора байта и дропается. С клиентской стороны - "соединение закрыто удаленным сервером", с серверной - blah-blah-blah did not issue MAIL/EXPN/VRFY/ETRN during connection to ipv4. Полное офигение, одним словом. С обеих сторон, ага. Спам почту слать ни-ззя, а вот почтовики ddos'ить - почему нет?

Первая мыслЯ, помятуя вчерашнее - а ну как? Не, с этой стороны нормально. Вторая - мож это blacklisting так криво настроен (До почты у меня руки еще не дошли, так что мало ли?) - ну, да -IP в куче blacklist'ов светится, походу недавно из dial-up/dynamic в static'у вывели. Но вроде как sendmail отлуп должОн давать сильно позжА - делать ему нефиг на каждую попытку коннекта запросы к DNSBL делать! На всякий случай поднял простейшую слушалку на 25 порт (Хорошо все же иметь много разных серваков!) и проверил - blacklisting и впрямь не при чем, MTA тоже не при делах, коннект вощем тааа есть - идем на поклонЪ к провёдеру. Товарищи погоняли по чек-листу и перевели на Технического Специалиста(ТМ) тот послушал, с умным видом спросил номер договора и изрек: "Про 25 порт я ничего не знаю, мы только SMTP блокируем". Мндя. Спасибо, товарищи, за заботу - но нельзя ли? Можно! И даже без письменного заявления. Пять секунд - и вуаля! Почта почти (Спам-листы не забываем) работает.

Осталось только понять, нахрена мне все эти консультации клиентов по вопросам, не связанным напрямую с моей деятельностью, и...

@темы: Работа

17:26 

В очередной раз почувствовал себя...

... провайдерским саппортом из анекдота - "От нас все патроны ушли, проблемы на вашей стороне!"(С)

Сначала пионЭр на том конце провода зарезал icmp за вычетом 0,8,11 - request/reply, dest. host unreachable, а об остальных сообщениях мы не знаем и знать не хотим, ага. Потом товарищ забыл воткнуть tcpmssfix в mpd.conf, а дальше начался цирк-с-конями ).
Приходит пакет, видит do not fragment, дропается, а ответный icmp message to big режется ipfw. В security log при этом должна валиться запись - но у нас же, блин, все секууурно! Мы заранее ограничили число однотипных сообщений 10, а сделать ipfw zero нам, пардон, членомерка не велит, мы на счетчики медитируем! Пару правил, которые вроде как за прохождение трафика отвечают - пжалста, а все счетчики целиком - никак-никак.
А виноват во всем этом, разумеется, я - так как "просто интернет" у мужика есть, а https до меня "не работает". https "вообще"? Работает, конечно! telnet на 443 порт идет нормально, так что решайте ВАШУ проблему!
Хвала Аллаху, милостивому и милосердному, что главбух с той стороны объяснила одмину, что "интернет вообще" и "telnet на 443" != "работающий банк-клиент" и товарищ осознал, что "https вообще" у НЕГО не работает и я тут не при чем. Впрочем, мне это не помогло - "Ну надо же решить проблему! Да, она не у вас, но мы вам деньги платим, а оно не работает, так что давайте как-нибудь вы там подумаете, что мне сделать, чтобы... Нет ssh-доступ я вам дать не могу, секуууурность не позволяет, так что вы уж там как-нибудь телепатически..."
Пришлось решать, ага. По tcpdump'у увидел, что на той стороне дропается от четверти до трети пакетов, предположил, что проблема в NAT'е (Т.к. на прозрачно проксируемый http товарищ не жаловася, а ходящий через nat https чудесатил во всю). Замена kernel nat на NATD вполне логично не спасла (Хотя потерь, почему-то, стало меньше), подумал, что mpd с ipfw порядок прохождения пакетов поделить не могут (Дурак, ага), предожил вынести функционал nat'а в mpd через ng_nat. Опять же не помогло. В процессе совместного ковыряния mpd.conf'а (C ng_nat'ом я, в общем-то, до этого "никак") добавил tcpmssfix из своей конфиги и вуаля! Еще полчаса копошений и проблему раскопали полностью, но день того-этого... кончился :).
Такое вот вождение-луноходов-по-граблям получилось.

Какая у этой басни мораль? А морали здесь нет никакой - по крайней мере у меня её вывести не получается, так что - "запомните дети, патамучта понять это нэвозможна! и не делайте так!"

@темы: FreeBSD, Работа

14:45 

Типовая задача

зарезать до и больше всякого разного (Музыки, видео, бэкапов, дистрибутивов etc) используя минимальное количество болванок. Засада кроется в том, что файлы имеют разный размер, на одну болванку не лезут и вообще никак не отсортированы. Знакомо? Мне - да.

Первое НЕПРАВИЛЬНОЕ решение - берем "двухпанельный файловый менеджер"(ТМ) и начинаем... ну вы поняли, да? Почему неправильное? Муууууторно же! Да и результат на больших объемах (Болванок 15-20) прямо скажем, не блещет.
Второе НЕПРАВИЛЬНОЕ решение - tar -c(j) |split -b 4.2G archive.tar - на выходе n файлов одинакового размера. Быстро, чисто, просто. Что не так? А что будет с этим tar'ом делать какой-нибудь mp3-player? Вот-вот. Да и просто windows-пользователь не вдруг join сделает :).
Третье НЕПРАВИЛЬНОЕ решение - ну, например for i in os.walk() с поправкой на язык программирования ;). Думаю, очевидно, что нефиг велосипеды изобретать.
Так что делать-то? Ха! В комплекте cdrkit есть замечательная 3rd-party утилита dirsplit, которая делает именно то, что нам нужно - разбивает папку с изобилием файлов на каталоги требуемого нам размера. Синтаксис тоже очевиден:
dirsplit (опции) цель префикс_результата
-v verbose
-s размер
-m двигать или копировать
-L/l создавать вместо перемещения или копирования сим-хард линки
-f фильтр

Что, все так уж хорошо? Не-а!!! Может в этих ваших линуксах и да, но в Суровой Фре...
1) cdrkit сам по себе конфликтует с cdrtools прописанным в качестве зависимостей у туевой хучи пакетов. Сюрприииз! Не смертельный - можно собрать игнорируя конфликты, а установку не проводить, используя получившийся бинарник на свое усмотрение
2) Можно было БЫ - если бы не "Сюрприииииз!-2" в 9-ке cdrkit не собирается. Совсем. Broken, говорят, причем даже и не врут. Можно конечно попытаться собрать из исходников только dirsplit, но к стыду моему cmake я не знаю от слова "совсем" и разбираться с этой дьяволовой махинией не намерен. Тупик? А вот и нет!
Все, в общем-то, не так плохо. Берем с офсайта собранный package cdrkit'а для 8-ки, растариваем копируем bin/cdrkit куданадо и идем насвистывая. Вуаля!

@темы: FreeBSD, Работа

Танец-с-саблями на граблях

главная