bash.im ithappens.me zadolba.li
968

Конспект в RAID 1

12 июня 2009, 08:00

Довелось мне как-то замещать лекцию по информатике. Курс был не мой, поток — тем более. Я с прикладной математики, а меня к инженерам-конструкторам отправили. «Хуже» информатики у них был только русский язык — его инженеры не проходили вовсе.

Запускаю студентов в аудиторию. Все садятся на галёрку, лишь три угрюмых парня с тяжелыми взглядами проходят на первый ряд. Замечаю, что один из них держит правую руку на перевязи.

— Как вы собираетесь писать? Вы левша?
— Нет, — мрачно отвечает парень, а потом кивает на сидящих справа от него. — Но у меня есть друзья.
— Они перепишут вам лекцию?
— Нет. Сейчас увидите.

Парень, что сидел слева, был левшой и кистью правой руки придерживал свою тетрадь, а локтем — тетрадь соседа справа. Студент с гипсом локтем левой руки держал... вторую тетрадь того, что сидел в центре; тот же писал двумя руками в двух тетрадях одновременно. Почерк, конечно, был тот ещё, но сам факт!..

Мало того, мне довелось вести у этого потока ещё и практику. Этот уникум и тут не бросил друга в беде, умудряясь набирать текст на двух клавиатурах сразу. Учитывая обстоятельства, я зачёл им одну программу на двоих.

967

Распиливай и властвуй

Я люблю эту страну и наш изобретательный народ. Где ещё можно отыскать столько талантов в области распиливания бабла налогоплательщиков, организации изысканной халтуры и имитации бурной деятельности?!

В общем, въехали мы год назад в новое, красивое и удобное здание, заботливо почти построенное и почти отделанное по заказу Правительства Москвы. Схема примерно такая: есть заказчик, для которого генподрядчик заказывает проведение работ у субподрядчиков. Среди них поставщики, монтажники, наладчики — словом, совершенно разные конторы. Поставщик привозит аппаратуру, монтажники монтируют, наладчики запускают, а представители «обслуживающих организаций» принимают всё это дело и ставят закорючки в актах. Представителей «эксплуатирующей организации» — то есть тех, кому со всем этим работать, — особо никто ни о чем не спрашивает. При любых попытках поинтересоваться, посоветовать или что-либо проверить в ответ звучит довольно резкое напоминание о том, что утверждён проект, работы ведутся по проекту и будут приниматься на основании проекта.

Строили-строили и наконец построили. Чёрт с ним, что летом крыша протекла, в серверной капала вода из розеток, а я чуть не сошел с ума, когда, находясь на югах и сидя в час ночи на верандочке с пивом и прекрасным настроением, получил SMS от заместителя директора с вопросом: «А витая пара воды боится?» Чёрт с ним, что в десятке-другом сетевых розеток мы не обнаружили сигнала — монтажникам было лень обжимать, и они просто оставили провода в коробах, свернув их аккуратными петельками. Но вот с системой видеонаблюдения постарались ребята на славу — абсолютно все этапы её создания отдают родным идиотизмом и безответственностью.

Система: 20 видеокамер, запитанных от специальных блоков питания, которые должны работать автономно в случае отключения электричества. Камеры подключены к серверу, сервер упрятан в большой железный ящик, ящик заперт на ключ. К серверу подключены два клиентских компьютера охраны, которые по сути являются просто терминалами — обработка изображений и сохранение записей происходит на сервере.

Пару месяцев всё работало, а потом вдруг перестало. Начались чудеса — дистрибутивы с жутко лицензионным программным обеспечением непонятно где, ключ от ящика там же. Дозвонились до монтажников, выяснили, что все у «обслуживающей организации». Представители же организации сказали, что нас они не обслуживают, поскольку Большое Начальство не заключило договор.

Через неделю телефонных матюков через монтажников всё же получили диск и ключ. Переустановили клиентские программы — картинка появилась. Решили и на сервер глянуть, раз возможность появилась. После того, как удалось открыть тот самый ящик (для этого, оказывается, нужно два сильных человека — один поворачивает ключ, другой приподнимает дверь) и обозреть его внутренности, я испытал сильный шок от высот мысли проектировщиков.

