Истории с тегом: факапы

Всего историй: 808

7519

Шли учения

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

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

По возвращении она начала возмущаться: дескать, кто выключил её компьютер?! Там зарплата была, она её полдня набивала! Я решил поучить её уму-разуму, начал рассказывать, что нельзя оставлять работу несохранённой. Мало ли — скачок напряжения, например, и всё — кранты. Но бухгалтерша ни в какую не хотела внимать моим словам.

Я закончил настройку и подключил её комп обратно. Она, довольная, стала что-то там ковырять, а я начал подключать новый системник… и зацепил ногой кнопку на сетевом фильтре. Комп потух.

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

7507

Жизнь до девочки-робота

2006 год. Работаю в фирме, продающей всякое компьютерное оборудование. Собираем системник. Требование клиента: официальная версия Windows. Получаем на складе коробочку, ставим — нужна активация. В этот день, как назло, наш интернет был мертвее всех. Что ж, активируем по телефону. Звоним по номеру, указанному на коробочке.

— Алло, это служба поддержки Microsoft?

— &#я, это квартира, вы за#$али сюда звонить!

Проверил: номер набрали правильно. На складе оставалось ещё полсотни коробочек с «правильным» номером…

7485

Контрольный клик в голову

В качестве рабочей программы в небольшой, но очень гордой сети аптек используется ЖП 7.7 с непонятно откуда взявшейся самописной конфигурацией. Конфигурацию допиливал человек, любивший делать всё тяп-ляп и на отцепись, поэтому она кишит ошибками, и расхождения кассы и базы по сумме в конце дня уже никого не удивляют.

Решили беду побороть. Наняли одинэсников, сунули им десяток билетов в Хабаровск и сказали «фас».

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

Внутреннее тестирование система с блеском прошла — пустили в бой. Спустя неделю в конце смены звонит кассир: у неё денег в кассе на 200 рублей больше, чем в сменном отчёте, а в отчёте на эту же сумму больше безнала, хотя она по картам ничего сегодня не пробивала. Думаю, что ошиблась — мало ли. Делаю возврат безнала по кассе без чека продажи (довольно серьёзное нарушение) и пробиваю ту же сумму налом.

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

Следующий день. Кассир уже чуть ли не плачет, а бухгалтерия собирается меня расчленить заживо и съесть без соли. Ещё раз напрягаю одинэсников. Ничего.

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

Звоню одинэсникам. Пытаюсь говорить спокойно. Они предлагают мне открыть код. Своими глазами вижу, что стоит явное присваивание при открытии окна. Смущает, что косяк только у одного кассира. Иду к тётке. Целый день стою и смотрю, как она работает, периодически снимая отчёты. Ничего. Хочется закурить, хотя уже почти год как бросил.

Спас случай. Моргнул на полсекунды свет. Кассы с сервером спасли бесперебойники, а свитч ребутнулся, и народ повышибало из базы. Все испуганными глазами смотрят на меня. Говорю заходить обратно в базу. Кассирша оборачивается ко мне:

— Вот! Смотри! Она опять сама переключилась!

Отгоняю тётку от компа, закрываю 1С, пробую сам. Всё нормально. Снова тётка. Снова ошибка. Как?! Краем глаза замечаю кое-что, пробую сам. Эврика!

При открытии базы окно 1С разворачивалось на весь экран, а вот вложенное окно модуля кассы — нет. Тётка распахивала внутреннее окно на весь экран двумя щелчками по кнопке. Первый действительно разворачивал окно, а второй доставался кнопке «Нал — Безнал».

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

7451

Упадёт и пропадёт

У меня стоял линукс. Три primary-раздела: swap, root и home. Захотел я себе поставить Windows 7. Хоть руки прямые, но на всякий случай забэкапил я root и home на внешний диск.

Итак, изменяю размер home, чтобы на диске гигабайт 60 остались неразмеченными. Данные не потерялись. Устанавливаю Windows 7 — образ с MSDN. Вручную указываю ей ставиться на неразмеченное место в конце диска.

Как известно, «семёрке» требуется два раздела, но primary-разделов может быть всего четыре. Знаете, что винда учудила? Молча снесла раздел home и установилась.

А внешний диск упал со стола и перестал работать.

Так я потерял… нет, не музыку. Всего лишь коллекцию даташитов и много своих исходников.

Мораль проста: софт всегда найдёт поле для самодеятельности, а закон Мёрфи никто не отменял.

7433

Аид на связи

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

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

7425

Кучка с горкой