Клиентские машины (которые, напомню, просто показывают картинку) оборудованы 250-гигабайтными хардами и гигабитными сетевухами. Витая пара (4 жилы) от них идёт в гигабитный 24-портовый свитч, а всё это дело подключено к обычному стомегабитному сетевому интерфейсу «сервера». Жёсткий диск сервера — 80 ГБ, влезает туда записей дай бог на сутки. Те самые «автономные» источники питания оказались обычными (но очень дорогими) выпрямителями, поскольку установка батарей проектом предусмотрена не была.

Но и это ещё не всё — после нескольких жалоб охранников на периодическое пропадание картинки выяснилось, что доблестные монтажники перед обжимом коннекторов старательно зачищали провода.

966

Брутфорс и здравый смысл

Однажды на нашем ФГУПе слетела программа, обслуживающая электронный замок входной двери с электронными же пропусками.
Всё бы ничего, но за древностью лет инсталляха этой софтины была утеряна, и даже поиск в интернете ничего не дал. Дистрибьюторы оборудования предложили скачать новую версию, но сообщили, что поддержка нашего контроллера прекращена, так как он относится к раннему мезолиту.

Собственно, принципиальное отличие нового софта было лишь в формате БД. Контроллер в нём не определялся, но сигналы входа/выхода и ID карточки давал исправно. Я решил поправить таблицы вручную, благо, они были в формате Access, но столкнулся с проблемой — база была запаролена.

Тут же скачал несколько ломалок паролей «на попробовать». Как водится, утилиты заявляли: «Пароль я подобрала, купите меня, и я вам его скажу». Естественно, платить 20–30–80 единиц СКВ я никому не собирался, да и не пришлось — одна из программ добродушно выдала три первых знака пароля и 9 звездочек после, доказывая свою полезность и предлагая заплатить за остаток.

Выглядел пароль так: «1qa*********». Надеюсь, не надо объяснять, как я достроил его до полного?

965

В Советской России Гугл ищет вас!

Работаю веб-программером — делаем разнообразные сайтики и интернет-магазины. Очередной клиент попросил, чтобы к сайту была прикручена статистика от Google. Я прикрутил, а до кучи поставил сайт в очередь на индексирование.

Надо отметить, что для этого проекта мы не писали админку с нуля, а затачивали предоставленную заказчиком под проект, добавляя новые модули. Поиск по сайту был настолько «крут», что исправлять его доверяли только мне — долго я матерился, ковыряясь в индийском коде. На полную переделку поиска меня не хватило.

Прошло некоторое время. В аську стучится админ сервера компании-заказчика: «Твой проект грузит на 103% процессор MySQL-сервера!»

Где-то час выясняли, что не так, и только потом сообразили посмотреть в логи. Выяснилось, что умный Google-бот без проблем отыскал поисковую страницу сайта и стал рекурсивно насиловать проект, отыскивая ключевые слова в результатах поиска по результатам поиска...

Поиск после этого доработали, бота от страницы выдачи отвадили и даже морфологию прикрутили. Вспомнили и бессмертную фразу Стива Макконнелла: «Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете».

964

Профилактическая вакцинация

11 июня 2009, 11:45

Админили мы с другом одну фирму по удалёнке. В один прекрасный день звонок: «У нас база 1С не грузится». Заходим на сервер и видим, что кто-то вставил новый жесткий диск. Пребывая в лёгком шоке, открываем его и видим полный суповой набор чудесных файлов: fun.xls.exe, autorun.inf, csrcs.exe и прочие в том же духе.

Друг хватает трубку и перезванивает, пытаясь разобраться в ситуации. Оказывается, приходил человек, который обновляет систему «Гарант». Чтобы не тратить время, ставя апдейт на каждый комп, он решил залить обновление сразу на сервер — тут-то его и повело. Звоним в поддержку «Гаранта», описываем ситуацию и требуем, чтобы приняли меры.

Самое интересное заключалось в том, что все эти файлы были пустыми! Их специально создали на внешнем HDD и заблокировали от перезаписи, чтобы вирус точно не пролез. До сих пор непонятно, что случилось с 1С, но после перезагрузки всё заработало.

Ключ от серверной мы всё-таки посоветовали переложить в строго отведённое место, недоступное для юзверей — от греха подальше.

963

Не смешите начальника СБ, он лопнет

Работал я юникс-админом в одной достаточно крупной организации, известной своими жёсткими правилами в отношении сотрудников. Пришел на работу — нажми кнопку «Пришел» в соответствующем разделе интранета, собрался покурить — щёлкни «Отошел по личным делам». За опоздания наказывали баллами (срезали премиальную часть зарплаты) — в общем, всё серьёзно. Корпоративная этика в переписке была также на высоком уровне, ни у кого даже в мыслях не было допустить вольности в выражениях — всё пристально контролировалось службой безопасности.