Выполнял лабораторную работу по программированию под DOS (чтоб не забывать историю, наверное) на старом компиляторе, который в прогу добавляет проверку на присваивание нулевому указателю. Начали появляться сообщения об этом ошибочном присваивании. Для локализации ошибки закомментировал часть кода. Всего осталось примерно 800 строк кода на C++, в которых могла быть ошибка. Перечитал весь код, исправил пару ошибок. Ошибка пропала. Начал убирать комментарии — появилась опять. Ясно, что где-то глюк с указателем, и на ход выполнения программы влияет её размер. Ещё два раза перечитал весь код, нарыл пару мест, где можно было бы добавить проверки. Ошибка осталась. Под отладчиком в режиме ассемблера начал изучать код. Узнал подробности работы конструкторов и деструкторов классов, начал исследовать структуру хипа…

А потом что-то дёрнуло меня посмотреть, какого размера файл. 70 КБ при модели памяти в один сегмент. Код + данные + стек + хип > 64 КБ. А компилятор хоть бы предупредил…

Программисты, не забывайте русскую пословицу: «Доверяй, но проверяй».

7408

Электроавтомудозвон

IT-отдел строительной компании. Поздняя ночь, очередной аврал. Желание как можно быстрее свалить домой. В последний момент приходит приказ сверху: разослать по почте полутора тысячам клиентов уведомления о необходимости подписать акт приёма-передачи квартир в только что сданном доме.

Запускаю типичную функцию корпоративной базы данных. Столь же типичная куча предупреждений: «А вы уверены?» Да, да и ещё раз да. Ура, нафиг, домой!

Утро. Куча звонков клиентов в офис с матюгами. Ну да, спешил, все окна-то примерно одинаковые, а за восемь лет и вообще на одно лицо. Да и кто в предупреждения диалоговых окон вчитываться-то будет? В общем, я не рассылку зашарашил, а автопрозвон по мобильным и домашним телефонам наших клиентов — в час-то ночи… Прога ругалась: вы уверены, мол, что хотите звонить после 21:00? «Конечно да!»

Сослались на сбой оборудования.

7402

Что русскому download, то немцу upload

Было это ещё тогда, когда интернет оплачивался по трафику. Безлимитные тарифы уже были, но скорости их на офис в сотню машин не хватало ну никак. Так вот, в какой-то момент счета за трафик выросли в полтора, а потом и во все два с половиной раза за несколько месяцев. Мы всем отделом сначала отбрыкивались от бухгалтерии, списывая на всевозможные естественные причины потребления гигабайтов: вышли новые сервис-паки на Windows, или дополнительный офис что-то выкачивал с основного, или кэш на прокси-сервере переполнился, или, в конце концов, смешной ролик на Ютюбе прошёлся по офису, или… Но в какой-то момент решили всё-таки разобраться, потому что счета стали приближаться к числу с пятью нулями.

Проверили журналы WSUS. Убедились, что все компьютеры смотрят на него, а не качают обновки самостоятельно. Приостановили загрузку новых заплаток. Позакрывали соцсети, файлообменники и видеохостинги. Проверили конфигурацию и статистику на прокси — выяснили, что скачано фиг да маленько. Поругались недельку с провайдером, поискали ошибку в их биллинге. Не нашли. Снимали статистику через NetFlow со всего офиса.

Искали, как можно обойти наш прокси. Не нашли. Тем более не нашли, как можно NetFlow обмануть. Стали думать. Долго думали. Догадались. Кто сказал, что входящий поток трафика может быть инициирован только изнутри?

Во внутренней сети у нас имелся FTP-сервер, опубликованный наружу, для обмена большими файлами с заказчиками. С открытым доступом, чтобы заказчики не задавали глупых вопросов. Какие-то засранцы сервер обнаружили и облюбовали, сливая туда всякий крупногабаритный варез. А через NetFlow сервер не нашли, потому что на нём же расположена основная конторская файлопомойка, и для неё много трафика — это норма. Хотелось долго биться головой об стену.

7389

Скандалы, интриги, расследования

Пятница, вечер. Однозначно пора бросать работу и идти бухать.

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

Стали вычислять мудака, ворующего наш канал. Скандалы, интриги, расследования... Не сразу до меня дошло, что недавно в офис купили принтер с вайфай-модулем. Нашли преступника, блин…

7382

Поверь, дело не в тебе

Устроился админом. Пока оформлялся, половина рабочего дня уже прошла. Прихожу в серверную. На полу лежит какой-то системник, собранный из остатков списанного оборудования. К нему подключён монитор от сервера. На экране «Press any key»: при загрузке не прошла проверка доступного оборудования. Какой-то мужик (позже оказавшийся водителем) смотрит на эту надпись, нажимает одну клавишу, вторую, третью… На экране всё та же надпись. Он начинает нервничать, уже долбит по целым комбинациям. В числе нажатых кнопок на клавиатуре была и Power off. По-прежнему никакой реакции на экране.

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

Сервер стоял под Windows 2000, рабочий стол не был залочен, а клавиатуру переставить мужик не догадался.