Как-то сидим, админим наши сервера. Работа достаточно скучная, так как настроены они по всем «фэн-шуям» и вероятность факапа минимальна. Внезапно сонное лицо руководителя группы администрирования Unix-систем, оживает, и он помпезно изрекает: «%Adminname%, я считаю, что употребление слов „жопа“ и „косяк“ неприемлемо при постановке служебного задания».

Через минуту хохота %Adminname%, Oracle-админ, начинает оправдываться, что он скопировал в задачу кусок из своих ночных записей — в них было отмечено, что старт инстанса Oracle с такими-то параметрами и с использованием такого-то массива приводит к жопе с производительностью, и это явно косяк в Solaris!

962

Меня и так прёт, наяву, без всякого компота

Звонит клиентка: «Спасите-помогите, бросайте всё! У меня ноутбук умирает — стоит отойти, вылезают полоски цветные на весь экран и треск идёт. Там базы важные!»

Что за чудеса такие могут быть? Приезжаю к даме, осматриваю машину. Всё оказалось просто и смешно — дитё поставило на машину JkDefrag, дефрагментатор диска, включающийся вместо скринсейвера. Сильно фрагментированный, забитый под завязку винт давал совершенно психоделическую картинку под хрустящий аккомпанемент. Само собой, неподготовленную владелицу такое зрелище повергло в ужас.

961

Бухгалтер-мультибоксер

Однажды вызывает меня финдиректор — не открывается база в 1С. Начинаю проверять. Действительно, «эска» ругается, что путь к БД задан неверно. Проверяю нужную папку на сервере — базы нет. И бэкапов тоже нет — там, где была папка, теперь пустое место. У меня начинают дрожать руки.

После минутного раздумья, как бы восстановить базы из того, что осталось в оперативной памяти клиентских машин, я решаю на всякий случай проверить корзину на сервере, и обнаруживаю там искомое.

Оказалось, что я, перенастраивая планировщик на сервере, взял беспроводную клавиатуру от ближайшей клиентской машины и связал с приемником на сервере. Потом прицепил обратно, но с сервером клавиатура контакт почему-то не потеряла — фактически бухгалтер работал на двух компах одновременно. По невероятной случайности наш мультибоксер умудрился грохнуть и базы, и бэкапы. Хорошо, что вовремя заметили, пока он и корзину на сервере не почистил!

960

Не крутится, не греется, не работает

Дело было лет семь назад. Я работал сисадмином в сети супермаркетов вдвоём с напарником. Когда открывался новый магазин, нам потребовался туда человек на должность «бубнотряса». Взяли парня на стажировку — вроде нормальный, но с компами знаком слабо. Быстро обучили его, благо, админской работы там было не особо много — знай только оборудование в рабочем состоянии поддерживай.

Стажировал новичка мой напарник, с которым тот отбывал на новую точку, а я в это время работал со вторым, более подкованным пареньком, который должен был остаться в нашем магазине. Решили провести полную профилактику всех кассовых компьютеров, чтобы потом в них долго не залезать. Компы древние, стоят под ногами кассиров — внутренности были забиты пылью, а провода представляли из себя плотные заскорузлые клубки. Договорились, что делим кассы пополам.

Всё сделали, компы затикали как часики, новый магазин открылся, все разъехались по своим местам. Проходит около недели, мне в мой выходной звонит напарник:

— У тебя с кассами все в порядке было? Ты ничего не делал?
— Ничего не делал, никаких проблем. А что такое?
— У меня касса тормозить и виснуть начала, а в конце дня вообще встала. Вчера вторая померла. Кулера вообще не крутились, вместо смазки непонятно что. Смазал по новой — всё нормально.

Я не обратил на это внимания, но после следующей рабочей смены выяснилось, что умерли ещё три кассы. Разобрали все компы — и действительно, в некоторых кулерах было что-то непонятное, сероватого цвета Долго думали, заливая дурные мысли пивом.

Разгадка пришла нежданно-негаданно — как-то раз приехал наш шеф из офиса, а новичок у него и спрашивает:

— А можно будет еще заказать той смазочки для кулеров, а то у меня старая уже закончилась.
— Какой такой смазки?

Вместо ответа наш новый системный техник протянул пустой пакетик от термопасты.